1.IIS
IIS是英文Internet Information Server的缩写,译成中文就是"Internet信息服务"的意思。它是微软公司主推的服务器,最新的版本是Windows2008里面包含的IIS 7,IIS与Window Server完全集成在一起,因而用户能够利用Windows Server和NTFS(NT File System,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet和Intranet站点。
2.ApacheApache
ApacheApache在世界上的排名是第一的,它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,不仅简单、速度快、而且性能稳定,还可以用来做代理服务器。
3.Nginx
Nginx不仅是一个小巧且高效的HTTP服务器,也可以做一个高效的负载均衡反向代理,通过它接受用户的请求并分发到多个Mongrel进程可以极大提高Rails应用的并发能力。
4.Zeus
Zeus是一个运行于Unix下的非常优秀的Web Server,据说性能超过Apache,是效率最高的Web Server之一。
5.Sun
Sun的Java系统Web服务器也就是以前的Sun ONE Web Server。主要出现在那些运行Sun的Solaris操作系统的关键任务级Web服务器上。它最新的版本号是6.1,可以支持x86版本Solaris,Red Hat Linux,HP-UX 11i, IBM AIX,甚至可以支持Windows,但它的大多数用户都选择了SPARC版本的Solaris操作系统。
阁下在没有分布式集群部署经验的前提下能画出这样的架构图让人佩服本来我是不敢回答这些问题的,因为本身我也没有集群部署经验,但是一来没有人帮忙回来二来我也看过一点这些相关的书籍,所以可以把我知道的给你说下,估计能帮助你30%。
整个架构部署用到了集群部署(1:2)、动静分离、缓存服务、拆分数据库等高并发处理技术,属于大型系统的模型。
据我所知,集群1:2是1负载分发器、2web服务器,(以Apache+tomcat集群为例),那么Director server应该安装Apache,而Real Server应该安装tomcat,至于java web项目在tomcat下面即可。
而你的架构图中还有动静分离机制,理论上静态文件服务器也应该有java web项目才对,不然静态文件服务器如何取静态文件呢。tomcat对静态文件处理不是很好,所以很多人推荐用Nginx作为载体。
缓存和集群数据库我不了解,不发表任何谬论。
session会话就是指的httpsession:一个客户端一个session会话,在客户端与服务器保持通信期间都会需要这个会话,所以集群服务器一定要保存这个session。问题是客户端的URL请求被director server均衡分发了,可能第一次访问的是第一个real server,第二次访问的是第四个real server,如果session只在第一个real server保存,而第四个real server就会认为客户掉线拒绝请求,所以你要考虑四个real server用一种机制保存共享所有客户的session。一些经典的共享session方式有:session复制、session粘连、session统一独立存储等。
建议看下一些集群架构方面的书籍,比如《大型网站系统与java中间件实践》。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)