浅谈web网站架构演变过程

浅谈web网站架构演变过程

ID:46128692

大小:84.50 KB

页数:15页

时间:2019-11-21

浅谈web网站架构演变过程_第1页
浅谈web网站架构演变过程_第2页
浅谈web网站架构演变过程_第3页
浅谈web网站架构演变过程_第4页
浅谈web网站架构演变过程_第5页
资源描述:

《浅谈web网站架构演变过程》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、浅谈web网站架构演变过程刖B我们以javaweb为例,來搭建一个简单的电商系统,看看这个系统可以如何一步步演变。该系统具备的功能:?■■?用户模块:用户注册和管理商品模块:商品展示和管理交易模块:创建交易和管理阶段一、单机构建网站网站的初期,我们经常会在单机上跑我们所有的程序和软件。此时我们使用一个容器,如tomcat>jetty、jboos,然后直接使用JSP/servlet技术,或者使用一些开源的框架如maven+spring+struct+hibernate>maven+spring+springmvc+mybatis;最后再选择一个数据库管理系统来存储数据,如my

2、sqLsqlserver、oracle,然后通过JDBC进行数据库的连接和操作。把以上的所有软件都装载同一台机器上,应用跑起来了,也算是一个小系统了。此时系统结果如下:阶段二、应用服务器与数据库分离随着网站的上线,访问量逐步上升,服务器的负载慢慢提高,在服务器还没有超载的时候,我们应该就要做好准备,提升网站的负载能力。假如我们代码层面已难以优化,在不提高单台机器的性能的情况下,增加机器是一个不错的方式,不仅可以有效地提高系统的负载能力,而且性价比高。增加的机器用來做什么呢?此时我们可以把数据库,web服务器拆分开来,这样不仅提高了单台机器的负载能力,也提高了容灾能力。应用服

3、务器与数据库分开后的架构如下图所示:阶段三、应用服务器集群随着访问量继续增加,单台应用服务器己经无法满足需求了。在假设数据库服务器没有压力的情况下,我们可以把应用服务器从一台变成了两台甚至多台,把用户的请求分散到不同的服务器屮,从而提高负载能力。多台应用服务器之间没有直接的交互,他们都是依赖数据库各自对外提供服务。著名的做故障切换的软件有keepalived,keepalived是一个类似于layers.4.7交换机制的软件,他不是某个具体软件故障切换的专属品,而是可以适用于各种软件的一款产品。keepalived配合上ipvsadm又可以做负载均衡,可谓是神器。我们以增加

4、了一台应用服务器为例,增加后的系统结构图如下:系统演变到这里,将会出现下面四个问题:1.用户的请求由谁来转发到到具体的应用服务器2.有什么转发的算法3.应用服务器如何返回用户的请求4.用户如果每次访问到的服务器不一样,那么如何维护session的一致性我们來看看解决问题的方案:11、http重定向。HTTP重定向就是应用层的请求转发。用户的请求其实已经到了HTTP重定向负载均衡服务器,服务器根据算法要求用户重定向,用户收到重定向请求后,再次请求真正的集群优点:简单。缺点:性能较差。2、DNS域名解析负载均衡。DNS域名解析负载均衡就是在用户请求DNS服务器,获取域名对应的I

5、P地址时,DNS服务器直接给出负载均衡后的服务器IPo优点:交给DNS,不用我们去维护负载均衡服务器。缺点:当一个应用服务器挂了,不能及时通知DNS,而<DNS负载均衡的控制权在域名服务商那里,网站无法做更多的改善和更强大的管理。3、反向代理服务器。在用户的请求到达反向代理服务器时(己经到达网站机房),由反向代理服务器根据算法转发到具体的服务器。常用的apache,nginx都可以充当反向代理服务器。优点:部署简单。缺点:代理服务器可能成为性能的瓶颈,特别是一次上传大文件。4、IP层负载均衡。在请求到达负载均衡器后,负载均衡器通过修改请求的目的IP地址,从而实现请求的转发,

6、做到负载均衡。优点:性能更好。缺点:负载均衡器的宽带成为瓶颈。5、数据链路层负载均衡。在请求到达负载均衡器后,负载均衡器通过修改请求的mac地址,从而做到负载均衡,与IP负载均衡不一样的是,当请求访问完服务器Z后,直接返回客户。而无需再经过负载均衡器。2、第二个问题即是集群调度算法问题,常见的调度算法有10种。1>rr轮询调度算法。顾名思义,轮询分发请求。优点:实现简单缺点:不考虑毎台服务器的处理能力2、wrr加权调度算法。我们给每个服务器设置权值weight,负载均衡调度器根据权值调度服务器,服务器被调用的次数跟权值成正比。优点:考虑了服务器处理能力的不同3、sh原地址散

7、列:提取用户IP,根据散列函数得出一个key,再根据静态映射表,查处对应的value,即目标服务器IP。过目标机器超负荷,则返回空。4、dh目标地址散列:同上,只是现在提取的是目标地址的IP来做哈希。优点:以上两种算法的都能实现同一个用户访问同一个服务器。5、lc最少连接。优先把请求转发给连接数少的服务器。优点:使得集群中各个服务器的负载更加均匀。6、wlc加权最少连接。在lc的基础上,为每台服务器加上权值。算法为:(活动连接数*256+非活动连接数)一权重,计算出來的值小的服务器优先被选择。优点:可以根据服务器的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。