web服务器工作原理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web服务器工作原理相关的知识,希望对你有一定的参考价值。
Step1:用户在地址栏输入一个网址,然后点击回车键;Step2:浏览器与服务器建立TCP连接;
Step3:浏览器将用户的事件按照HTTP协议要求的格式打包成数据包,这个过程的本质就是在待发送缓冲区中有这一段HTTP协议格式的字节流;
Step4:浏览器确认服务器可写,将该数据包推入Internet中,最终,该包被递交到服务端;
Step5:服务器在接收到该数据包后,以同样的格式进行解析,获取客户端的意图;
Step6:在获取了客户端的意图之后,服务器进行分类处理,或是提供某一文件,或是处理相关数据;
Step7:将处理结果装入缓冲区,或者文档,或是其他内容;
Step8:服务器将按照HTTP协议格式,将Step7中的数据进行打包;
Step9:服务器确定对端可写,将数据包推入Internet,该包经过网络处理,最终返回至客户端;
Step10:客户端拿到包之后,以HTTP协议格式进行解包,然后解析数据;
Step11:客户端处理相关数据,并且展示在页面之上。
以上这11步,就是web服务器最基本的工作原理。通过梳理,我们不难发现,这就是一个简单的网络通信过程。换句话说,就是一个简单的发送数据、接受数据、处理数据的过程。更高级的web服务器,无非也就是将上述的三个基础内容划分得更加详细一点而已。 参考技术A 回答
Web服务的工作原理是各公司从注册表(ebXML或UDDI的注册表)获得发布信息,建立满足要求的执行过程,然后向注册表发布它们的服务。以后,其他公司发现注册表中列出的一项服务,同意已制定的标准,然后开展业务。一旦在标准上取得一致并且约定的规则得到满足,应用程序就可以接管交易处理,因而从开展业务的开销中去除了人工互动。在这种模型中,通过利用现有基础设施,应用可以交换有关公司希望提供和消费的服务的信息。此外,应用还可以查询注册表,查找可以以更优惠条件提供同样服务的其他应用(公司)。在标准方面,UDDI作为一种用于Web的黄页被编制出来,它可以通过WSDL访问。WSDL支持类似于UDDI特性的ebXML注册特性。除了与UDDI的数据库特性竞争外,ebXML的Web服务部分曾被考虑与SOAP标准进行竞争。幸运的是,OASIS已将SOAP集成到ebXML中。目前,这些协议既相互重叠(UDDI和ebXML)又相互补充(SOAP和ebXML)。·UDDI(通用描述、发现和集成):UDDI是Microsoft、IBM和Ariba为制定一项用于描述、注册和发现Web服务的Internet标准而成立的联盟。由此而来的UDDI框架是“一个企业可以注册其Web服务并查找其他Web服务的数据库集合。”应用程序使用SOAP API来读取或提供与UDDI相关的WSDL文档。·WSDL(Web服务描述语言):WSDL文件,即UDDI和ebXML注册表的子集合,提供联系信息、Web服务的描述、它们的位置以及如何调用它们的规范。UDDI注册表按行业类别和地理位置细分。WSDL文件常常由另外的信息源(如,COM IDL或CORBA文件或EJB类定义)生成。WSDL用于描述通过Internet(或其他网络)可访问的程序以及同这些程序进行交流的信息格式和协议。它可以使Web服务的功能通过标准的方式展示出来,从而使Web服务和开发工具更易兼容。·SOAP(简单对象访问协议):SOAP是使用XML通过Internet发送信息和访问动态Web服务的友好界面。其主要作用在于确保信息通过互联网在业务应用之间传输的可靠性。作为一种用在分布式环境中交换结构化数据的协议,它包括三个部分:信封、报头(可选)和协议消息体。信封标记SOAP消息的开始与结束。它还可以规定在网络上数据的编码规则。SOAP报
参考技术B web服务器工作原理:1、用户在浏览器中输入要访问的web站点地址或在已打开的站点点击超链接。
2、由DNS进行域名解析,找到服务器的IP地址,向该地址指向的web服务器发出请求。
3、web服务器根据请求将URL地址转换为页面所在的服务器上的文件全名,查找相应的文件。
4、若URL指向静态文件,则服务器将文件通过http协议传输给用户浏览器;若html文档中嵌入了ASP,php,JSP等程序,则由服务器直接运行后返回给用户;
如果web服务器所运行程序包含对数据库的访问,服务器会将查询指令发送给数据库服务器,对数据库执行查询操作,查询结果由数据库返回给web服务器,再由web服务器将结果潜入页面,并以html格式发送给浏览器。
5、浏览器解释html文档,在客户端屏幕上展示结果。
Web服务器概念较为广泛,我们最常说的Web服务器指的是网站服务器,它是建立在Internet之上并且驻留在某种计算机上的程序。Web服务器可以向Web客户端(如浏览器)提供文档或其他服务,只要是遵循HTTP协议而设计的网络应用程序都可以是Web客户端。
Web服务器涵盖了HTTP服务器(这一点可以自行百度百科), Web服务器不仅能够存储信息,还能在用户通过Web浏览器提供的信息的基础上运行脚本和程序。
Web服务器最主要的功能是提供静态的文件。日常的上网浏览大多是网页浏览,少数时候才会有一些数据的提交操作。
tomcat等web服务器的工作原理
-
什么是web服务器、应用服务器和web容器? -
什么是Servlet? 他们有什么作用? -
什么是ServletContext? 它由谁创建? -
ServletRequest和ServletResponse从哪里进入生命周期? -
如何管理Session? 知道cookie吗? -
如何确保线程安全?
以上是关于web服务器的。现在我们来讨论应用服务器。
以上就是关于web服务器和应用服务器的全部内容。现在我们来看看第三个术语,即web容器。
在Java方面,web容器一般是指Servlet容器。Servlet容器是与Java Servlet交互的web容器的组件。web容器负责管理Servlet的生命周期、把URL映射到特定的Servlet、确保URL请求拥有正确的访问权限和更多类似的服务。综合来看,Servlet容器就是用来运行你的Servlet和维护它的生命周期的运行环境。
类加载器通过懒加载(lazy-loading)或者预加载(eager loading)自动地把Servlet类加载到容器里。每个请求都拥有自己的线程,而一个Servlet对象可以同时为多个线程服务。当Servlet对象不再被使用时,它就会被JVM当做垃圾回收掉。
懒加载的Servlet
现有的Session
新的Session
1 2 3 4 5 6 7 8 9 10 11 12 |
|
不要这样做,这会导致软件出bug。
欢迎加入技术交流群,属于我们互联网技术人的专属群,共同交流和学习!
长按下方的二维码即可快速进群!!!
群里会不定期发送各种技术和视频资料
加小编微信:lvy99888,拉你入群
以上是关于web服务器工作原理的主要内容,如果未能解决你的问题,请参考以下文章