Web服务器会做些什么: 1.建产连接:接受一个客户端连接,或者如果不希望与这个客户端建立连接,就将其关闭. 1)处理新连接 2)客户端主机名识别 3)通过ident确定客户端用户 ident在组织内部可以很好地工作,主要是因为以下原因导致在公共因特网上并不能很好地工作: 1.很多客户端PC没有运行ident识别协议守护进程软件 2.ident协议会使HTTP事务处理产生严重的时延 3.很多防火墙不允许ident流量进入 4.ident协议不安全,容易被伪伪 5.ident协议也不支持虚拟IP地…
之前一直有个想法,好好读完JS权威指南,便于自己对于JS有个较为全面的了解.毕竟本人非计算机专业出生,虽然做着相关行业的工作,但总觉得对于基础的掌握并没有相关专业学者扎实,正好因为辞职待业等原因,还是下定决心来好好读一读这本厚厚的‘词典’.在阅读原书过程中,本人也发现了不少概念问题,可能因为汉化区别,导致实际情况与概念描述并不相符的情况,这里就全当做下笔记了. 记录从书籍第三章开始,如果有幸有人看到了本人博客并对前两章有兴趣,可以通过其它途径去了解,这里就当权威指南概念的缩减版,以及作为自己待业…
HTTP通信是由TCP/IP承载的,HTTP紧挨着TCP,位于其上层,所以HTTP事务的性能很大程度上取决于底层TCP通道的性能. HTTP事务的时延 如图: HTTP事务的时延有以下几种主要原因. (1)客户端首先需要根据URI确定Web服务器的IP地址和端口号.如果最近没有对URI中的主机名进行访问,通过DNS解析系统将URI中的主机名转换成一个IP地址可能要花费数十秒的时间. (2)接下来,客户端会向服务器发送一条TCP连接请求,并等待服务器回送一个请求接受应答.每条新的TCP连接都会有连…
Kafka 第三章,第四章阅读笔记 Kafka 发送消息有三种方式:不关心结果的,同步方式,异步方式. Kafka 的异常主要有两类:一种是可重试异常,一种是无需重试异常. 生产者的配置: acks 越大,越不容易丢失消息,但是吞吐量下降. buffer.memory,设置不当会导致阻塞或者抛出异常. compression.type snappy和gzip, lz4. retries 重试次数, 如果要保证消息的顺序,必须保证max.in.flight.requests.per.connect…
前言 mycat官方地址http://www.mycat.io/,mycat是关系数据库的中间件,也就是说它可以把后端的多个数据库,抽象成一个关系数据库. mycat能干啥 官方文档介绍,主要是用来做分库分表,但应用中用的比较多的是mysql的主从分离.它的另一个分库分表,把一张表分在同一个关系数据库的不同库里或分在不同主机节点的数库里.分表,官方提供了很多规则来完成分表的操作,比如常见的取模,hash等,但是呢,分表是分了,带来的join查询就是一大头疼问题,权威指南在说join查询的时候,尽…
作者简介   李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷.喜欢钻研底层技术,认为底层基础才是王道.一切新技术都离不开操作系统(CPU.内存.磁盘).网络等.坚持输入输出,记录自己学习的点滴,在平凡中坚持前行,总有一天会遇见不一样的自己.公众号:运维汪(ID:Leeeee_Li).                                                                                      …
Kafka Broker kafka 第一个启动的Broker在ZooKeeper中创建一个临时节点/controller,让自己成为控制器.其他Broker启动后在控制器节点上创建Watch对象,便接收节点变更通知. Kafka利用ZooKeeper来选举控制器,并在节点加入或者退出集群时通知控制器.控制器负责在节点加入或者退出集群时选举分区首领.控制器使用Epoch来防止"脑裂". Kafka 使用主题来组织数据,每个主题被分为若干个分区,每个分区有多个副本.每个Broker上面可…
在这个迷你系列的文章里边我将会解释viewport,以及许多重要元素的宽度是如何工作的,比如<html>元素,也包括窗口和屏幕 这篇文章是关于桌面浏览器的,其唯一目的就是为移动浏览器中相似的讨论做个铺垫.大部分开发者凭直觉已经明白了大部分桌面浏览器中的概念.在移动端我们将会接触到相同的概念,但是会更加复杂,所以对大家已经知道的术语做个提前的讨论将会对你理解移动浏览器产生巨大的帮助. 概念:设备像素和CSS像素 你需要明白的第一个概念是CSS像素,以及它和设备像素的区别. 设备像素是我们直觉上觉…
HTTP协议版本: 1.HTTP/0.9:HTTP的1991原型版本称为HTTP/0.9.这个协议有很多严重的缺陷,只应该用与与老客户端的交互.HTTP/0.9只支持GET方法,不支持多媒体内容的MIME类型,各种HTTP首部,或者版本号.HTTP/0.9定义的初衷是为了获取简单的HTML对象,它很快就被HTTP/1.0取代了. 2.HTTP/1.0:1.0是第一个得到广泛使用的HTTP版本.HTTP/1.0添加了版本号.各种HTTP首部,一些额外的方法,以及对多媒体对象的处理.HTTP/1.0…
报文的组成部分 报文由三部分组成:对报文进行描述的起始行(start line).包含属性的首部(header),以及可选的.包含数据的主体(body)部分. 请求报文格式 <method> <request-URL> <version> <headers> <entity-body> 响应报文格式 <version> <status> <reson-phrase> <headers> <en…