zoukankan      html  css  js  c++  java
  • 高并发解决方案

    海量数据常用优化方案:

      1.使用缓存技术;

        把经常访问的数据缓存到内存,通过使用Map或CurrentHashMap,缺点:内存有限

        或者是用缓存框架:redis、memcache

        涉及到缓存失效策略,这个要好好研究下。

      2.页面静态化;

        将静态公共资源文件 ,如html,css,js等单独部署。

      3.数据库优化;

        数据库表结构设计优化,SQL语句优化、分区、分表、索引优化等。

      4.分离数据库中活跃的数据;

      5.批量读取和延迟修改;

        减少与数据库打交道。

        批量读取:将多次读取合并;

        延迟修改:将修改的数据保存到缓存,而不是立即修改数据库,然后定时将缓存中的数据保存到数据库中,程序读取数据时可以同时读取数据中和缓存中的数据。

      6.读写分离;

        对数据库的读写操作分散到多个数据库服务器上,降低单台数据库的访问压力。

        一般是M-M-S模式,2个主,多个从,2个主只有一个是active,主库负责写【增加、修改、删除】,多个从库负责读【select查】。

      7.使用Hadoop生态圈大数据技术;

      8.数据库主从备份,分布式部署;

      9.根据业务拆分,做成一个个微服务;

    高并发常用方案:

      1.将程序和静态资源文件分离;

        应该程序只提供数据,静态资源用Nginx,减轻后端服务器压力

      2.搭建单独的文件服务器(专门存放图片的);

      3.页面缓存;

        很少发生数据变化的页面缓存起来,不需要每次请求都去后台生成,节省大量CPU资源。Nginx提供了缓存功能,也可以使用专门的页面缓存服务器Squid

      4.集群nginx

  • 相关阅读:
    最短路必经点(边)
    [HNOI2008]越狱
    【模版】卢卡斯定理
    偶数
    [USACO17FEB]Why Did the Cow Cross the Road I S
    [USACO17FEB]Why Did the Cow Cross the Road II S
    [USACO07NOV]电话线Telephone Wire
    [JSOI2007]祖码Zuma
    单人纸牌_NOI导刊2011提高(04)
    [USACO13OPEN]重力异常
  • 原文地址:https://www.cnblogs.com/ngy0217/p/8996052.html
Copyright © 2011-2022 走看看