网站后台主流架构设计参考(图文)

整体:

网站后台主流架构设计参考(图文)_第1张图片

解读:

  1. 模拟三种客户端访问百度(www.baidu.com)服务器,理论上我们发送的url请求(即ip地址加端口号)通过防火墙后会默认只能访问百度的一台服务器
    网站后台主流架构设计参考(图文)_第2张图片
    2.但现实中为了提高并发量和访问效率,增加存储,公司会有多个服务器(会有负载均衡的问题)。且绝大多数公司都会设置代理服务器。
    代理服务器(Proxy Server)的功能是代理网络用户去取得网络信息。形象地说,它是网络信息的中转站,是个人网络和Internet服务商之间的中间代理机构,负责转发合法的网络信息,对转发进行控制和登记。
    它的主要功能有:
    (1)一个lP地址或Internet帐户供多个用户同时使用
    (2)缓存功能,可以降低费用,提高速度
    (3)对内部网络用户进行权限和信息流量计费管理
    (4)对进入内部网络的Internet信息实施监控和过滤
    网站后台主流架构设计参考(图文)_第3张图片
    3.代理服务器向服务器发送请求后,很多情况下服务器会向公司数据库服务器发送请求进行查询或修改。
    为了有效保护数据库的安全及提高数据库服务器的效率,很多情况下会添加一个缓存服务器(如redis)。
    缓存提供了比将访问对象放在Internet Web服务器上更好的方法,它将需要频繁访问的Web页面和对象保存在离用户更近的系统中,当再次访问这些对象的时候加快了速度。 无论企业有多大,Web缓存都有助于优化性能和节省宽带。而且如果选择了正确的缓存解决方案,它可以随着企业网络的增长而扩大,而无需进行昂贵且耗时的重建。
    网站后台主流架构设计参考(图文)_第4张图片
    4.为了提高并发量且提高用户与服务器交互速度,提高服务器性能,保证公司业务的正常展开(即预防服务器挂掉,当机),一般会设置多个缓存服务器(即缓存服务器集群)。
    同时为了对数据库操作进行安全性的保证(缓存服务器可以提升数据库服务器“读”操作的性能,但对“写”操作性能没有提升)且提高数据库连接数量(一般一个数据库服务器同时可建立1000个连接),会采用分布式思想将数据库分离,并使用数据库代理集群来解决访问多个数据库时的安全及定位问题。
    网站后台主流架构设计参考(图文)_第5张图片
    5.当并发量极高时,即便构建多个数据库服务器(数据库集群)也可能保证不了即使处理请求。以此引入了主从数据库的概念。
    主从数据库
    从数据库是主数据库的备份,当主数据库变化时从数据库要更新,这些数据库软件可以设计更新周期。这是提高信息安全的手段。主从数据库服务器不在一个地理位置上,当发生意外时数据库可以保存
    数据库集群主从数据库最本质的区别:集群是共享存储的。主从复制中没有任何共享。每台机器都是独立且完整的系统。
    优势:主从数据库将对数据库的“读”,“写”操作分离了开来,有效提高了对数据库服务器的使用。(“写”时可以针对主数据库服务器进行操作,而读时可针对从服务器进行查询)
    网站后台主流架构设计参考(图文)_第6张图片
    6.在大多数使用场景下,数据处理的顺序很重要,在访问量剧增的情况下,程序可能因为突发的超负荷请求而崩溃。这便引入了消息中间件
    消息中间件适用于需要可靠的数据传送的分布式环境。采用消息中间件机制的系统中,不同的对象之间通过传递消息来激活对方的事件,完成相应的操作。发送者将消息发送给消息服务器,消息服务器将消息存放在若干队列中,在合适的时候再将消息转发给接收者。
    网站后台主流架构设计参考(图文)_第7张图片

你可能感兴趣的:(CGB2007,java,面试,mvc,分布式,数据库)