关于高并发的一些思路及解决方案
电商的秒杀和抢购,对我们来说,都不是一个陌生的东西。然而,从技术的角度来说,这对于Web系统是一个巨大的考验。当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要。这次我们会关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因? 一、大规模并发带来的挑战 在过去的工作中,我曾经面对过5w每秒的高并发秒杀功能,在这个过程中,整个Web系统遇到了很多的问题和挑战。如果Web系统不做针对性的优化,会轻而易举地陷入到异常状态。我们...
LVS+Keepalived实现高可用集群
操作系统平台:CentOS5.2 软件:LVS+keepalived LVS+Keepalived 介绍 LVS LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。目前有三种IP负载均衡技术(VS/NAT、VS/TUN和VS/DR); 十种调度算法(rrr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq)。 Keepalvied Keepalived在这里主要用作RealServer的健康状态检查以及LoadBalance主机和BackUP主机之间failover的实现 IP配置信息: LVS-DR-Master ...
监控系统Opserver的配置调试
Stack Exchange开源其监控系统Opserver有一段时间了。之前在项目中用过他们的MiniProfile来分析页面执行效率和帮助新人了解项目,当他们开源了其监控系统的时候正好部门也在关注监控方面的东西,所以一直想用起来,但由于又忙于其他项目一直没时间体验一番。最近一个为期20天的攻坚战刚刚完成利用周末的时间看了下这个监控系统,这里为了他人快速上手所以写出来一个简单配置的过程。 下载Opserver项目 项目地址:https://github.com/opserver/Opserver/ 下载后使用vs2012或以上版本打开,会看到解决方案内有两个...
StackOverflow 的硬件
我更愿意把Stack Overflow看作是能够运行于大规模数据下,但本身并不算大规模的(running with scale but not at scale)。意思是我们的网站非常有效率,但至少目前为止,我们的规模还不够“大”。让我们通过一些数字来介绍Stack Overflow当前是一个怎样的规模吧。以下是一些核心的数字,来自于不久前在一整天(24小时)内的统计,准确说是2013年11月12日。这是一个典型的工作日,并且只统计了我们活动的数据中心,也就是我们自己的服务器。那些对CDN节点的请求和流量被排除在外,因为它们并不直接访问我们的网络。 ...
单点登录实现——基于OAuth2.0协议的接入方案
OAuth是目前广泛应用的开放接入标准,与OAuth1.0相比,OAuth2.0实现起来更加。OAuth的相关原理在互联网上有大量的资料可以查阅。以下是通过OAuth方式接入的说明: 第一步:应用接入申请 向中山市教育信息中心进行应用接入申请获得client_id和client_secret,这两个值是后续进行应用接口调用的关键内容 client_id: lejiaoyun client_secret: a1a0107555b948ada6348e39376ef52b 第二步:调用OAuth2.0的authorize接口 接口URL:http://202.96.186.112:8001/cas/oauth2.0/authorize 请求方式:GET/POST 调用参数: ...
让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求
让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求 今天下午17点左右,博客园博客站点出现这样的错误信息: Error Summary: HTTP Error 503.2 - Service Unavailable The serverRuntime@appConcurrentRequestLimit setting is being exceeded. Detailed Error Information: Module IIS Web Core Notification BeginRequest Handler StaticFile Error Code 0x00000000 由于之前使用的是默认配置,服务器最多只能处理5000个同时请求,今天下午由于某种情况造成同时请求超过5000,从而出现了上面的错误...
支持高并发的IIS Web服务器常用设置
适用的IIS版本:IIS 7.0, IIS 7.5, IIS 8.0 适用的Windows版本:Windows Server 2008, Windows Server 2008 R2, Windows Server 2012 1、应用程序池(Application Pool)的设置: General->Queue Length设置为65535(队列长度所支持的最大值) Process Model->Idle Time-out设置为0(不让应用程序池因为没有请求而回收) Recycling->Regular Time Interval设置为0(禁用应用程序池定期自动回收) 2、.Net Framework相关设置 a) 在machine.config中将 <processModel autoConfig="true" /> 改为...
Validation of viewstate MAC failed 解决办法 (一)
在网上搜寻了很久看了很多关于MAC验证视图状态失败的解决方法。大部分人都说是在页里或web.config里加EnableEventValidation="false" EnableViewStateMac="false" ViewStateEncryptionMode="Never" 这些属性的设置。但是这并不从根本上解决问题,相反这样做了反而更加不安全。 为了解决问题我继续收集资料,不经意的发现了一个网页里讲到一个Blog系统从NET1.1升级到NET2后,之前所生成的所有cookies将会失效,因为NET2和NET1使用的machineKey不一样。哈哈,真是恍然大悟啊! WEB应用中经常遇到采用集群或负载均衡...
解决:移动硬盘做PE启动盘
1.准备好移动硬盘,分一个小的分区出来,必须是第一个位置,必须是主分区,假设我们称为F盘(不是逻辑分区) 2.使用U盘制作工具(大白菜,U启动,U大师等),生成一个PE的ISO, 3.把ISO里面的内容完整的考到上面的F盘。。 4.用DiskGenius 选中移动 硬盘,选择菜单里面的硬盘-》重建主引导记录(MBR)。确定 5.使用NTBOOTautofix修复引导,选择 高级-》自定义分区引导符-》选择上面的F盘。修复完成即可了 6.重启进入BIOS,选择硬盘启动优先级,hard disk ...properties...,选择移动硬盘后,确认,F10保存重启 7.重...