第六讲应用服务器

服务器硬件知识  时间: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应用程序能够在更新显示内容的同时更新锚点.
)这些解决方案也同时解决了许多关于不支持后退按钮的争论.

Sharktech10Gbps带宽,不限制流量,自带5个IPv4,100G防御

Sharktech荷兰10G带宽的独立服务器月付319美元起,10Gbps共享带宽,不限制流量,自带5个IPv4,免费60Gbps的 DDoS防御,可加到100G防御。CPU内存HDD价格购买地址E3-1270v216G2T$319/月链接E3-1270v516G2T$329/月链接2*E5-2670v232G2T$389/月链接2*E5-2678v364G2T$409/月链接这里我们需要注意,默...

日本vps云服务器选择指南。

日本vps云服务器怎么选择?很多人都会遇到日本vps和日本云服务器怎么选择的问题,日本云服务器具有免备案的特点。小编今天就分析一下日本云服务器价格多少钱,以方便大家选购的时候有个更加合适的取舍。日本云服务器租用前比较选择,高性能、安全、高效、免备案日本云服务器是很关键的因素。那么,日本云服务器该怎么选择呢?日本作为我们的邻国,与其贸易、文化往来是比较多的。日本云服务器价格多少钱一年?一、日本·CN...

这几个Vultr VPS主机商家的优点造就商家的用户驱动力

目前云服务器市场竞争是相当的大的,比如我们在年中活动中看到各大服务商都找准这个噱头的活动发布各种活动,有的甚至就是平时的活动价格,只是换一个说法而已。可见这个行业确实竞争很大,当然我们也可以看到很多主机商几个月就消失,也有看到很多个人商家捣鼓几个品牌然后忽悠一圈跑路的。当然,个人建议在选择服务商的时候尽量选择老牌商家,这样性能更为稳定一些。近期可能会准备重新整理Vultr商家的一些信息和教程。以前...

服务器硬件知识为你推荐
桌面背景图片桌面背景和桌面壁纸的区别是什么?宝来和朗逸哪个好新宝来和新朗逸选哪个?好纠结!!宝来和朗逸哪个好朗逸和宝来买哪个好英语词典哪个好英语词典哪个好考生个人空间登录第一次登陆湖南省高等教育自学考试 考生个人空间就密码不对为什么电信dns服务器地址电信现在DNS服务器地址是多少360云盘下载别人在百度知道给了你360云盘资源,怎么在360云盘使用????360云查杀360出了个云查杀?啥叫云啊360云u盘介绍一下360云u盘广东联通彩铃中国联通炫铃怎么设置?
域名停靠 网络域名 高防直连vps 工信部域名备案系统 linuxapache虚拟主机 免费动态域名 lamp 联通c套餐 z.com 名片模板psd ixwebhosting php探针 太原联通测速平台 183是联通还是移动 泉州电信 网通服务器托管 搜索引擎提交入口 华为云服务登录 登陆空间 秒杀品 更多