发表于: 2017-12-15 23:26:38
2 548
今天做的事情:
上午复习小课堂,再次回顾任务九的内容。
当用户在浏览器上输入www.taobao.com 这个URL时,首先会请求DNS将这个域名解析成IP地址,根据IP在互联网对应的服务器,发送一个get请求,由服务器返回默认的数据资源。还有许多负责的业务逻辑。服务器可能有很多台,到底是使用哪台呢。用到一个负载均衡来平均分配所有用户的请求,还有请求的数据是放在分布式缓存还是CSN静态资源中。
1. 对于如何发送一个请求,linux的 curl 加上URL 就可以简单得发送一个http请求。以下是一些表头信息。
不通过浏览器发送请求,自己写一个符合HTTP的数据包就ok. URL+ http头 +Cookie信息
HTTP中最重要的是HTTP Header , 控制浏览器的渲染行为和服务器的执行逻辑。
2 .DNS域名解析过程:
当用户在浏览器输入域名,首先,浏览器会检查浏览器的缓存有没有这个域名对应的解析的ip地址,如果有的话,解析结束,直接访问,如果没有的话,会检查操作系统缓存中是否有这个域名对应的DNS解析结果。比如windows有自己的解析,C:\Windows\System32\drivers\etc\hosts 在这里来设置。早期的Windows版本黑客通过修改这个文件来劫持域名。
在Windos下使用 nslookup 来查看域名的解析结果。在linux下使用 dig 命令 + 域名
3. CDN 动态加速
CDN的动态加速技术也是当前比较流行的一种优化技术,它的技术原理是在CDN的DNS解析中通过动态的链路探测来寻找回源最好的一条路径,然后通过DNS的调度将所有请求到选定的这条路径上回源,从而加速用户访问的效率。
明天继续看深入分析JavaWeb第2章。
下午讲了小课堂,回顾了一下Tuscany,理解还是比较浅显得。没有太多例子可以跑,不过已经很理解哪些例子的知识,如果想要加深的话,只能在以后的项目中实现了、
看了下任务九做任务中模块的分布式架构的演进。在最一开始,小型系统中的应用程序,数据库,文件等所有资源都放在一台服务器上,称之为LAMP。慢慢的随着访问量居多,webservice的压力很大,这时候多增加了一台服务器。然后又将一部分数据放在缓存服务器上,减少数据库压力。系统访问遵循二八规律,即%80的业务访问集中在%20的数据上。
然后读写分离。反向代理和CDN加速。分布式文件系统和分布式数据库,使用NOSQL和搜索引擎,分布式服务,
等等,还有这么多东西,真是。。
遇到的问题:
无
收获:
开始阅读第一本java书籍,逐步复习基础,讲小课堂,回顾Tuscany,明天的话,准备复盘PPT吧,复习以前学。
评论