看到有的公司某个 web 应用这么做,有点奇怪
1
ixiaohei 2017-08-08 15:18:15 +08:00
如果是滚动升级可能还有点用(升级一个另外个还能服务),另外可能是 32 位系统,装了多个 jvm?以前见过很多人这么用,其他的作用未知。
|
2
ixiaohei 2017-08-08 15:18:46 +08:00
上面写错了,32 位 jvm,64 位系统。
|
4
xmadi 2017-08-08 16:09:20 +08:00 via iPhone
有意义 比如 nodejs 本身是线程的 如果想充分利用多核 这是一种比较常见的方法 因为不需要改动代码 只要多运行几个实例就可以了 当然也有专门的多进程的模块 需要稍微改一些项目代码
|
7
TangMonk 2017-08-08 17:28:12 +08:00
node 和 ruby 就是这样的,因为 node 和 ruby 不能利用多核心, 只能 fork 多个进程来负载均衡
|
8
loveCoding 2017-08-08 17:37:41 +08:00
答案是不一定 .看应用上限瓶颈在哪里 .
|
9
misaka19000 2017-08-08 17:52:11 +08:00 via Android
当然有,充分发挥机器性能啊
|
10
guyeuro OP @misaka19000 具体?带宽,CPU, 内存哪方面的性能在单 web 程序下有被浪费?
|
11
swulling 2017-08-08 18:16:26 +08:00
有意义:
1. 提前留好横向扩展的潜力,如果一台机器性能不足,可以很方便的快速扩容,而不是再折腾一番 2. nginx 可以做一些事情,不用到后端,比如简单的封禁、防攻击、请求监控、静态文件、URL rewrite 等 3. 如果后端是 Tornado 之类不能利用多核的单进程服务,相当于做了多进程 甚至还有更极端的,某厂的通用 PHP 容器,就是一个 nginx+php-fpm+业务逻辑,注意是每个容器内都有一个 nginx 哈,也是为了统一架构,方便监控、部署等等 |
12
kokdemo 2017-08-08 18:23:05 +08:00
想起来自己待的第一家公司
部门的技术负责人就是在同一台服务器上搭了好几个 tomcat 搞『负载均衡』 看的我目瞪狗呆 |
14
guyeuro OP |
16
swulling 2017-08-09 00:08:01 +08:00 via iPhone
|
18
ixiaohei 2017-08-09 09:47:00 +08:00
@guyeuro 32 位 jvm 比 64 位 jvm 性能好,但是内存是 32 位限制,当初有很多人这么玩,现在几乎都是用 64jvm。
|
19
coolyujiyu 2017-08-09 10:04:33 +08:00
可以啊,没毛病啊,只要机器配置扛得住
还可以支持灰度发布呢 |
20
guyeuro OP @coolyujiyu 好处是啥?
|
21
guyeuro OP @coolyujiyu 我意思除了灰度发布外,还有啥好处
|