高并发的解决方案-随笔

一、应用与静态资源分离:

    将静态资源放到相应的服务器中与应用服务器分离。算法

    这样作能够在访问,图片,视频等的时候能够直接经过相关的域名进行访问。缓存

二、页面缓存:

    页面缓存是将应用生成的页面缓存起来,这样就不须要每次都请求服务器,能够节省大量CPU,若是将缓存的页面放在内存中就更快。tomcat

    那一些常常变更的数据怎么办呢?服务器

    能够经过AJAX来读取修改相应数据。session

三、集群分布式

    集群和分布式都是使用多台服务器进行处理;负载均衡

    集群:分布式

        每台服务器都具备相同的功能,处理请求调用哪台服务器均可以,主要起到分流的做用。性能

        集群有两种方式:一种是静态资源集群。另外一种是应用程序集群。spa

        应用程序集群中 最重要的是Session,session同步是集群的一个很是核心的问题。Session同步用两种处理方式:一种是在session发生变化后自动同步到其余服务器,另外一种是经过统一程序管理session。全部集群都使用同一个session。tomcat默认使用第一种。集群中还有一个核心问题就是负载均衡,即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,下降对主服务器的硬件和软件要求。代理

        集群系统(Cluster)主要解决下面几个问题: 
            高可靠性(HA):利用集群管理软件,当主服务器故障时,备份服务器可以自动接管主服务器的工做,并及时切换过去,以实现对用户的不间断服务。 
            高性能计算(HP):即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,一般用于科学计算领域,好比基因分析,化学分析等。 

    分布式:

        将不一样的业务放到不一样的服务器中,处理一个请求可能须要多台服务器,这样能够提升一个请求的处理速度。

    固然,集群和分布式是能够同时使用的。

四、反向代理:

    反向代理指的是客户端访问的服务器并不是真正提供服务,而是从其余服务器获取资源返回给客户。

  五、CDN:

       CDN是一个特殊的集群页面缓存服务器。CDN分布在全国各地,当接受用户请求时分配最合适的CDN服务器获取数据。

相关文章
相关标签/搜索