码迷,mamicode.com
首页 > Web开发 > 详细

大型技术网站的技术( 高并发、大数据、高可用、分布式....)(一)

时间:2017-09-25 16:09:32      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:缓存服务器   应用服务   很多   方式   同步   大数   数据   资源   这不   

面对高并发、大流量、高可用、海量数据、用户分布广泛、网络情况复杂这类网站系统我们如何应对???

 

第一阶段   一台服务器不行就上多台服务器

   1.应用程序与数据服务分离

       将应用程序、数据库、文件等资源放在一台服务器上,面对海量用户的访问只可能是崩崩崩的挂掉。

   so?

      我们知道的是应用服务器、数据库服务器、文件服务器这三块对服务器的要求是不同的,应用服务器就需要大大的CPU来处理复杂的业务逻辑,数据库服务器需要快速磁盘检索      和 数据缓存也就是要大内存,而文件服务器要求的是更快更大的内存(上SSD吧)。

   2.来吧 服务器集群

          这里就用到负载均衡了。将用户的访问请求给它分发到服务器集群中的任何一台服务器,如果用户多了就多增加服务器呗,这不就改善了服务器的负载压力了吗?想想谷歌的         服务器。用户辣么多,越来越多,那就上更多的应用服务器,这样应用服务器就不会成为网站系统的瓶颈了。

第二阶段     你光上硬件这样很成本高啊,来点技术的方式吧

         1.上缓存

           大部分用户的业务访问集中在一小部分数据上,辣么我们就可以把这小部分数据放在内存中,你要用就从内存中拿这样的话,数据库的压力就小很多了,系统响应速度也就快         了。

         缓存又分为本地缓存和远程分布式缓存,本地缓存肯定快啊,但你应用服务器的内存毕竟有限,缓存的数据量有限,所以三思啊。远程分布式缓存,部署专门的大内存服务器          为缓存服务器,这样来吧用户你来把,我内存大不怕。

          问题又来了,你数据访问没问题了,但你单一服务器处理的请求连接是有限的啊,在网站访问高峰期你就压力山大了,但是前面部署弄了服务器集群吗?所以不是问题。

        2.将数据库的读写分离

            配置两台数据库的主从关系,一台专门读,一个专门写。但是这个数据的同步还是比较麻烦的。

        3.反向代理服务器

            本质就是缓存,请求来了,我这个反向代理服务器中有,就直接给你返回。

        4.花样繁多的分布式

            拆分数据库放,拆分文件系统等等。。。

大型技术网站的技术( 高并发、大数据、高可用、分布式....)(一)

标签:缓存服务器   应用服务   很多   方式   同步   大数   数据   资源   这不   

原文地址:http://www.cnblogs.com/boy4j/p/7591915.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!