`
shenyan1987
  • 浏览: 5770 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

你还有多少不了解——《深入Java_Web技术内幕》

阅读更多

        目前,很多关于技术的书,都在泛泛而谈空荡的理论,兜来兜去都是外在的东西,不痛不痒。挠痒总是不对位置。使用java四年多,从当年听到师兄的激昂陈词然后下定决心到现在几乎沉浸在java的浩如烟海的技术条框、不断推成出新的java框架。工作几年,感触很多,学会了怎么使用API,学会了怎么模仿别人的代码,也厌倦了一些表面的条框理论。特别针对Java_Web开发,Servlet的使用,Struts的使用,JSP的使用,已经泛滥,但是很难揪出个所以然。因为之前一直有在关注君山的博客http://xulingbo.net/,因此在君山提出《深入分析Java Web技术内幕》,第一时间入手了,初步浏览了一下此书的结构和自己感兴趣的章节。可以感觉到作者不是简简单单的讲述一个技术或概念,分析和讲解十分深入,可以看出作者长期积累的深厚功底。

         由于此次只是针对一个章节,深入Web请求过程。对于JavaWeb的请求过程,相信java程序员都能描述个大概,但是能深入分析的并不多。看书其实如写作有雷同之处,就是先看骨架,心里有个低。对于web请求的,君山是怎么样带我们一步一步深入web请求的?

        1、 B/S网络架构概述

              概述而已,如要深入,可以在概述的基础上进行google。

        2、 如何发起一个请求

              只要你上过网,你就已经发起过web请求,问题是,你懂你发起的web请求是怎么样的么?你不想通过工具看看么?或者你又想知道不同的发起方式?

        3、 HTTP协议解析

              作为java程序员的你,除了使用httpClient发起web请求,你能自己发起请求么? 当然,你需要了解http协议,文章中已经说明的非常清楚。

              Socket socket = new Socket("127.0.0.1", "80");

         OutputStream os= socket.getOutputStream();

         InputStreamins = socket.getInputStream();

         StringBuffer sb=new StringBuffer();

         sb.append("GET /index.jsp HTTP/1.1rn");//注意rn为回车换行

         sb.append("Accept-Language: zh-cnrn");

         sb.append("Connection: Keep-Alivern");

         sb.append("Host: 192.168.0.106rn");

         sb.append("Content-Length: 37rn");

         sb.append("rn");

         sb.append("userName=new_andy&password=new_andyrn");

         sb.append("rn");

         //向Web服务器发送一个HTTP请求包

         os.write(sb.toString().getBytes());

           还有一点,缓存,为什么有时候你要刷新页面?为什么有时候你明明断网了,输入www.baidu.com却可以打开网页?但是再点击却不能使用? 你有想过么?浏览器的缓存其实没那么复杂,但是,你得去了解。

         4、 DNS域名解析

           DNS域名解析的话题实在有点大,对作者来说,想要片片俱到实在有点难,但是,作为读者的我们,可能更希望了解一下输入www.baidu.com的整个DNS域名解析过程。当然,需要了解更多,除了读这一章节之外需要更懂的搜集资料。

         5、CDN工作机制

          简单地说,内容分发网络(CDN)是一个经策略性部署的整体系统,包括分布式存储负载均衡、网络请求的重定向和内容管理4个要件,而内容管理和全局的网络流量管理(Traffic Management)是CDN的核心所在。通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。

         此章节我特别关注了负载均衡,其中谈到硬件的负载均衡,目前我们公司使用是F5,一主一备,速度和性能、网络丢包率方面都非常可靠。当然,硬件负载均衡非常昂贵。关于软件的负载均衡也已经有了非常多的解决方案。

        

       还是那句话,看文章如同写文章,能有个大纲你就能了解作者的思路。君山的思路非常清晰,就是一步一步把你带入“深渊”,不在表面徘徊,同时也注意不让你太深入,把你绕进去也不好。同时,也可以引发你更多的思维方式,真的值得一看。同时你要养成好的习惯,看到某点的时候,可以去查看更多的资料,因为每个人的思考方式不一样,可能阐述同一个问题,有些人的方式你觉得深奥难以理解,但是有些人的方式你却觉得拿捏的恰到好处。特别针对难点的时候,多看看别人的想法。

        

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics