现在的Web服务器种类繁多,大家在做项目的时候可以根据自己的需求灵活选择。下面和大家分享一下有哪些Web服务器,以及它们的优缺点。
操作方法
01街头流氓
Apache又称httpd server,是目前应用最广泛的web服务器,应用于各种平台。当Apache首次推出时,它有许多缺陷。现在已经修复完善了。如果你是一名web服务器研究人员,边肖建议你必须学会使用Apache。
优点:紧凑、灵活、可扩展、稳定。
缺点:软件是开源的,所以很多漏洞可能很容易被发现。
02Nginx
Nginx是Linux平台下优秀的Web服务器。边肖以前使用过这种服务器,它大大提高了运行缓慢的应用程序的速度。
优点:压缩率高,负载均衡,速度快。
缺点:应用需要熟练的Linux命令。
03(同ImmigrationInspectors移民检查)
IIS是微软平台的Web服务器,是Windows平台的服务器。它和网文很匹配,初学者可以很快掌握。
优点:安装配置简单,简单易学。
缺点:平台适用性单一,安全性有待提高。
04中间件
WebLogic是专门用于企业开发的web服务器。一般搭配Java语言,使用上类似Apache。同时,它的架构也很优秀。
优点:安全性高,专业性强,耦合度低。
缺点:不容易掌握,需要一定的专业积累才能熟练应用。
05雄猫
Tomcat是许多Java学习者非常熟悉的web服务器。一般刚开始学习Java Web开发的人都会练习使用Tomcat作为服务器。它既有可视化的操作界面,又有命令语句,是一款不错的入门级服务器。
优点:简单易掌握,易于部署,应用广泛。
缺点:扩展性弱,可配置性弱,大并发能力弱。
06Lighttpd
Lighttpd是一个开源的web服务器,比较轻便,功能很多。目前使用率比较低,还没有普及。
优点:小巧精致,功能强大。
缺点:漏洞多,学习资源少。
07太阳
Sun是一个面向Solaris的web服务器,应用并不广泛,只应用于Sun公司相应的web产品。其他开发者也不能轻易使用这个服务器。
优点:针对性强,高并发,高速高效。
缺点:难掌握,适应性低。
08码头
Jetty是一个专用于Java Web的服务器。它用于运行Servlet程序,是众多服务器中最受限制的。边肖不建议你掌握这个服务器。
优点:内容简单,容易掌握。
不同类型的网站对于服务器资源的占用情况也不一样.如果是普通的企业站或者文字为主的网站.不需要做负载均衡,用一台四核至强处理器.4G以上内存.10M以上带宽的配置基本上就能满足.
如果是较大规模或者是图片.视频内容较多的网站,则会对服务器资源占用较高.推荐用双至强八核处理器.32G内存.1T硬盘的配置来放数据库,然后再用几台普通四核配置的机器放网站前端来做负载均衡即可.带宽需要根据你们的具体需求来决定.
1、提供HTML静态访问web界面上最快的访问速度是什么?当然是最原始的HTML文件访问,对于其他语言 比如 jsp ,asp,php等等,他们首先要通过服务器解析成html之后在返回给访问者,如果我们能提供全部是htm来的页面,那么就能大大的降低服务器和数据库资源的利用和提高网站的并发,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法。当然实现这种方式大家比较了解的就是信息发布系统CMS,信息发布系统可以实现最简单的信息录入自动生成静态页面,还能具备频道管理、权限管理、自动抓取等功能,对于一个大型网站来说,拥有一套高效、可管理的CMS是必不可少的。
在后续的文章中我们会单独的使用jsp + servlet实现一个简单的信息发布系统.
2、使用独立的图片服务器
为什么要把图片单独设置一个服务器?对于Web服务器来说,图片消耗的服务器资源是最多的,如果能把所有的图片资源放到一个单独的图片服务器中进行处理的话,可以降低提供页面访问请求的服务器系统压力,从而能进一步的提高web程序的并发.所以在有条件的情况下最好能把图片放置到一个单独的服务器中.
3、配置多台数据库服务器,多个数据库集群
集群(Cluster)技术是使用特定的连接方式,将价格相对较低的硬件设备结合起来,同时也能提供高性能相当的任务处理能力。
越是大型高并发的应用,数据库的压力就会越大,如果数据库操作很频繁,数据库的瓶颈很快就能显现出来,这时一台数据库将很快无法满足应用,于是我们需要使用数据库集群。
数据库集群就是使用多个数据库服务器分担请求的压力,达到快速响应的目的.
4、使用缓存
所谓的缓存就是把数据咱是放置到内存中,前台在请求的时候直接从内存中读取数据,而不需要去查询数据库或者读取文件等,这样就能做到最快的响应。网站架构和网站开发中的缓存是非常重要的。
目前有很多开源的缓冲实现方案,APC,File,SQLite,Memcache等等各种类库实现着不同的缓存方式,只有通过了解他们的实现方式,根据具体应用具体选择,才会使缓存系统发挥出最大的性能。
对于java开发来说,大名顶顶的 分布式缓存系统Memcache 可能是最好的选择,他提供一个基于Socket的访问方式,使得该缓存系统支持远程读写访问。尽管这个缓存的内容可能是存在内存中,也可能是存在文件内。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)