浅谈HTTP和TCP的理解】的更多相关文章

TCP协议对应于传输层,而Http协议对应于应用层,Http协议是建立在TCP协议之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求.HTTP会通过TCP建立一个连接通道,当HTTP数据接收完以后会将TCP连接终断,这个过程是很短的,所以HTTP是一种无状态的连接.无状态就是浏览器每次向服务器发送请求时,都建立一个新的连接,而每次请求结束后,连接就关闭,相关的内容就释放了,所以记不住任何状态,成为无状态连接.TCP的作用是,保证数据通信的完整性和可靠性,防止丢包.…
一.走进.NET AppDomain 天哪,.NET Framwork的CLR真是巧妙呢!随着越来越多的对.Net底层编程的了解,一些诸如架构,处理过程的复杂难懂的细节完全的让我叹服,所以呢,再次错过我们之前忽视的细节只美事不可能的了,有个与CLR肩并肩协同工作的一个核心组件,叫做AppDomain,作为.NET Framework的一部分,AppDomain是一个微软引入的非常酷的概念. 为了更好的理解.Net的AppDomain和AppDomian是如何影响我们创建并在其上工作的,还是从头说…
TCP连接 http的描述里面,我弱化了交互过程的描述,因为它相对复杂.所以我在此单独描述.客户端和服务端传递数据时过程相对谨慎和复杂,主要是开始和结束的过程.而这整个过程就是TCP连接.连接流程大体包括: 三次握手 握手是见面时建立信任的过程.其主要目的是确认彼此的身份和明确是确认有需求而不是来找茬的.所以这里需要几个关键词:   请求/响应方的身份证:seq(客户端/服务器的标记序号)       标志位:SYN/FIN/ACK等等       确认信息内容:ack(seq+ACK) 这里要…
理解Js的闭包,首先让我们先看几个概念 执行环境(executive environment)每个函数都有自己的执行环境,匿名函数默认为全局环境. 作用域链(scope chain)子函数继承父函数,但是父函数不能引用子函数. 变量对象(variable object)分为全局变量对象,和局部变量对象,前者的生存在整个环境中,后者在生存在函数的执行环境下,就是说,执行函数时被创建,当函数执行完后被销毁. 怎么被销毁的啊?目前最常见的算法是当变量对象不再被引用时,便可回收内存. 但是,若是想在函数…
在思考怎么将客户端app连接到服务器的时候,就在想ionic项目的本质是什么,一开始因为ionic serve这一命令,我以为它自己就是个服务器,但是后来一细想又感觉不是这样,不然客户端又该怎么和服务端进行交互呢?而ionic本质正好验证了我的猜想. 通过ionic info我们可以发现ionic项目所需环境如下: Your system information: ordova CLI: 6.4.0 Ionic CLI Version: 2.1.17 Ionic App Lib Version:…
JCS 是Java 中缓存的一种实现,支持将数据缓存到内存和硬盘中,支持设置缓存对象的有效时长. 我认为可以这么理解JCS:客户端向服务器发出请求,服务器就先去缓存中查一下有没有客户端请求的数据,有则直接使用:没有则服务器去连接数据库查询数据,然后将数据传给用户的同时也存到缓存中,供下一次使用.若是缓存满了就根据所设置的调度算法(如:最近最少算法)去删除缓存中的对象,若是缓存中的对象过了有效时长,也将被删除. JCS 在项目中的实现 1.所需要使用到的架包如下: commons-collecti…
前言 因为工作原因,最近需要研究Cordova框架,看了其中的源码和实现方式,当场在看的时候马上能理解,但是事后再回去看相关源码时候却发现之前理解的内容又忘记了,又不得不重新开始看,所以总觉得需要记录下来,这样也表明之前也是学习过,俗话说「好记性不如烂笔头 」,想必也是体现了笔记的重要性. 目录 为何要用Cordova 什么是Cordova Cordova中UML类图 Cordova实现机制 小结 ​ 为何要用Cordova 随着移动互联网的发展,现在基本是APP满天飞,不知在大家印象中,如果我…
应用层:Http,超文本传输协议(HyperText Transfer Protocal):利用TCP在两台电脑(通常是Web服务器和客户端)之间传输信息的协议.客户端使用Web浏览器发起HTTP请求给Web服务器,Web服务器发送响应信息给客户端. 传输层:TCP,传输控制协议(Transmission Control Protocol):要建立连接,至少3次(3次握手机制),能传输大量数据,稳定性比较好 UPD,用户数据报协议 (User Datagram Protocol):不需要建立连接…
一.  在JavaScript中,一切皆对象,每个对象都有一个原型对象(prototype),而指向该原型对象的内部指针则是__proto__.当我们对对象进行for in 或者for of遍历时,就会通过__proto__依次遍历对象关联的所有对象.这就是原型链,遍历所有对象的父对象直到object直至null. function Person(name,work){ this.name = name; this.work = work; } Person.prototype.show = f…
1. 什么是Just In Time编译器? Hot Spot 编译 当 JVM 执行代码时,它并不立即开始编译代码.这主要有两个原因: 首先,如果这段代码本身在将来只会被执行一次,那么从本质上看,编译就是在浪费精力.因为将代码翻译成 java 字节码相对于编译这段代码并执行代码来说,要快很多. 当 然,如果一段代码频繁的调用方法,或是一个循环,也就是这段代码被多次执行,那么编译就非常值得了.因此,编译器具有的这种权衡能力会首先执行解释后的代 码,然后再去分辨哪些方法会被频繁调用来保证其本身的编…