目前,很多关于技术的书,都在泛泛而谈空荡的理论,兜来兜去都是外在的东西,不痛不痒。挠痒总是不对位置。使用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,一主一备,速度和性能、网络丢包率方面都非常可靠。当然,硬件负载均衡非常昂贵。关于软件的负载均衡也已经有了非常多的解决方案。
还是那句话,看文章如同写文章,能有个大纲你就能了解作者的思路。君山的思路非常清晰,就是一步一步把你带入“深渊”,不在表面徘徊,同时也注意不让你太深入,把你绕进去也不好。同时,也可以引发你更多的思维方式,真的值得一看。同时你要养成好的习惯,看到某点的时候,可以去查看更多的资料,因为每个人的思考方式不一样,可能阐述同一个问题,有些人的方式你觉得深奥难以理解,但是有些人的方式你却觉得拿捏的恰到好处。特别针对难点的时候,多看看别人的想法。
相关推荐
《深入体验Java_Web开发内幕—核心基础》是一本针对Java Web开发的深度解析书籍,旨在帮助读者全面理解和掌握Java Web开发的核心技术。这本书涵盖了从基础到高级的多个主题,旨在提供一个完整的Java Web开发学习路径...
本文档为针对Java Web的技术文档,有网易工程师许令波老师所著,深入分析了jsp、servlet、EL于MVC中的调度关系分析,同时涉及了框架的部分内容,适合于入门不久的猿们用来提升实力,深入理解Java Web的相关机制!
讲解深入原理,让你知其然也知其所以然,学习Java Web开发必读经典书籍之一。边看边添加书签,累死了,本书被我分割成了两部分,这是part2,还需要下载part1,放在同一目录下解压。
根据提供的文件信息,标题与描述均为“深入体验Java_Web开发内幕-核心基础.pdf”,而内容部分则重复列出了一个网站链接,该网站提供多种编程相关的电子书籍下载服务。因此,我们可以推测这份文档的主要目的是介绍...
张孝祥 老师的经典力作!!! 清晰的PDF电子书《深入体验Java_Web开发内幕-核心基础》——地球人都知道,呵呵。。
压缩为2个文件,这个是第一个,这本书是张孝祥老师的,对java_web入门的同学是很好的选择,这本书还有一个高级版本高级特性...
Java Web开发是构建互联网应用程序的重要领域,它涵盖了服务器端编程、...通过深入了解和实践以上知识点,你将能够掌握Java Web开发的核心基础,进一步提升自己的开发技能,为构建高效、稳定的Web应用打下坚实的基础。
许多公司的技术经理在招聘新员工开始做一个项目之前,都将本书发下去,要求员工熟读此书,以免在项目中走弯路和避免许多潜在的隐患,并对员工说:“先把细节搞得明明白白了再做,这样你我心里都踏实,免得项目做完后...
根据提供的文件信息,我们可以推断出这是一本关于Java Web技术的书籍——《深入分析Java Web技术内幕》修订版,作者是许令波。本书主要针对Java Web开发人员和技术爱好者,旨在深入剖析Java Web技术的核心原理及应用...
【下载说明】 《深入体验Java Web开发内幕——核心基础》一书在网上评价极高,非常适合广大Java Web开发人员。本资料是该书PDF格式的高清晰电子版,可用Adobe Reader7.0或兼容阅读工具打开,推荐Java爱好者...
本篇文章将深入探讨Java Web技术的各个方面,帮助读者全面了解这一领域的内幕知识。 首先,我们要理解Java Web技术的基础——Servlet和JSP。Servlet是Java语言编写服务器端程序的标准API,它能够接收HTTP请求并生成...
深入体验Java Web开发内幕——核心基础
深入体验Java.Web开发内幕—高级特性
本文将结合"深入体验Java Web开发内幕"的主题,详细阐述一些关键的技术点,并提及源代码的重要性。 首先,让我们从Java Web的基础开始。Java Web开发主要涉及Servlet、JSP(JavaServer Pages)、JSTL(JavaServer ...
总之,《Struts2技术内幕——深入解析Struts2架构设计与实现原理》配合《struts2基础.chm》,将帮助读者全面掌握Struts2的架构设计、核心组件、配置方式、插件使用以及源码解读,对于想要在Java Web领域深入发展的...
深入体验JAVA Web开发内幕—核心基础.part7
《深入体验Java Web开发内幕——核心基础》全书扫描,内容完整,欢迎下载。由于论坛限制,不能用一个压缩包(超过50M),所以分卷压缩了。
Java Web开发高级特性通常涉及几个关键领域,包括但不限于:企业级应用开发、安全性、性能优化、框架使用和云服务集成。 1. 企业级应用开发: - 分布式系统:了解如何构建可扩展的分布式系统,掌握RMI(远程方法...
要深入学习和掌握Struts2,建议阅读官方文档,参与实际项目实践,也可以参考相关的技术书籍和教程,例如《Struts2技术内幕——深入解析Struts2架构设计与实现原理》等资源,来提升对Struts2框架的全面理解。