前面由负载均衡器转发,哪一种方案更好呢
1
fyibmsd 2019-01-15 23:18:49 +08:00 via iPhone
前者,网络 io 占优
|
2
lhx2008 2019-01-15 23:21:10 +08:00
2 台 8 核,避免与数据库 /缓存资源争抢
|
3
westoy 2019-01-15 23:21:23 +08:00
网络 IO 也不一定占优, 万一母鸡就一个 G 口生了几十个 2 核的小鸡怎么办......
还是取决于母鸡实际分配了多少资源和优先级 |
4
dapang1221 2019-01-15 23:27:19 +08:00
2 台 8 核,省机架费……
|
5
willis 2019-01-15 23:52:09 +08:00
横向集群用 8 台 2 核,2 台 8 核也可以纵向集群啊,具体怎么做要看业务场景了
|
6
misaka19000 2019-01-16 00:11:39 +08:00 via Android
看具体业务
|
7
CallMeReznov 2019-01-16 00:13:52 +08:00
并发高 8 台
并发低但是要求算力 2 台 |
8
ryd994 2019-01-16 01:16:05 +08:00 via Android
2 台
缓存共享 |
9
stabc 2019-01-16 01:35:26 +08:00
个人用我会用后者,资源分配更优。
公司用我会用前者,容灾性更优。 |
10
xmoiduts 2019-01-16 02:26:34 +08:00 via Android
上计网课时做过一道题:速度为 1 的机器两台,或者速度为 2 的机器一台,这两种方案哪种的排队时间更漂亮。结果是少量机器,单机高性能更好。“排队论”的东西记不清了,但可以用作参考(吧……)
|
11
tomczhen 2019-01-16 05:15:38 +08:00 via Android
复杂的软件工程问题无法靠简单的答案来解决。
|
12
ghostheaven OP @dapang1221 云主机
|
13
ghostheaven OP @CallMeReznov @willis @fyibmsd @misaka19000 @xmoiduts @stabc @tomczhen @ryd994 @westoy @lhx2008 在云上,都是虚拟主机,应用是基于 PHP FPM,理论上都是单核应用,数据库在另外的集群上。在小规模压力测试后发现 CPU 在不算高的并发下(小于 1000),两台 2 核的主机 CPU 满负荷。为了应对更大规模的流量,在不优化代码的情况下,哪一种方案更加合理?
|
14
aijam 2019-01-16 06:14:13 +08:00 1
8 台 2 核。有利于部署维护和容灾,后端服务总有某台服务器下线(部署、维护或宕机)的时候。如果一共两台机器,平时每台机跑了 50%CPU,其中一台下线时另一台就会飙到 100%,很容易影响服务的 latency 和 availability。8 台机器的话少一台也只是少了 1/8 的 capacity。
|