.net 网站应对压力的一些方案总结
开年比较空,抽时间写个博文,总结下自己工作里的一些应对网站访问压力的技术方案。
自己项目现在大概一天50W的pv。已从前端到后端的顺序总结下自己用的一些方案。
一. 前端页面:
1.首先减少资源的大小,能用小图,就用小图。引用第三方js用mini 压缩版的js。
2.用CDN减少服务器访问的压力,将图片,css,js文件放到CDN上。用户从cdn缓存获取资源的速度远快与访问服务器获取的速度。(还有网络关系,cdn网络快)
3.耗时长的js可以异步请求后加载。
二.服务器负载均衡:
负载均衡解决方案有很多,不差钱有不差钱的,屌丝有屌丝的方案。我用的是nginx负载均衡。
准备一台专用的nginx负载均衡服务器,用它来负载均衡,转发给5台业务服务器。(开发需要单台调试时,用hosts指向单台)
三.服务器缓存
因为是分布式架构,服务器缓存主要用了memcached和redis(各配置2台,一台主服务,一台备用)。memcached和redis都有各自的.net版本,用起来也不复杂。
具体选择看业务需求,我基本上70%用memcached,需要长时间缓存的用redis。
memcached对于中文支持不好,要存中文数据,先将中文base64编码在存入,读取时候做base64解码。
四.数据库
我主要使用sqlserver,少量项目用mysql。50W访问量单台sqlserver服务器完全可以支持的住。尽量减少事务,业务需要用消息队列后补处理。
大任务网站不处理,用其他程序处理(响应要求高的修改操作,先修改redis缓存,然后由异步程序操作数据库。)
操作时候记录日志,数据库崩溃或网站崩溃可以读日志文件回补数据操作。(一般服务器挂了不会很久,超过一天不能恢复日子基本没法活了。。真这样在看具体情况找解决方案)
.net 网站应对压力的一些方案总结的更多相关文章
- 网站性能压力测试工具--apache ab使用详解
ab是apache自带的压力测试工具.ab非常实用,它不仅可以对apache服务器进行网站访问压力测试,也可以对其它类型的服务器进行压力测试.比如nginx.tomcat.IIS等. 下面我们开始介绍 ...
- apacheBench对网站进行压力测试
apacheBench对网站进行压力测试 分类: 学习 2014-02-19 10:35 4154人阅读 评论(1) 收藏 举报 apacheBench压力测试 Apache Benchmark下载 ...
- 使用webbench工具测试网站访问压力
介绍 Webbench是一个在Linux下使用的网站压测工具.它使用fork()模拟多个客户端 同时访问我们设定的URL,测试网站在压力下工作的性能, 最多可以模拟3万个并发连接去测试网站的负载能力. ...
- 网站服务器压力Web性能测试(1):Apache Bench:Apache自带服务器压力测试工具
一个网站或者博客到底能够承受多大的用户访问量经常是我们在用VPS或者独立服务器搭建网站了最关心的问题,还有不少人喜欢对LNMP或者LAMP进行一些优化以便提高Web性能,而优化后到底有多大的效果,就需 ...
- php面试题二--解决网站大流量高并发方案(从url到硬盘来解决高并发方案总结)
php面试题二--解决网站大流量高并发方案(从url到硬盘来解决高并发方案总结) 一.总结 从外到内解决网站大流量高并发问题---从提交一个url开始(从用户按下搜索栏回车键开始) url最开始会到d ...
- 网站sql注入漏洞修复方案之metinfo 6.1.0系列
近日,我们SINE安全对metinfo进行网站安全检测发现,metinfo米拓建站系统存在高危的sql注入漏洞,攻击者可以利用该漏洞对网站的代码进行sql注入攻击,伪造恶意的sql非法语句,对网站的数 ...
- 网站服务器压力Web性能测试(4):服务器压力Web性能测试小结
1.Apache Bench,Webbench,http_load对网站压力Web性能进行测试时,为了得到更加客观和准确的数值,应该从远程访问.局域网访问和本地等多个方面进行全方位的测试.一般用127 ...
- 网站服务器压力Web性能测试(2):Webbench:最多模拟3万个并发连接数测试压力
1.Webbench最多可以模拟3万个并发连接数来测试服务器压力,可以设置压力测试时间和测试请求的成功率.安装Webbench命令: wget https://home.tiscali.cz/~cz2 ...
- jmeter模拟对网站做压力测试
一般的网站,在进入业务功能前先需登录,然后才能访问业务功能.基本框架如下 详细步骤: 1 .用badboy录制登录,访问随意一个网址. 2.用jmeter打开,一会自己写的时候可以参考里面的参数名称或 ...
随机推荐
- Android新手入门
本博客出自公众号安卓应用频道:http://mp.weixin.qq.com/s?__biz=MzA3MDMyMjkzNg==&mid=2652261947&idx=1&sn= ...
- matlab中gatbx工具箱的添加
1. 从http://crystalgate.shef.ac.uk/code/下载工具箱压缩包gatbx.zip 2. 解压gatbx.zip,将其子文件夹genetic放在matlab安装目录too ...
- android Makefile把jar包打到apk里
这个是经常的需求,我就是经常忘,关键不理解啊. 反反复复的也看看了android makefile. 太复杂了. 慢慢来吧.哎.工作十年.啥也不会.咋整? ## Copyright (C) 2008 ...
- MySQL协议分析2
MySQL协议分析 议程 协议头 协议类型 网络协议相关函数 NET缓冲 VIO缓冲 MySQL API 协议头 ● 数据变成在网络里传输的数据,需要额外的在头部添加4 个字节的包头. . packe ...
- 直流电机驱动PWM频率(转)
源:直流电机驱动PWM频率 1.没有统一的标准,其实PWM的频率和你的电机感抗和你需要的速度响应时间有很大的关系.一般的电机用14K就足够了.当然自需要简单的调速可以随便选. 如果电机转速比较高,感抗 ...
- 详解Objective-C的meta-class 分类: ios相关 ios技术 2015-03-07 15:41 51人阅读 评论(0) 收藏
比较简单的一篇英文,重点是讲解meta-class.翻译下,加深理解. 原文标题:What is a meta-class in Objective-C? 原文地址:http://www.cocoaw ...
- 通过非root用户访问VNC
我采用的是realvnc5.3.2.对于非root用户通过vnc访问linux桌面,网络上绝大数文章都是说要去配置/etc/sysconfig/vncservers.但安装完realvnc5.3.2之 ...
- C语言-if语句
1.一般形式 if(表达式)表达式1 else 表达式2 :表达式成立(为真)则执行表达式1,否则执行表达式2. 适用范围:真假,对错,开关,对立面的条件 注意:如果if语句中只包括一条语句,可以 ...
- thinkPHP的学习
1.版本,以3.1为主,因为手册是基于这个的,最新的版本,还没有对应的手册 2.发现一个问题,echo 中文时,出现乱码,而调用模版则正常. 3.写url的注意大小写.index和Index是不同的 ...
- js排序算法汇总
JS家的排序算法 十大经典算法排序总结对比 一张图概括: 主流排序算法概览 名词解释: n: 数据规模k:“桶”的个数In-place: 占用常数内存,不占用额外内存Out-place: 占用额外 ...