展开

关键词

12306系统高并发探讨

如果架构不合理,单台性能再好也是无处着;而反之则情况未必,并且这种情况在互联网行业相当常见,诸如谷歌、Facebook等公司均是采用普通性能的来搭建集群,并通过系统架构和特定优化来发挥其最大性能 而目前的传统做法是用一大堆好机来做数据库集群和应用集群,把用J2EE架构做出来的功能部署在应用集群上,而把大部分都放在数据库上。 并且转换成相应的消息异步的传到12306互联网售票数据系统进行处理,这样转换给12306互联网售票数据系统的并发将会下降几个数量级。   同时,由于对12306网站的访问是部分地域的,可能不同的Web承受这不同的,这种情况下可通过DNS负载均衡将用户访问平均分配到各个Web上,因为Http的请求都是短时的,所以很简单的负载均衡就能完成这一动作 因此,我们需要一个任分配系统,其还能监控各个的负载情况。当然负载均衡的技术有很多,每种方法都有各自的优缺点,这个可能要根据实际情况进行选择。

3K40

刷屏了的为什么:为什么12306时不时要崩那么一下下?

另一边双十一几亿人同时购物疯狂败家剁手都没有问题,为什么12306一出手,就是炸穿裤衩的用户体验??让硬核的半佛老师来给你们科普一下。12306到底面临多大的业和挑战。 是没有技术实还是资源不够?都不是,是因为这种流量是突发性的,谁也不知道会突然出现这种爆炸增长,所以就挂掉了。这就和泼水节上大家都做好了心理准备,但是你泼开水一样。这谁遭得住啊。 所谓的抢票软件,原理就是不停地用机去读取12306的数据接口,机的速度绝对是比你单身30年的手速还要威猛几十倍,一秒刷几百次,1个人用抢票软件,可以造成几千个人一起刷产生的数据。 那么为什么不加呢?技术不够,硬件来凑。加面临的核心问题有3个。 第一个,加只是增加了储存能,并不能解决数据库的问题,这就和一个女人生孩子要10个月,不代表你找10个女人就能在1个月内生孩子。第二个,如何驱动这些

19021
  • 广告
    关闭

    90+款云产品免费体验

    提供包括云服务器,云数据库在内的90+款云计算产品。打造一站式的云产品试用服务,助力开发者和企业零门槛上云。

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    负载均衡续:万亿流量场景下的负载均衡实践

    正是由于这些专门针对数据包的高性能支持,才得以实现性能优良的负载均衡来支撑多年双11场景下的脉冲流量的。 但,在连接没有同步之前,遇到硬件或网络异常,会使该不可用,ECPM重选路由,会使连接到达其他,导致已有连接中断,造成用户访问异常。 由上图可以看到,第一次优化之前,几乎全链路都出现了性能瓶颈,因为并发查询导致查询系统负载过高,用户重试引发AS过载;AS阻塞导致响应增加,引发WEB负载问题,线上导致整个票系统异常,进而影响了线下购票渠道正常运转 那么微信的红包方案是怎么设计的垂直SET化,分而治之如果采用普通的拆分和部署方式,由于需要锁库存来防止超发,海量的锁竞争将对DB造成不可估量的。 及时是使用外部存储的分布式锁进行前置缓解,只是对的转移,而无法减少。

    17830

    12306终于开放合作了:对象是360

    正式启用至今的两年多时间里,12306网站本身功能结构并无太大变化,原定于今年9月发布的12306官方手机App也未如期到来。每逢长假或者春运等客流高峰期,铁道部网站均会承受巨大的,甚至会扛不住。 机会面前人人平等,要抓住机会关键靠“抓住机会的能和资源”,以及运气。不过,浏览插件暴抢票的方式,会增加网站负荷倒是无法回避的事实。 具备地图的公司才具备路劲规划算法。而随时随地弹出桌面提醒也只有客户端软件或浏览能做到。12306网站由铁科院负责研发,并且是网站形式,并不具备路劲规划和桌面提醒的能。 后者拥有地图、安全客户端和浏览12306此次是否与360独家合作,是否开放接口给所有的申请者,尚不明确。如果12306需要覆盖所有网民的话,应该不会关闭对其他浏览的大门。 功能均大同小异,竞争集中在细节体验、插件、运营推广和渠道等方面展开。若不出所料,今年各大浏览焦点或将由“抢票插件”转移到“购票插件”。这既可以方便用户,又可以吸引眼球。

    71380

    案例:高并发业系统上云设计

    2、反向代理放在本地,避免对后端。Nginx可以实现本地静态资源的存储。用户访问过来后,如果Nginx有用户需要的静态资源,直接返回,不再向内传递业流量。 3、负载均衡实现多台web的业均衡。根据不同的用户ip来源、web的真实,将请问分发到不同的web中。 弹性伸缩能根据web的cpu、内存、带宽等平均值、最大值灵活增加、减少web。 4、web的本地缓存再次减少后端负荷的。web可以实现本地静态资源的存储。 用户访问过来后,如果web有用户需要的静态资源,直接返回,不再向内传递业流量。 5、分布式缓存降低对数据库的。平常我们访问用户的数据,如积分都需要查询、并修改真实数据库的记录,造成。 大家都有在12306订过火车票,当你支付成功后,仍有提示订票失败的情况,12306将给你退费,这实际已经是一个应用场景。12306只同步扣了您的费用,但库存数据通过消息队列进行异步处理。

    48220

    Linux性能测试

    对于新采购的,需要进行有必要的性能测试。这里选择UnixBench工具进行性能测试。 (提前将UnixBench5.1.3.tgz下载到了的root目录下了)# cat bench.sh#! -01.html test-vm001-2017-09-16-01.logresults目录中的三个文件,第一个是和上面脚本运行的结果一样;第二个html文件是将结果以页面的形式展示出来,可以使用浏览打开查看 Scripts (1 concurrent) 1 2 3Shell Scripts (8 concurrent) 1 2 3Shell Scripts (16 concurrent) 1 2 3可以对多台性能进行如上测试

    2.9K70

    12306网站:分布式内存数据技术为查询提速75倍

    摘要:背景和需求  中国铁路客户中心网站(www.12306.cn)是世界规模最大的实时交易系统之一,媲美Amazon.com,节假日尤其是春节的访问高峰,网站巨大。 根据系统运行数据记录,技术改造之后,在只采用10几台X86实现了以前数十台小型机的余票计算和查询能,单次查询的最长时间从之前的15秒左右下降到0.2秒以下,缩短了75倍以上。 第二代,基于磁盘的分布式集群系统:计算过程中需要从磁盘读取数据,但通过分布系统将数据分散到不同的磁盘上,提高整个系统的处理能。 目前很多大型互联网和电子商公司采用基于X86的分布式集群系统,依靠海量的X86部署解决高流量并发的问题。   12306之前采用Unix小型机架构,采用GemFire技术改造成LinuxX86集群架构,就意味着一下跨越三代。

    98460

    大道至“简”——腾讯WeTest测简单模式上线!

    为此腾讯WeTest测试现在推出了简单模式。简单模式主要是针对web类提供源以及测试结果分析。WeTest简单模式主要有以下几个特点。 简单。 WeTest平台提供机,可以无上限从云端产生。 可视化。通过在部署监控进程可以生成多种性能报表,指标一目了然,方便分析和诊断问题。 业场景模拟。 这是上各个cpu的使用率情况。 ? 我们的EasyServer进程的内存使用率情况,这里因为上部署了两个EasyServer,所以会显示两个。 ? 这是的磁盘IO情况图表。 ? 这是的网卡读写情况图标。 ? 以上是对GET请求的测流程,对于POST请求还可以自定义body。 腾讯WeTest提供:兼容适配测试;云端真机调试;安全测试;耗电量测试;测试;舆情监控等 ? ↙点击下方“阅读原文”查看更多

    26820

    游戏测试总结

    游戏测试总结 从游戏内测开始到现在做了所有相关的测试.现在进行总结.暂时还不方便说游戏架构,所以不上图了。 一.首先明确需要测试的内容:1.游戏硬件a.硬盘Iob.内存c.CPU2.网络a.长连接a1.最大连接数a2.流量(内网、外网、进、出)b.长连接短周期(类似Http的TCP应用,这个比较特殊的一个需求 我们选择的是:战斗、移动、聊天 c.聊天性能测试广播聊天是最为考验游戏信息发送能的功能。通过进行全局广播的测试。我们可以获取进程发送信息到客户端的最高承载量。 而客户端的网卡或者客户端与之间的中转带宽过小,导致数据发送不出,内存不断增加。表现为发送能不足,其实是中间带宽问题。 c.debug io导致性能下降c1.进行性能测试,一定要取消debug用的同步的io.比如我们的debuginternalLog.同步io是非常影响性能的,特别在测试下可能导致每秒上千上万甚至几十万次的执行

    1.9K30

    Web测试工具Siege

    Siege是一款HTTP测试和基准测试的实用工具,可用于在条件下对Web的性能进行测量。它的评估依据包括传输数据量、的响应时间、事处理速率、吞吐量、并发性和程序正常返回的时间。 Siege提供三种操作模式:回归测试,网络模拟测试和暴测试。此指南针对Debian与Ubuntu系统。 请必通过删除井号(#)来取消下面注释中的变量以及您想使用的其他设置:... # # 变量声明。你可以在此处设置 # 下方指令中所使用的变量。 FILE: varlogsiege.log您可以取消这种烦人的信息通过编辑主目录下的.siegerc文件,将修饰符`show-logfile`置为false如果没有失败的连接且可用性保持在100%,则通过测试 大多数Web只有不到百个用户会同时尝试访问其网站,因此通常不需要将其设置为超过一百个。-t :设置Siege运行的时间限制。Siege识别相关单位修饰符,s代表秒,m代表分钟,h代表小时。

    88730

    & :开篇,与资源

    在这类活动中,除了业本身的复杂性,作为开发最为关心的就是如何实现。而有过相关经历,或曾经深入研究过这类场景的各位应该都清楚,与资源,可能是面临的最大问题。 3.2    整个流程虽长,但各方拆解之后责任链依然清晰,所以在制定方案细节时,只需要考虑内部的实现,对外提供的能、性能指标。 接下来,最大的问题就是如何保障在巨大的峰值下,保证的稳定性,和达到预期的性能指标?    要求:10万qps下,接口整体响应耗时不超过100ms。 根据内部的经验,部署采用实例机(虚拟机),普通实例节点,按照单实例可承受qps 5k计算,那么也需要200个实例(虚拟机)。 考虑到除了应用,还有db(分库分表)、缓存(redis)、负载均衡、中心等其他相关设施的设备要求,而数据库和缓存往往需要物理机部署,总的资源需求必然会是一个很大的数字。

    9930

    & :开篇,与资源

    在这类活动中,除了业本身的复杂性,作为开发最为关心的就是如何实现。而有过相关经历,或曾经深入研究过这类场景的各位应该都清楚,与资源,可能是面临的最大问题。 3.2 整个流程虽长,但各方拆解之后责任链依然清晰,所以在制定方案细节时,只需要考虑内部的实现,对外提供的能、性能指标。 接下来,最大的问题就是如何保障在巨大的峰值下,保证的稳定性,和达到预期的性能指标? 要求:10万qps下,接口整体响应耗时不超过100ms。 根据内部的经验,部署采用实例机(虚拟机),普通实例节点,按照单实例可承受qps 5k计算,那么也需要200个实例(虚拟机)。 考虑到除了应用,还有db(分库分表)、缓存(redis)、负载均衡、中心等其他相关设施的设备要求,而数据库和缓存往往需要物理机部署,总的资源需求必然会是一个很大的数字。

    9410

    +从零实现一款12306刷票软件1.2

    请求。 这个库是一个强大的http相关的库,例如12306返回的数据可能是分块的(chunked),这个库也能帮我们组装好;再例如,返回的数据是使用gzip格式缩的,curl也会帮我们自动解好。 那样不就给了非法攻击的人不断重试的机会了嘛。 但是在购票以及查询常用联系人这些需要在已经登录的情况下才能进行的操作,我们必须带上这个数据,这是给你的token(验证令牌),而这个令牌是在刚进入12306站点时,发过来的,你后面的登录等操作必须带上这个 token,否则会认为您的请求是非法请求。

    51220

    从嗤之以鼻到“奇迹” 前淘宝工程师详解12306技术

    再解释一下,为什么秒杀大,以及为什么12306的动态库存很复杂。先说秒杀。2013年12月25日前后,天猫搞了一个圣诞季积分兑换活动,持续几天。 淘宝拥有各种自主研发团队:、交换机(网上可以搜索到淘宝公开的绿色开放标准);操作系统(Linux Kernel taobao版,yunos手机操作系统是阿里云的,暂时不计入)、Web( 能不能把这15000个拆分成5000个商品并分配到5000台上呢?那样不就可以5000台同时处理了吗? 架空政策(包括定价政策、警方打击黄牛政策、身份验证政策)谈技术,是不可能解决春运抢票困局的,要想让春运的时候每个人在12306抢票都毫无拥挤感(但不一定能抢到票,铁路运摆在那),那就是逼着12306买一大堆对付春运 目前的12306技术上是还有问题,比如,抢票高峰,输入个身份证号和图片验证码都卡得要死(本人亲测),端繁忙,你浏览端卡什么呀。但人家在进步。

    1.9K20

    WEB测试

    WEB测试在学习ab工具之前,我们需了解几个关于测试的概念吞吐率(Requests per second) 概念:并发处理能的量化描述,单位是reqss,指的是某个并发用户数下单位时间内处理的请求数 其他网站解释: ab是apache自带的测试工具。ab非常实用,它不仅可以对apache进行网站访问测试,也可以对或其它类型的进行测试。 这段展示的是web的信息,可以看到采用的是nginx,域名是www.psvmc.cn,端口是80信息这段是关于请求的文档的相关信息,所在位置“”,文档的大小为194 bytes(此为http 100Khttp_load以并行复用的方式运行,用以测试web的吞吐量与负载。 当然仅有这两个指标并不能完成对性能的分析,我们还需要对的cpu、men进行分析,才能得出结论Siege一款开源的测试工具,可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间

    23830

    DNS(五):使用queryperf对DNS测试

    一、querperf简介    当我们把DNS配置好后,我们肯定会想测试一下DNS的性能如何,上线后如果请求数够多还能否响应? 于是,我们可以使用软件模拟环境,对DNS作评估性的测试。在bind中,有一款自带的测试软件,queryperf。 三、使用queryperf测试DNS    在测试之前,我们先把DNS架设好。我们以域名wubinary.com为例,架设DNS,dns.wubinary.com。 2、测试DNS能否正常使用。重新启动:?测试域名blog.wubinary.com?DNS工作正常,接下来可以使用queryperf作测试了。 2、测试时先预估平台会遇到的最大请求数,用这个请求数作测试,量而为,因为如果遇到大流量的DDOS,单一机性能再好,也扛不住。3、使用queryperf作性能测试时,最好测试多次,取平均值。

    1.9K30

    +从零实现一款12306刷票软件1.1

    郑重申明一下:这里介绍的技术仅供用于学习,不可用于恶意攻击12306,请勿滥用本文介绍的技术。对12306造成的任何损失,后果自负。 当然,由于12306用户量巨大,为了防止黄牛和其他一些非法攻击者,12306的很多url和在购票过程中各个步骤的协议细节经常发生变化。 但是这并没有关系,只要你掌握了本文中介绍的分析方法,您就可以灵活地修改您的代码,以适应最新的12306的要求。 如果您是一位细心的人,您肯定会想到,我们查票的时候再进入查票页面,这些站点信息就已经有了,那么可能是在这个查票页面加载时,从请求的站点信息,所以我们刷新下查票页面,发现果然是这样:? station_name.js,而是每次都从重新加载下这个文件,这样的话如果站点信息有更新,也可以避免因为缓存问题,导致本地的缓存与上的站点信息不一致。

    70420

    身为码农,为12306说两句公道话

    再解释一下,为什么秒杀大,以及为什么12306的动态库存很复杂。先说秒杀2013年12月25日前后,天猫搞了一个圣诞季积分兑换活动,持续几天。 淘宝拥有各种自主研发团队:、交换机(网上可以搜索到淘宝公开的绿色开放标准);操作系统(Linux Kernel taobao版,yunos手机操作系统是阿里云的,暂时不计入)、Web( amazon当年就是为了应对黑色星期五的大促销购置了大量的,平时订单量没那么大了,amazon就把富余的拿来搞云计算了。 能不能把这15000个拆分成5000个商品并分配到5000台上呢?那样不就可以5000台同时处理了吗? 买一大堆对付春运,春运过去后,成为跟amazon一样牛逼的云计算商。

    96990

    测试工具:wrk 和 jmeter

    两个都很简单,只要=安装,启动起来了,就好操作。 难点是参数的配置,以及其他更多功能,能满足简单的要求,如果需要复杂功能,还需要自己手动定义。 wrk的安装...

    64430

    Web性能测试工具

    http_load 程序非常小,解后也不到100Khttp_load以并行复用的方式运行,用以测试web的吞吐量与负载。 但是它不同于大多数测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死。还可以测试HTTPS类的网站请求。 无论是否需要(即, 是否发送了401认证需求代码),此字符串都会被发送。 -T POST数据所使用的Content-type头信息。 -A 对提供BASIC认证信任。用户名和密码由一个:隔开,并以base64编码形式发送。无论是否需要(即,是否发送了401认证需求代码),此字符串都会被发送。 -h 显示使用方法。 结果如下: 吞吐率(Requests per second) 并发处理能的量化描述,单位是reqss,指的是在某个并发用户数下单位时间内处理的请求数。

    15530

    相关产品

    • 云服务器

      云服务器

      腾讯云服务器(CVM)为您提供安全可靠的弹性云计算服务。只需几分钟,您就可以在云端获取和启用云服务器,并实时扩展或缩减云计算资源。云服务器 支持按实际使用的资源计费,可以为您节约计算成本。

    相关资讯

    热门标签

    扫码关注云+社区

    领取腾讯云代金券