
1 Reign 2016-08-09 12:17:44 +08:00 晒网址,大家才好从前端方面入手给你优化 |
3 notgod 2016-08-09 12:20:36 +08:00 via iPhone 这样问没用 连你什么站都不知道 静态多还是动态多 读多写多 什么业务逻辑 可接受的预算方案 什么都靠别人猜吗 ........ |
4 sujin190 2016-08-09 12:20:46 +08:00 秒杀?每秒五十万,每天数百亿?这么牛逼恐怕不是简简单单优化就能搞的定的吧 |
6 zeroJason OP 貌似删不了了= = |
7 pi1ot 2016-08-09 12:22:15 +08:00 五十万什么?输出五十万次 hello world 的话不需要任何优化 |
8 just4test 2016-08-09 12:22:30 +08:00 如果是秒杀,有一大堆的方法让 50w 请求打到后端上只剩 50 。 如果是长时间高峰 50w ,那你们得多有钱,何必跑 v2 问。 |
9 microchang 2016-08-09 12:22:45 +08:00 via Android @zeroJason v 站发帖没法删除,谨慎哟~ |
10 zeroJason OP |
11 wy315700 2016-08-09 12:28:02 +08:00 我猜是个面试题 |
13 slixurd 2016-08-09 12:29:38 +08:00 显然一看就是新手吧 QPS 和并发本来就是不一样的概念 一秒钟 50w 并发我都不知道是个啥 50w 并发,这个系统怎么也得有个 500wQPS 吧 |
14 jy01264313 2016-08-09 12:30:45 +08:00 百度搜索页面 QPS 大概是 30w |
15 won 2016-08-09 12:34:13 +08:00 via Android 最简单的联系,把防火墙都摘掉 |
16 em70 2016-08-09 12:34:42 +08:00 世界上有这么大流量的网站? |
17 wander2008 2016-08-09 12:35:49 +08:00 via iPhone 至少要花 300w 招人吧。这么大的并发。不知道, pokeman 有没有!! |
18 zeroJason OP 懵逼了。原来这么深奥 |
19 changshu 2016-08-09 12:40:41 +08:00 twitter 上市那年大概是十几万每秒吧..... |
20 wander2008 2016-08-09 12:42:58 +08:00 via iPhone 地球上有哪个应用网站招这么大并发,求围观。 |
21 zeroJason OP 刚那人给我发了一下详细的需求,看了一眼,,,又懵逼了。。 大致是这样的 1 ,公司网站是一个 秒访问量在 50W 你觉得我在吹牛 其实没有。情况属实。 公司困境 公司有 50W 个客户 (可以理解成一台电脑)每个电脑需要在 5 秒内 访问一次公司网站,公司页面不需要用户操作,任务由客户 Duan 每时每客在读 公司的一个页面 ,这个页面会获取数据库内容返回给客户 Duan 。 虽然在每 5 秒访问一个,可是如果 50W 个用户有几率在同时一秒访问 可能在 10W 左右 那么服务器数据库就瘫痪 2 ,程序员可部署 站群服务器 客户 Duan 这个难题,如果当您看到 请你帮帮我,公司每天都在亏钱, 3.本公司 为正规注册广告公司,业务不仔细详说,以上信息真实,不是吹牛没必要, 精易网站有几个帮过没能解决 在此表示感谢。 补充内容 (2016-8-9 10:42): 本人前期实验 1 号服务器装 网站 2 号服务器装数据库 1-2 号服务器内网 PHP 内容的连接数据库 读取数据库 写入数据库 PHP 没有任何处理 补充内容 (2016-8-9 10:43): 硬件 32G 8H 200M 2 号服务器在 2000 时基本 CPU 百分百 死掉的 |
22 zeroJason OP 求大神,不要补刀。。求解释,楼主对此一片空白 |
23 tomczhen 2016-08-09 12:59:47 +08:00 苦逼半路出家野生运维一名,之前后端开发问我“大访问量网站”架构的问题,我问他“访问量多大”,他说“大概每秒上百万吧”。 然后我心里默念了一句 MDZZ 括弧逃 |
24 9hills 2016-08-09 12:59:53 +08:00 如果是动态请求, Google Search 的 QPS 比这多些,但是并发比不上, QPS 除以 10 差不多是并发。 也就是说,你的网站相当于好几个 Google Search 。。上面说几百万招人的,呵呵哒 |
25 zeroJason OP (⊙o⊙)… |
27 tomczhen 2016-08-09 13:07:35 +08:00 看业务描述估计是统计类的业务,不过也可能是做成“开关”业务的控制。 一般来说都是上 kvdb ,后端用 openresty 实现这种访问量大、响应要求高的简单业务。当然,各种负载均衡、分布肯定是要做的。 |
28 zeroJason OP @tboy 话说这个老板好像真的很着急的样子,问我个菜鸟也是走投无路了吧,应该是不知道怎么办了,如果真的有大神知道解决办法的话,还请帮忙。真的。求大神指点 |
29 aabbccli 2016-08-09 13:08:46 +08:00 估计是广告联盟公司的实时报价系统(RTB) |
30 strwei 2016-08-09 13:09:04 +08:00 坐等 Alibaba 攻城狮解答 |
31 denghongcai 2016-08-09 13:10:03 +08:00 不如直接把原始需求来源发出来,有合理报酬自然有人帮忙 |
32 vus520 2016-08-09 13:10:37 +08:00 某司 2000 QPS 的业务,目前市值 80 亿 |
33 zeroJason OP 我刚发的那一堆是需求,那个老板的预算是 3w-5w,如果能有人解决的话,可以留言,我发联系方式过去 |
34 tomczhen 2016-08-09 13:11:02 +08:00 @zeroJason 问题是即便你在这里问到了方案,但是具体实施起来还是要看人的。就像现在随便一个物理学博士知识都能造原子弹一样真正能造出来还是要看很多条件的。 |
35 zeroJason OP @tomczhen 恩恩,有大神的可以解决的话,可以留下方式,我发过去联系方式,那个人的预算是 3w-5w 。也不太懂,就能帮他那么多了 |
36 nilai 2016-08-09 13:16:12 +08:00 估计应该是金融类的产品吧。 |
38 9hills 2016-08-09 13:18:46 +08:00 哪怕是只返回静态的 hello world 。 50w 并发(注意是并发不是 QPS )也不是一般人能做出来的 |
39 bk201 2016-08-09 13:24:20 +08:00 这个不如花钱请阿里的顾问去你们那儿实际看看。 |
40 cevincheung 2016-08-09 13:30:19 +08:00 从最基础的解决方案来呗。 |
41 cevincheung 2016-08-09 13:30:59 +08:00 po 主不妨留个邮箱,谁有方案可以跟你提。重赏之下必有勇夫。 |
42 sujin190 2016-08-09 13:32:19 +08:00 @zeroJason 看需求像是实时统计展示之类的,如果是这样的话 50w 个长连接推送更靠谱吧, 5 秒发 50 万推送还是很简单的,每秒处理 50 万请求就有点太不靠谱了,而且可以数据不变更不推送,这样推送次数明显变少了吧,再者如果数据是类线性变化的话,还可以客户端计时自己加,然后服务端没过一段时间推送正确值修正就可以了,这样推送量有变低了 |
43 grayon 2016-08-09 13:33:13 +08:00 前段加随机延时错峰,后端数据库用内存数据库,硬盘 IO 耗时高 用 C 写服务端 socket 处理 http 请求 |
44 soli 2016-08-09 13:34:32 +08:00 做成可横向扩展的,然后上 50 台机器抗。 任何偏工程性的技术问题都是钱的问题。 |
45 lecher 2016-08-09 13:36:42 +08:00 这种如果 50w 客户端的请求内容没有用户状态,不同用户请求同样参数的返回值一致,数据只有添加没有失效,客户端不提交更新数据,缓存可破。就走 cdn 的分发流程,直接多布几台机器分担负载。 |
46 zhchyu999 2016-08-09 13:40:56 +08:00 如果是拉取更新的数据,可以用推的方式,如果没有更新就不推,这样服务器负载就下来了 |
47 realpg PRO 前些天做过一次类似的项目,不过我只出运维和生产环境架构设计 不过三五万预算,买个思路差不多,买全套实现有点太扯了 |
48 wander2008 2016-08-09 13:41:43 +08:00 via iPhone @9hills 几百万招一个人…不是一群人。 |
49 wander2008 2016-08-09 13:44:38 +08:00 via iPhone 不知道 12306 有没有这样大的并发。在春节期间 |
50 wander2008 2016-08-09 13:45:17 +08:00 via iPhone gfw 也可能有这么大的并发要求? |
51 ranran 2016-08-09 13:47:04 +08:00 奇怪,你说只是帮别人提问,需求都转过来了,联系方式反而不转过来,几个意思?既然如此,我来转过来吧。联系方式没抹掉就在其中。 《并发处理-钱能解决不叫事_精易论坛》 http://bbs.125.la/thread-13925175-1-1.html 以下全部为原文内容: 1 ,公司网站是一个 秒访问量在 50W 你觉得我在吹牛 其实没有。情况属实。 公司困境 公司有 50W 个客户 (可以理解成一台电脑)每个电脑需要在 5 秒内 访问一次公司网站,公司页面不需要用户操作,任务由客户 Duan 每时每客在读 公司的一个页面 ,这个页面会获取数据库内容返回给客户 Duan 。 虽然在每 5 秒访问一个,可是如果 50W 个用户有几率在同时一秒访问 可能在 10W 左右 那么服务器数据库就瘫痪 2 ,程序员可部署 站群服务器 客户 Duan 这个难题,如果当您看到 请你帮帮我,公司每天都在亏钱, 3.本公司 为正规注册广告公司,业务不仔细详说,以上信息真实,不是吹牛没必要, 联系电话 18778338069 QQ : 67205899 1244067411 精易网站有几个帮过没能解决 在此表示感谢。 补充内容 (2016-8-9 10:42): 本人前期实验 1 号服务器装 网站 2 号服务器装数据库 1-2 号服务器内网 PHP 内容的连接数据库 读取数据库 写入数据库 PHP 没有任何处理 补充内容 (2016-8-9 10:43): 硬件 32G 8H 200M 2 号服务器在 2000 时基本 CPU 百分百 死掉的 |
52 SlipStupig 2016-08-09 13:56:10 +08:00 先去买一条专线,最少需要 50G 带宽,其它再说 |
53 ericls 2016-08-09 14:08:03 +08:00 via iPhone 我有办法实现 |
54 bigapple111 2016-08-09 14:16:37 +08:00 @sujin190 赞同, 1.从减少每次请求创建连接的资源消耗开始着手 2.优化任务处理模型,尽量不要占用 IO 的资源 3.系统内部分布式处理,网络接入层只负责保持用户连接,具体业务丢该下层服务处理 4.不死才有战斗力 |
55 bigpigeon 2016-08-09 14:20:20 +08:00 DNS 负载均衡->nginx 的 upstream->数据库读写分离->数据库集群->业务逻辑分离 可以按这个思路优化 |
56 goodryb 2016-08-09 14:31:46 +08:00 硬件方面,首先带宽得够,然后负载均衡得有,业务服务器部署多台,数据库前面加缓存,然后是 CDN 缓存大法 软件方面可以看看 54 楼的建议 参考原帖里面的建议,找个云服务商来解决这个问题。 |
58 TangMonk 2016-08-09 14:37:46 +08:00 openresty 即可 |
59 zeroJason OP 发的太勤了。。被暂停回复了。。那人的企鹅 12440+67411 , 那个人的联系方式,应该是不懂部署负载均衡什么的,问题也应该没有我发的那么严重,原谅小菜鸟不是很懂这块乱提问。有大神愿意解决这个问题,可以去联系联系他,看着那人应该是非常着急了,只能帮到这了。 @ranran 没发联系方式,是觉得不礼貌,之后征求同意了想发,结果不能发了,感谢您帮忙发出来。 非常感谢各位大神的帮助。有愿意帮助他的,请联系他的 qq 。 |
60 weisdong 2016-08-09 14:42:23 +08:00 看到以上各位说的,我想起来一个段子:一滴水重的物体从 5000 米高空落下会对人造成什么伤害? 其实可以换个角度考虑下,这个老板的预算就 3-5 万,各位觉得会真有那么大并发? 我严重怀疑老板把并发的意思理解错了,真就应了那句话:认真你就输了。 |
61 just13 2016-08-09 14:50:14 +08:00 via iPhone 有推云主机的也是醉了, 任何云主机的 load balanace 方案能帮摆平 5 千到 2 万并发已经得看业务复杂程度了, twitter 、 instagram 做大了一样得从 AWS 撤, 50w 并发的静态输出都能跑死几个机柜的网卡了 |
62 jasontse 2016-08-09 14:55:12 +08:00 via iPad 你做的是高频交易吗 |
63 firefox12 2016-08-09 14:57:59 +08:00 你想想已经有 50 万在线客户的业务,怎么可能突然重新起炉灶 然后一台主机搞定? 参照一下 现有的服务器数目 负载 流量, 大概的情况就知道了。 这种标题真是浪费大家的时间。 |
64 keller 2016-08-09 15:04:17 +08:00 1.降低每秒并发请求,将客户端数据缓存延时提交 2.如果服务端要下发命令或者要更新客户端数据 可以用 socket 长链接下发命令。 3.静态资源全部扔到 cdn 。 |
65 subpo 2016-08-09 15:12:32 +08:00 几百万够招人?几亿差不多吧... |
66 j4fun 2016-08-09 15:34:44 +08:00 看了下回复的需求, 50W 客户 5 秒访问一次。。。算下来 CPS 也就 10W 吧,而且也没说要马上回应,可以做一下流控,比如平均 0.5s 回复一个,那么 CPS 也就差不多 5W 了。 QPS 也就 2 、 3 十万。这并不难= = |
67 msg7086 2016-08-09 15:40:33 +08:00 via Android 预算先加两个零我们再讨论实现? |
68 ret2where 2016-08-09 16:00:50 +08:00 mariotcp mariotcp 长连接 |
69 hoythan 2016-08-09 16:01:09 +08:00 @pi1ot 我表示输出 50 万次 hello world 真的需要优化...比如滚屏加载 超过删除 占位等等...不然用户吃不消 |
70 ovear 2016-08-09 16:02:09 +08:00 :doge: 好奇,尝试联系了下。。 然后就是 公司副总 - 3 把手 - 直接切入正题 - 多少 RMB 解决 |
72 erevus 2016-08-09 16:04:58 +08:00 如果用户只是去读取的话那简单,后端每隔 5 秒生成一个 html 发到 cdn 上。 |
73 shiny PRO 看业务类型啊!! |
74 wy315700 2016-08-09 16:23:13 +08:00 假设是 50 万 QPS ,一条请求 1KB(因为是网页, 1KB 肯定有吧) 那一秒就是 500MB 也就是 4Gbps ,先不管网卡 然后按照当前云服务的价格,按照 100/Mbps/月算, 4Gbps 一个月的价格差不多是 40 万 |
75 50vip 2016-08-09 16:25:29 +08:00 可以去导流去做 ddos ,赚钱老多了~ |
76 lovedboy 2016-08-09 16:26:17 +08:00 我就简单算一下流量哈: 50 万并发,算每个请求响应是 100ms 吧, 1s 就是响应 500W 次。 假如 1 次请求数据大小的 1KB 吧,这个对于网页来说很小很小了吧...也就是 500WKB ,也就是 5 个 G 。 换算成带宽也就 50 个 Gb 吧。 |
77 lesliefree 2016-08-09 16:27:15 +08:00 感觉无解,老板觉得花钱就行了,没钱买机器, fenng 说过技术问题长期被低估短期被高估 |
78 lesliefree 2016-08-09 16:34:31 +08:00 @ovear 搜了世界真奇妙 |
79 Quaintjade 2016-08-09 16:37:12 +08:00 @ovear 搜 QQ 号结果果然很亮…… |
80 易语言和外 G ,这个牛 |
81 Penton 2016-08-09 17:17:54 +08:00 家美装饰有限公司 ???????? |
82 Penton 2016-08-09 17:19:24 +08:00 |
83 glogo 2016-08-09 17:23:38 +08:00 QPS 50w 的站,有点厉害 |
84 walkman660 2016-08-09 17:24:39 +08:00 3w-5w 的预算解决这样的 50W 并发。。。 搭车同求 |
86 sopato 2016-08-09 17:52:32 +08:00 搜了 QQ 什么的,好犀利哈哈。 |
87 mymike 2016-08-09 17:54:19 +08:00 需求有点扯,然而 push 最容易搞定了 |
88 icegreen 2016-08-09 18:40:57 +08:00 和我之前项目挺像, 浏览器五秒刷新一次股票行情; |
89 jhaohai 2016-08-09 18:47:41 +08:00 学学小米,直接在前端解决并发问题, 99%直接返回 loading 的动图, 1%做真正的处理 |
90 imyip 2016-08-09 19:55:03 +08:00 via Android 亲身经历 活动站需求方预计 10 万并发 最后当日访问量不足 1 万 |
92 alexapollo 2016-08-09 20:14:45 +08:00 典型不动架构就设计啊。。 |
93 ipconfiger 2016-08-09 20:25:59 +08:00 我就是想知道楼举是真有这么大流量的需求还是就是纯粹来消遣大家的 |
95 qhxin 2016-08-09 20:39:27 +08:00 “一秒钟五十万的并发” 你们那儿并发是按秒算的? |
96 flynaj 2016-08-09 21:40:38 +08:00 分流一下就好了,先买 100 台服务器。分散过去就行。 |
97 zhx1991 2016-08-09 22:09:19 +08:00 至少有个场景吧 访问数据库还是缓存 本地还是远程调用 啥也没有... 另外讲一句 500K 的 qps 是很大的 |
98 ovear 2016-08-09 22:35:53 +08:00 @lesliefree @Quaintjade 现在 qq 签名已经变成了 本人公司副总 - 公司 3 把手 - 不懂技术 - 提供站群服务器 - 解决 50W 并发,你没有看到错. 看来已经"解决"了 →_→ |
99 manhere 2016-08-09 22:40:45 +08:00 |
100 manhere 2016-08-09 22:44:50 +08:00 原来 19 楼是采集贴,原帖天涯,有照片。 |