• 针对web高并发量的处理


    针对web高并发量的处理


    针对高并发量的处理 一个老生常谈的话题了 至于需要运维支持的那些cdn、负载均衡神马的就不赘述了 你们都懂的

    虫子在此博文只讲一些从程序角度出发的一些不错的解决方案。 至于从数据库角度的性能方案、虫子另开博文。

    1. 首推静态化 推荐指数五颗星 满星五颗

    只要是大型互联网应用基本上离不开这个概念,IIS自带的伪静态化不谈,但是想做好静态化并不是一个容易的过程 动态和静态之间的取舍需要用一个平衡的战略眼光来看待

    举个例子 当初在盛大游戏的时候 遭遇永恒之塔aion上线,悲摧、血泪,周末过去加班,目的、论坛必须抗住压力。好吧,让我重构整个论坛是不可能了,怎么整,静态化。如何静态化,全站!!!忽悠、大忽悠,爬网爬整个论坛么,非也。说是全站、其实也就是首页、版面页、热门板块的前20页等,开多个线程一起跑、担心线程资源问题就copy下程序,复制下来改个参数开多个进程跑。静态站完成了、然后怎么办,用户怎么互动。亮点来了,其实我们是6台动态站、1台静态站,因为大部分用户只看看不说话,所以我们以静态站为入口,如果用户产生互动 我们就把他们甩到动态站去。oh yeah,似乎也没那么复杂。至于一般的互联网应用其实一般首页静态化就足够了。 

    2.异步请求

    关于ajax一般不是新手的话都已经很了解了,Asynchronous JavaScript and XML。大多数人可能把ajax看成是提供用户体验的方案。实际上ajax对于减轻服务器压力也是很有帮助的。ajax在服务端返回来的仅仅只是浏览器端需要的数据,比如你的select,返回的是仅需要一串json而不会返回一大堆多余的html标签。这样能减轻网络负载。增大网络吞吐率。

    3.并行计算

    虫子以前的博文中介绍过cuda并行框架,现在微软4.0也已经提出了并行计算。不过还没深入研究,当然并不是一个站点的所有模块都适合并行计算,仅限于查询、行为分析等。

    4.缓存什么就不多扯了

    5.文本存储

    对于一些常用的资源可以在站点启动初,就形成固化资源、定时维护。例如web安全的规则文件。

    6.动静分离

    图片资源、css、视频的等等静态资源切换到独立服务器。

    7.用户引导

    社会学方案,哈哈

    8.减少session的使用 你们也懂的 不多说

    9.无关安全的计算可以放在客户端

    例如层级跳转、用户调查中根据前文选择的后续命题选择等等 可以用js实现

    10.还有很多 .....

  • 相关阅读:
    使用Python读取照片的GPS信息
    jquery animate自定义动画
    javascript 跨域名 精简
    c++ 多态
    sougou php mysql 调用
    smarty 快速入门
    html 表单模板
    stl helloworld 链表 快速入门
    解析C函数式宏
    宏常用例子
  • 原文地址:https://www.cnblogs.com/ypinchina/p/5971491.html
Copyright © 2020-2023  润新知