今天主要与大家分享“关于Web服务端的技术”,基于浏览器客户端的技术,我们在访问一个网站的过程中,一般都能够感知到客户端网站速度的快慢问题,但是对于服务器端的技术我们不一定能够感觉到,因为我们也不知道访问网站服务器的稳定性与可靠性到底怎么样,应用了一些什么样的技术也不懂,对于服务器端的相关知识也缺乏深入的了解,今天我们就来详细了解一下基于Web服务端的核心技术。
一般服务器有那些特点?首先所有客户端的请求都需要发送给服务器端,服务器端接收到客户端发送过来的请求,对客户端的请求进行响应,服务端需要监听到客户端发送的请求端口,例如:如果服务器的端口是80,需要将请求进行整理分类,我们需要对服务器端口进行监听,监听完成之后需要向客户端响应,我们需要去协调咱们的一个动态处理页面的引擎,或者去协调我们的数据库,去访问我们的硬盘将相应的内容读到硬盘中,等相关内容拼装好之后,再变成一个标准的HTML的源文件页面,再发送给客户端,一个是请求的过程,一个是响应的过程,这都是是Web服务器与客户端的交互原理过程,这就完成了Web服务的工作过程,客户端通过URL地址向服务端发送请求,服务器端处理客户端发送的请求,完成整个前端与后端和数据库端网站的工作原理。
例如:我们平时要去访问一个图片或者某个网站的URL链接,与之相对应对应的是一个URL地址,平时我们打开的网页对应的图片点击属性就是关于图片的所有内容,一般图片类型都属于网页静态资源,会保存在我们服务器端的硬盘上,响应的时候直接从服务器端的硬盘上读取过来,然后发送给客户端即可。
第三点主要是指客户端与数据库之间的连接者,我们现在的客户端与服务端的技术是使用标准的三层架构,分别为:客户端、服务端、数据库。我们所有的软件数据都是保存在数据服务中,浏览器客户端是无法直接访问数据库的,需要通过服务器作为中转,然后到达数据服务端,这中间的交互过程其实就是客户端传递数据给服务器端理然后将数据传递给数据服务,最后再返回给客户端呈现网页,如果是静态资源就不需要经过数据库直接从客户端到服务器端的交互就完成了web的工作过程。
多层架构主要针对服务器端和数据库端,
Web服务器:web服务器一般只负责HTTP请求和转发请求,不负责直接与数据库交互,也不负责业务数据逻辑的处理过程。
应用服务器特点:不负责本身HTTP前端请求的处理,它主要负责核心业务逻辑处理,并且与数据库建立连接,例如:我们常用到的J2EE架构一般分为四层,web前端服务器和应用服务器。
数据库服务:对于数据服务我们可以细分为:有些数据服务只处理简单的请求,有些数据服务处理底层逻辑复杂的请求,甚至可以将服务器构建在云计算集群环境中或者说云计算平台上,层次可以分得更细,本质上这些服务器层次的划分都离不开三层基本架构的模型,我们学习只需要关注这三层核心架构原理即可。
常用的web服务器技术有那些?目前常用的有五种:Apache、IIS、Tomcat、Nginx。Apache一般应用比较广泛,一般是基于操作系统的兼容来选择,像IIS一般应用于windows平台.NET程序框架的应用服务器,但是Apache适用于任何平台,Tomcat一般用来处理JAVA服务器的容器,并不是一个完整意义上的WEB服务器,还兼有处理HTTP请求的功能,我们可以基于不同的基础环境来选择相关的web服务器的相关技术。
基于软件层面来分析
动态脚本 引擎的处理。我们经常在访问一个网站的时候可以看到后缀名不一定是html,有些是.php、.asp、jsp、ruby、 python等开发出来的一些页面,这些页面我们就需要通过脚本引擎来处理这些动态资源本身的部分,web服务器只负责静态页面资源,需要两者结合一起来完成这个工作。例如:我们要访问数据库无法让HTML或者一张图片等静态资源去访问数据库的,要去访问数据库,一定要使用动态脚本编写程序来达到访问数据库的目的。
关于硬件集群服务器端环境的过程
我们后台的服务器一般是很少只有一台电脑来完成这些服务的,一般都是由N台服务器一起分工来完成处理一个任务,如何利用很多台电脑集群?应用了集群的方法完成了这个事情,一种是硬件与硬件之间的集群,操作系统的集群,应用服务器间也可以做集群是基于软件与软件层面的集群,一般这样的处理只用于某些特定的服务器本身,可以达到共同承担任务的处理过程。一般对于数据库来说也会存在数据库之间的集群,这种应用服务器和数据库之间的集群更加有针对性,更能够 为自己的数据库服务器系统做算法的优化,从而达到提高性能的目的。
一般来说我们目前知道的云平台,大部分都是来源于集群服务,一般如果一台电脑出问题了,用户可以寻找附近其它的电脑进行连接,可靠性与稳定性很好,能够更好的合理利用网络资源从而达到资源共享的目的,这是云计算所做的事情。
总结:今天主要与大家讲解了Web服务器端技术应用的实践过程以及从前端页面的数据交互原理过程都与大家进行详细的分享,希望通过本次课程的内容大家对web服务器应用的技术有一个更深入的理解,丰富大家的知识面,如有任何疑问可以留言告知。