- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
高并发Web网站构建和安全防护
——Hansionxu(徐汉彬)
自我介绍Hansionxu(徐汉彬)腾讯高级工程师(SNG增值产品部)QQ会员AMS运营平台技术负责人技术博客:
内容目录
高并发的由来页面元素越来越多,例如:和浏览器并发连接数
混合CGI和Ajaxhtml和CGI代码解耦,以及更复杂的通信场景
高并发的由来更复杂的浏览器和服务端的交互通信场景WebSocket
一次HTTP通信一次HTTP请求的通信成本HTTP的短连接和长连接
长连接带来的问题长连接:保持连接与复用,HTTP1.1默认开启
基于Apache的Web服务演变史经典Web服务架构之一:LAMP
Apache的Prefork模式多进程(一个子进程提供服务)成熟稳定,允许线程不安全进程比较重,消耗太多内存,生成的服务进程数有限Keep-alive
Apache的Worker模式多进程和多线程混合模式线程为主(一个线程提供服务)线程占据内存少,更轻量,生成更多服务线程数需要支持线程安全,线程崩溃问题Keep-alive
Apache的Event模式同Worker模式解决Keep-alive的资源浪费问题使用条件:Apache2.4.10+Epoll支持(Linux2.6)
Select/poll大部分空闲导致的资源浪费例子:快递员收件,100间宿舍
Epoll事件驱动,大部分空闲时,更节省资源绝大部分都繁忙时,反而更耗资源
Nginx的Web服务LNMP:Linux+Nginx+PHP+MYSQLNginx用途:PHP/FastCGI反向代理……
Nginx的处理模式天然比Apache轻量(2004年10月)不需要维持很多的线程或者进程静态文件(css/js/html/图片),3倍于ApachePHP服务,略弱于Apache
静态文件:CDN服务CDN:ContentDeliveryNetwork,即内容分发网络
比较推荐的Web服务架构
Web服务的QPS的计算QPS,QueryPerSecond,每秒处理请求数例如:平均200ms处理一个请求,100个服务进程/线程,10台Apache服务器10*(100/0.2)=5000QPS(理想状态)
高并发下的QPS的真实情况CPU繁忙,维持更多的服务进程/线程和连接内存爆满,可能引起swap后端其他服务异常10*(100/1)=1000QPS
高并发下的保护措施设置合理的进程/线程数(防止过载)设置合理的超时时间(各个环节)如果发生Web服务全面“雪崩”不要直接重启,先切流量
Web服务安全防护几种基础的安全类型:XSS,CrossSiteScripting,跨站脚本攻击CSRF,Cross-siterequestforgery,跨站请求伪造SQL注入Shell注入
XSS基础防御方法达成条件:回显,用户的输入,你无条件输出解决方案:过滤用户输入过滤页面输出
CSRF防御方法达成条件:引诱用户点击“特殊连接”/del.php?id=10,表示删除文章的页面里,放了这个“连接”解决方案:CGI执行之前判断HTTP_REFERERAjax根据cookie计算g_token
SQL注入防御方法:不信任一切用户输入和前端传参
Shell注入防御方法:参数过滤禁用执行shell命令的函数
高并发下的业务安全同一个用户并发发送多个请求
高并发下的业务安全多个用户同时修改一个存储数据
高并发下的业务安全队列思路悲观锁思路,加锁乐观锁思路,带版本号更新
Redis的乐观锁实现Redis:开源的NoSQL存储(可做内存缓存)
附录Web系统搭建——单机到分布式集群前端缓存基础知识
您可能关注的文档
最近下载
- 二级建造师继续教育试题及答案(建筑工程).docx VIP
- 最新香港朗文4A各单元知识要点-词汇语法.docx VIP
- 中医药现代化进程中2025年约旦市场拓展案例分析报告.docx
- 2025年皮肤科医生岗位招聘面试备考题库及参考答案.docx VIP
- 《腹黑女佣》剧本整本.docx VIP
- 在线网课学习课堂《英文学术论文写作与发表技巧》单元测试考核答案.docx VIP
- 2025村支部书记年终总结(精选5篇).docx VIP
- JJF1069-法定计量检定机构考核规范.doc VIP
- 绿色设计塑料制品指标计算方法、生命周期评价方法.docx VIP
- 贾玲张小斐《上学那些事》(手稿)台词剧本完整版.doc VIP
原创力文档


文档评论(0)