http://www.paper.edu.cn

缓存服务器  时间:2021-01-05  阅读:()

-1-中国科技论文在线海量用户高并发情况下的web系统优化邹猛,王丹志**作者简介:邹猛(1991-),男,汉族,山东人,北京邮电大学电子工程学院,学生,电子科学与工程专业通信联系人:王丹志(1964-),男,汉族,北京人,北京邮电大学电子工程学院,副教授,无线通信技术与电子系统设计.
E-mail:danzhiwang@bupt.
edu.
cn(北京邮电大学电子工程学院,北京100876)5摘要:随着互联网的发展,很多Web系统是面向全国用户提供互联网服务,当系统的访问量逐渐增多,从十万到百万到千万甚至过亿的扩大过程中,Web系统的后台服务会面临越来越大的压力,极端情况下会造成系统卡顿甚至崩溃.
本文旨在研究解决海量用户海量请求造成的系统压力问题,从负载均衡、缓存技术、数据库调优、分布式部署角度进行Web系统的优化,最终进行系统部署和测试,验证方案的可行性和有效性.
10关键词:负载均衡;缓存;数据库调优;分布式部署中图分类号:TP302.
7WebSystemOptimizationonVastUsersAndHighConcurrentRequests15ZOUMeng,WANGDanzhi(Schoolofelectricalengineering,BeijingUniversityofPostsandTelecommunications)Abstract:WiththerapiddevelopmentofInternettechnology,ManywebsystemprovideInternetservicesfacingthewholecountryusers,whenthesystemoftrafficincreasegradually,fromthousandstomillionstomillionsorevenbillionsofexpandingprocess,thewebsystembackgroundserviceswill20faceincreasingpressure,finallymaycausecatonsystemsorevencollapse.
Thepurposeofthispaperistostudytosolvetheproblemofthesystempressureonthemassiveusercausedmassiverequest,fromthebalancedload,tosetupthecaching,databasetuning,distributeddeploymenttooptimizationwebsystem,andachievedremarkableresults.
Keywords:Loadbalancing;Cache;Databaseoptimize;distributed250引言"互联网+"是引领社会发展变革的全新理念,推动了以互联网为核心的网络秩序和产业业态的逐步形成[1].
最近十年间,互联网已经从一个单纯的用于科研的,用来传递静态文档的美国内部网络,发展成了一个应用于各行各业的,传送着海量多媒体及动态信息的全球网络.
从规模上看,互联网在主机数、带宽、上网人数等方面几乎一直保持着指数增长的趋势.
30另一方面,互联网所传递的内容也发生了巨大的变化,早期互联网以静态、文本的公共信息为主要内容,而目前的互联网则传递着大量的动态、多媒体及人性化的信息,人们不仅可以通过互联网阅读到动态生成的信息,而且可以通过它使用电子商务、即时通信、网上游戏等交互性很强的服务.
因此,可以说互联网已经不再仅仅是一个信息共享网络,而已经成为了一个无所不在的交互式服务的平台.
35互联网规模不断扩大,用户群爆炸式增长,以及Web2.
0到Web3.
0的"量变"-"质变"的飞跃[2],对互联网系统提出了新的要求:高性能、高并发、高稳定性.
本文面向海量用户的高并发应用场景,提出了Web系统的优化方案,并进行了系统部署、测试.
http://www.
paper.
edu.
cn-2-中国科技论文在线1系统的负载均衡服务器端的负载均衡是实现服务器集群任务分发的一种机制,这种机制对于服务器的利40用率,保障服务器高效运行,减少过载或者空闲等不良情况,具有十分重要的作用.
通过多服务器协同处理客户的请求,从而在多个服务器之间分担负载,以减轻单个服务器处理报文的负担,并保证整个系统对客户的透明[3].
如图1是其模式图:图1负载均衡45Fig.
1Loadingbalance1.
1负载均衡实现方案实现负载均衡机制由多种实现方案,云护理平台利用Nginx服务做反响代理,其最重要的作用是对HTTP请求进行转发,是后端服务器与前端的中间中转桥梁.
Nginx组件使用灵活,可配置项很多,可以实现定制.
但是引入Nginx后随之带来的问题是云护理后台系统中50的共享session不能像单机时那么使用,因为请求是根据服务器情况随机转发的,从一台机器保存session可能导致别的机器该session没有数据.
为了解决以上问题,本文提出了两种方案:第一种是对Nginx的转发规则进行设置,保证当相同用户发出的请求可以在相同的后台服务器上得到服务,避免全集群的跳转.
这种实现方案要基于前端用户的cookie,转发规则55的解析和运行会增大系统开销,有其局限性.
第二种是专门配置一台服务器做session存储,比如redis、memcache等缓存型数据库,这样所有的需要session认证的请求都会从同一台机器回去,保证了一致性,也有很高的效率.
1.
2负载分配算法60发送者分配算法:首先,发送引入一个阈值M将系统中的事务处理节点划分为轻负载节点和重负载节点,所有当前剩余负载t>M的节点称为重负载节点,t在事务处理一段时间之后,每个节点检查自身是否是重负载节点,如果是重负载节点,就试图向系统中的轻负载节点发送事务.
设该节点的负载为,系统中还有K个节点,其负载分别为,…,,则系统的平均负载为:65http://www.
paper.
edu.
cn-3-中国科技论文在线为了达到负载均衡,应求得重负载节点应该传递其它节点的负载量,为了避免负载被迁移到系统中重负载节点上,引入,如果<,则=0,那么为:最后,该节点就可以按照mk向系统中的其它节点发送事务,保证负载均衡.
70权重轮询分配算法:根据分布式系统中每台服务器的事务处理能力,为其分配不同的权重值,,,…分别表示系统中各个节点的负载能力;,…表示系统中各个节点的负载能力权重值;L表示分布式数据库系统的平均负载值,则L为:分布式数据库系统中的事务分配算法不局限于某一个算法,而是根据系统的不同部署情75110况对算法进行选择或组合,根据系统负载分配情况进行实时调整,这样可以提高系统中每个数据库的性能和可用性.
2系统缓存的搭建与优化Web站点性能良好、用户访问时延小,已经成为一个网站长远发展的核心竞争力[4].
缓存具有快速、方便、可扩展的特性,缓存的加入可以保持热点数据的快速访问,减少磁盘检80索的次数,减少数据库服务器的压力,给予用户快速的相应.
图2缓存Fig.
2Cache2.
1缓存静态页面85当用户对某个页面发起请求时,此页面可能与上次请求的内容一直,即没有发生数据更新.
比如网站的文章信息、个人简介、新闻的过时报道、用户的基本信息等,这些数据很少会发生变更.
如果每次请求都是直接访问静态页面,而不是每次都需要后端服务器进行渲染,那么每次请求将十分迅速,并且可以减少服务器的压力.
使用CGI生成静态页面,然后缓存到云护理后端服务器的磁盘,下次请求直接返回该文件即可.
90http://www.
paper.
edu.
cn-4-中国科技论文在线图3静态化Fig.
3Staticize进一步,随着云护理后台系统的不断庞大,磁盘中可能出现大量缓存的静态文件,但是也会存在一大堆失效或者旧的静态文件,管理十分不便.
于是消息系统随之进行了二次优化,95使用redis服务器搭建独立的缓存系统,使用KEY/VALUE的形式和LRU算法可以十分方便地进行集中式缓存文件管理.
图4Redis缓存Fig.
4RedisCache1002.
2缓存集群将缓存独立成单独地服务好,很好的解决了管理混乱的问题,但是随之带来的是单点服务问题,如果只采用单点服务,那么当缓存服务宕机后可能给整个云护理平台带来灭顶之灾.
所以必需进行缓存集群搭建.
Rediscluster以主从机进行水平扩展,每个结点都可以提供缓存服务,当有某个结点挂掉后,集群马上激活备份机器,避免影响云护理平台系统.

105http://www.
paper.
edu.
cn-5-中国科技论文在线图5Redis集群Fig.
5RedisCluster图6Redis架构110Fig.
6Redisarchitecture2.
3缓存数据库修改指令数据库里的最大瓶颈就是写操作,写入磁盘需要调用底层操作系统指令,而且要寻址和进行磁盘运算,十分耗费时间.
在云护理平台中,当大量消息需要写入消息系统时,先将修改的请求缓存起来,做成一个缓存队列,当队列到达某个阈值时,统一进行修改,这样就把115单次修改指令,变成了批处理.
大大减少了磁盘IO的开销,提高数据库效率.
图7缓存指令Fig.
7Instructioncache3数据库层的优化120用户量的飙升和海量请求压力的解决单靠增加服务器数量,是需要很大成本、有很多局限性的.
其中数据库也是海量用户下的瓶颈之一,Web后台服务系统引入数据缓存、分库分表、主从备份、读写分离解决数据库瓶颈问题.
http://www.
paper.
edu.
cn-6-中国科技论文在线3.
1数据库分区、分表当数据量呈现爆炸时增长,或者系统使用时间很长,在MySQL数据库里存储了大量数125据时,数据库的各项性能都会受到影响.
有其时查询和修改操作.
当数据到达这个级别时就需要对数据库执行分库、分表、分区等操作,有时数据量很大的表可以进行横向拆分,字段过多的大表需要进行数据库的纵向拆分.
这样做虽然在代码或者操作上增加复杂性,但是总体对于效率的提高十分有意义.
3.
2建立Mysql数据库集群130Web服务器集群技术为Web服务器系统容量的不断扩展提供了良好的途径,它将一组Web服务器通过一定的形式组织在一起,构成单一的服务器映像,以提供强大的服务能力[5].
单台数据库服务器,不仅存储不了太多的数据,并且单点部署存在很大的风险,当其发生故障崩溃宕机时,会造成整个应用的停用,所以建立数据库集群是非常必要和必须的.

易探云韩国云服务器仅50元/月,510元/年起

韩国云服务器哪个好?韩国云服务器好用吗?韩国是距离我国很近的一个国家,很多站长用户在考虑国外云服务器时,也会将韩国云服务器列入其中。绝大部分用户都是接触的免备案香港和美国居多,在加上服务器确实不错,所以形成了习惯性依赖。但也有不少用户开始寻找其它的海外免备案云服务器,比如韩国云服务器。下面云服务器网(yuntue.com)就推荐最好用的韩国cn2云服务器,韩国CN2云服务器租用推荐。为什么推荐租用...

Raksmart:香港高防服务器/20Mbps带宽(cn2+bgp)/40G-100Gbps防御

RAKsmart怎么样?RAKsmart香港机房新增了付费的DDoS高防保护服务,香港服务器默认接入20Mbps的大陆优化带宽(电信走CN2、联通和移动走BGP)。高防服务器需要在下单页面的IP Addresses Option里面选择购买,分:40Gbps大陆优化高防IP-$461/月、100Gbps国际BGP高防IP-$692/月,有兴趣的可以根据自己的需求来选择!点击进入:RAKsmart官...

提速啦(900元/月),杭州BGP E5-2665/89*2 32核 48G 100G防御

提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑提速啦的市场定位提速啦主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。提速啦的售后保证提速啦退款 通过于合作商的友好协商,云服务器提供3天内全额退款,超过3天不退款 物理机部分支持当天全额退款提速啦提现 充...

缓存服务器为你推荐
虚拟主机什么是虚拟主机域名空间空间域名是什么意思美国主机空间买空间网的美国主机咋样?vps试用求永久免费vps服务器(要永久的)域名注册查询如何知道域名注册信息?域名服务什么是域名服务?域名服务的主要作用是什么?域名购买域名购买的流程是什么?台湾vps台湾服务器 哪里稳定速度快?海外域名怎样注册国外域名?网站空间价格普通的网站空间要多少钱一年
免费域名空间 域名查询工具 查询ip地址 外国服务器 512m 抢票工具 申请空间 论坛空间 国外在线代理 个人空间申请 太原联通测速平台 创梦 合租空间 老左正传 shopex主机 如何建立邮箱 web服务器搭建 ebay注册 电信网络测速器 cdn网站加速 更多