第六讲应用服务器

服务器硬件知识  时间:2021-01-29  阅读:()

内容一、动因二、三层架构三、Web服务器四、业务构件容器五、基于应用服务器的软件开发一、动因两层架构典型的问题:客户端程序的分发、升级开销较大浏览器的优势:客户端不需要专门的程序只要有浏览器就可以访问服务器上的资源资源:文件、数据、服务、……导致了三层架构的广泛采用应用服务器对三层架构提供了有力的支持随着网络软件的应用面越来越广服务器端软件变得越来越重要从早期的FTP服务器、WWW服务器、邮件服务器逐步向更广泛的应用领域发展迫切需要有新型的高层开发平台给予支持提高开发效率与应用的质量多数网络环境中的高层开发平台逐步将自己定位为一种应用服务器其中,遵循J2EE规范的应用服务器影响最大二、三层架构操作系统应用服务器应用程序浏览器数据库用户界面层业务逻辑层数据访问层用户界面层负责接受用户的输入、向用户输出结果或者提示信息不负责进行具体的处理过程可能会在用户输入后进行合法性验证业务逻辑层是三层架构的核心层是连接用户界面层与数据访问层的纽带根据用户的请求生成检索语句或更新数据库并把结果返回给用户界面层数据访问层负责实际的数据存储和检索过程三层架构的优点:不必为了业务逻辑上的微小变化而迁至整个程序的修改只需要修改商业逻辑层中的一个函数或一个过程增强了代码的可重用性便于不同层次的开发人员之间的合作只要遵循一定的接口标准就可以进行并行开发对于三层架构的应用系统前面两章讲到的两层架构技术几乎都要用到也有人在此基础上提出4层架构、N层架构三层架构与两层架构比较1)两层架构优点:由于客户端与服务器的直接相连,因此响应速度快操作界面漂亮、形式多样缺点:需要专门的客户端安装程序配置、维护开销大2)三层架构优点:客户接入简单不需要在本地安装软件,只需要浏览器业务扩展简单方便通过增加网页即可增加服务器功能维护简单方便只需要改变网页,即可实现所有用户的同步更新缺点:界面灵活性降低页面动态刷新,响应速度明显降低J2EE平台对三层架构的支持1)基本支持架构操作系统JSPPOJO应用服务器应用程序浏览器数据库Web容器(Web服务器)构件容器(EJB、POJO容器)数据访问层POJO用户界面层业务逻辑层ServletEJB2)SSH支持操作系统应用服务器应用程序浏览器数据库用户界面层业务逻辑层数据访问层StructsSpringHibernateWeb服务器、应用服务器、数据服务器由于客户/服务器模式在网络环境下的应用十分普遍,因此现在出现了越来越多的服务器一般人们理解的服务器是一种高性能计算机,作为网络的节点,存储、处理网络上80%的数据、信息而个人电脑、笔记本、PDA、手机等固定或移动的网络终端可以从服务器获取信息,或者通过服务器进行交互服务器的构成与微机基本相似但在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面存在差异很大硬件服务器上加载了相应的服务器端软件后就构成了上述各类服务器Web服务器专门处理HTTP请求(request)Web服务器可以单独使用,为简单系统提供支持应用服务器以为应用程序提供商业逻辑支持为主目前的大多数应用服务器包含一个内置的Web服务器也可以将Web服务器独立配置,和应用程序服务器一前一后这种功能的分离有助于提高性能,给最佳产品的选取留有余地数据服务器是安装了数据库管理系统的服务器三、Web服务器1、概述2、HTTP3、HTML4、动态页面Web服务器主要处理遵循HTTP的请求消息当接收到一个HTTP请求消息时会返回一个HTTP响应消息例如送回一个HTML页面为了处理一个请求可以响应一个静态页面或图片或者进行页面跳转或者把动态响应的产生委托给一些其它的程序CGI脚本JSP(JavaServerPages),servlets,ASP(ActiveServerPages)1、概述Web服务器Web浏览器1.
向Web服务器发出Web请求2.
查找页面3.
向Web浏览器发送页面内容其特征包括:(1)应用层使用HTTP协议协议(2)HTML文档格式描述语言(3)浏览器统一资源定位器(URL)查找方式HTTP的主要处理步骤:连接=>请求=>应答=>关闭连接Web浏览器与Web服务器建立连接打开一个称为socket(套接字)的虚拟文件(2)请求Web浏览器通过socket向Web服务器提交请求HTTP的请求一般是GET或POST命令GET命令的格式为:GET路径/文件名HTTP/1.
0文件名指出所访问的文件HTTP/1.
0指出Web浏览器使用的HTTP版本POST用于FORM参数的传递2、HTTP(3)应答请求消息通过HTTP协议传送给Web服务器Web服务器接到后,进行事务处理处理结果又通过HTTP传回给Web浏览器从而在Web浏览器上显示出所请求的页面(4)关闭连接当应答结束后,Web浏览器与Web服务器必须断开以保证其它Web浏览器能够与Web服务器建立连接GET/simple.
htmHTTP/1.
1Accept:image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/x-shockwave-flash,application/vnd.
ms-excel,application/vnd.
ms-powerpoint,application/msword,*/*Accept-Language:zh-cnAccept-Encoding:gzip,deflateUser-Agent:Mozilla/4.
0(compatible;MSIE6.
0;WindowsNT5.
1;SV1;.
NETCLR1.
1.
4322;.
NETCLR2.
0.
50727)Host:localhost:8080Connection:Keep-Alive一个例子("helloworld")请求消息:HTTP/1.
1200OKServer:Microsoft-IIS/5.
1X-Powered-By:ASP.
NETDate:Fri,03Mar200606:34:03GMTContent-Type:text/htmlAccept-Ranges:bytesLast-Modified:Fri,03Mar200606:33:18GMTETag:"5ca4f75b8c3ec61:9ee"Content-Length:37helloworld应答消息:200就表示操作成功404表示对象未找到500表示服务器错误403表示不能浏览目录……3、HTMLHTML(HypertextMarkupLanguage)即超文本标记语言是用来制作网页的标记语言是一种标记语言:不需要编译,直接由浏览器执行是一个文本文件,包含了一些HTML元素,标签等文件必须使用html或htm为文件名后缀是大小写不敏感的:HTML与html是一样的高级软件工程2009软件构件与中间件课程设置目标:如何提高软件的开发效率与产品质量.
特别是:….
.
讲义下载(随着讲课进度的推进而不断更新)第0讲:课程介绍(2.
20)第1讲:网络软件(2.
20)第2讲:中间件概述(2.
27、3.
06)第3讲:软件交互基础(3.
13)第4讲:远程过程调用(3.
20)第5讲:对象请求代理(3.
27)第6讲:应用服务器(1)(4.
03)第7讲:应用服务器(2)(4.
10)第8讲:支持Web服务的中间件(4.
17)……4、动态页面静态页面是不能根据外部信息自动更新内容的页面静态页面不是网站上没有动画静态页面一般是html或htm文件如果想更新网页内容就要通过FTP软件把文件DOWN下来用网页制作软件修改动态页面可以通过外部系统对页面的内容进行更新有数据库:页面里只是写代码,内容保存在数据库里更新方便,易操作动态页面也可以在发布时生成htm后缀的文件动态网站常用开发语言有:CGI,PHP,ASP,JSPCGI(CommonGatewayInterface):公用网关接口页面通过CGI调用在WEB服务器的计算机上运行的程序再将其运行结果通过WEB服务器传输到客户端的浏览器上CGI建立WEB页面与脚本程序之间的联系可以利用脚本程序来处理访问者输入的信息并据此作出响应这样的编制方式比较困难而且效率低下每一次修改程序都必须重新将CGI程序编译成可执行文件最常用于编写CGI技术的语言是Perl(PracticalExtractionandReportLanguage,文字分析报告语言)它具有强大的字符串处理能力特别适合用于分割处理客户端Form提交的数据串(1)CGIPHP(HypertextPreprocessor):超文本预处理器一种易于学习和使用的服务器端脚本语言是嵌入HTML文件的一种脚本语言.
语法大部分是从C,JAVA,PERL语言中借来它是当今INTERNET上流行的脚本语言只需要很少的编程知识就能使用PHP建立一个真正交互的WEB站点可以结合HTML语言共同使用与HTML语言具有非常好的兼容性使用者可以直接在脚本代码中加入HTML标签在HTML标签中加入脚本代码从而更好的实现页面控制提供更加丰富的功能(2)PHPASP(ActiveServerPages)微软开发的一种类HTML、Script与CGI的结合体没有提供自己专门的编程语言允许用户使用包括VBSCRIPT,JAVASCRIPT等在内的许多已有的脚本语言编写ASP的应用程序ASP的程序编制比HTML更方便且更有灵活性在WEB服务器端运行,运行后再将运行结果以HTML格式传送至客户端的浏览器(3)ASPJSP(JavaSeverPages)和ASP在技术方面有许多相似之处都是为实现动态交互网页制作提供的技术环境支持都能够为程序开发人员提供实现应用程序的编制及将网页与构件从逻辑上分离的技术都能够替代CGI:使网站建设与发展变的较为简单与快捷不过两者对实现基础要求不相同ASP一般只应用于WindowsNT/2000平台JSP则可以不加修改地在85%以上的WebServer上运行其中包括了NT的系统基于JSP技术的应用程序比基于ASP的应用程序易于维护和管理(4)JSP在一个JSP文件第一次被请求时JSP引擎把该JSP文件转换成为一个servlet客户访问这个页面的时候如果该文件没有发生过更改JSP引擎就直接调用已经装载的Servlet如果已经做过修改的话那就会再次执行以上过程:翻译、编译并装载在JSP技术中,JavaBean实现了业务逻辑部分它把数据返回给JSP页面由JSP页面负责格式化数据并输出到客户端的浏览器Sun的EnterpriseBluePrints提供了大量指导原则、设计模式和很好的例子:网上宠物店:JavaPetStoreJSP与Servlet(5)AJAX传统的Web应用允许用户端填写表单(form)当送出表单时就向Web服务器发送一个请求服务器接收并处理传来的表单然后送回一个新的网页这个做法浪费了许多带宽:在前后两个页面中的大部分HTML码往往是相同的由于每次都需要向服务器发送请求应用的响应时间就依赖于服务器的响应时间这导致了用户界面的响应比本机应用慢得多AJAX(AsynchronousJavaScriptandXML)应用可以仅向服务器发送并取回必需的数据它使用SOAP或其它一些基于XML的页面服务接口并在客户端采用JavaScript处理来自服务器的响应因为在服务器和浏览器之间交换的数据大量减少大约只有原来的5%结果我们就能看到响应(服务器响应)更快的应用(結果)同时很多的处理工作可以在发出请求的客户端机器上完成所以Web服务器的处理时间也减少了Ajax的优点:能在不更新整个页面的前提下维护数据使Web应用程序更为迅捷地回应用户动作并避免了在网络上发送那些没有改变过的信息Ajax不需要任何浏览器插件但需要用户允许JavaScript在浏览器上执行缺点:可能破坏浏览器后退按钮的正常行为:在动态更新页面的情况下用户无法回到前一个页面状态这是因为浏览器仅能记下历史记录中的静态页面一个被完整读入的页面与一个已经被动态修改过的页面之间的差别非常微妙;用户通常都希望单击后退按钮,就能够取消他们的前一次操作,但是在Ajax应用程序中,却无法这样做.

开发者已想出了种种办法来解决这个问题当中大多数都是在用户单击后退按钮访问历史记录时通过建立或使用一个隐藏的IFRAME来重现页面上的变更例如,当用户在GoogleMaps中单击后退时,它在一个隐藏的IFRAME中进行搜索,然后将搜索结果反映到Ajax元素上,以便将应用程序状态恢复到当时的状态.
一个相关的观点认为,使用动态页面更新使得用户难于将某个特定的状态保存到收藏夹中.
该问题的解决方案也已出现,大部分都使用URL片断标识符(通常被称为锚点,即URL中#后面的部分)来保持跟踪,允许用户回到指定的某个应用程序状态.
(许多浏览器允许JavaScript动态更新锚点,这使得Ajax应用程序能够在更新显示内容的同时更新锚点.
)这些解决方案也同时解决了许多关于不支持后退按钮的争论.

LOCVPS:美国XEN架构VPS七折,全场八折,日本/新加坡XEN架构月付29.6元起

LOCVPS发来了针对XEN架构VPS的促销方案,其中美国洛杉矶机房7折,其余日本/新加坡/中国香港等机房全部8折,优惠后日本/新加坡机房XEN VPS月付仅29.6元起。这是成立较久的一家国人VPS服务商,目前提供美国洛杉矶(MC/C3)、和中国香港(邦联、沙田电信、大埔)、日本(东京、大阪)、新加坡、德国和荷兰等机房VPS主机,基于XEN或者KVM虚拟架构,均选择国内访问线路不错的机房,适合建...

易探云服务器怎么过户/转让?云服务器PUSH实操步骤

易探云服务器怎么过户/转让?易探云支持云服务器PUSH功能,该功能可将云服务器过户给指定用户。可带价PUSH,收到PUSH请求的用户在接收云服务器的同时,系统会扣除接收方的款项,同时扣除相关手续费,然后将款项打到发送方的账户下。易探云“PUSH服务器”的这一功能,可以让用户将闲置云服务器转让给更多需要购买的用户!易探云服务器怎么过户/PUSH?1.PUSH双方必须为认证用户:2.买家未接收前,卖家...

Hostwinds:免费更换IP/优惠码美元VPS免费更换IP4.99,7月最新优惠码西雅图直连VPS

hostwinds怎么样?2021年7月最新 hostwinds 优惠码整理,Hostwinds 优惠套餐整理,Hostwinds 西雅图机房直连线路 VPS 推荐,目前最低仅需 $4.99 月付,并且可以免费更换 IP 地址。本文分享整理一下最新的 Hostwinds 优惠套餐,包括托管型 VPS、无托管型 VPS、Linux VPS、Windows VPS 等多种套餐。目前 Hostwinds...

服务器硬件知识为你推荐
p图软件哪个好用手机p图软件那个好绝地求生加速器哪个好玩绝地求生用什么加速器好啊?三国游戏哪个好玩三国系列的游戏哪个好玩?网校哪个好请问在网校排名中,哪个网校是最好的?想找一家最好的来选择啊?oppo和vivo哪个好vivo和oppo哪个更耐用牡丹江教育云空间登录请问一下校园云空间的登录方式有哪些?qq空间登录界面怎样进入自己qq空间辽宁联通营业厅请问辽宁鞍山最大的联通营业厅在哪dns服务器未响应DNS服务器未响应是什么360云存储360网盘目前最大空间是多少
cn域名 域名转让 便宜vps unsplash 新世界电讯 智能骨干网 godaddy域名证书 699美元 创建邮箱 申请免费空间 lamp怎么读 lamp的音标 广东服务器托管 什么是dns apache启动失败 网络安装 ddos攻击 ddos攻击器 ddos攻击小组 主机系统 更多