我有一个需要扩展的应用程序(IP 会议服务)。它有很多独立的组件/应用程序,用不同的语言(主要是 C++ 和 PHP,一些 Perl)编写。目前,单个安装在 5 台机器上运行,1-2 个组件共享一个盒子。因此每个盒子的配置都是不同的,所以扩展整个东西是一件痛苦的事,更不用说维护了。
各个组件从媒体代理到消息代理和数据库各不相同,因此负载几乎是平衡的。
我正在考虑将所有组件放在一台机器上并添加更多盒子,同时在前面添加某种负载均衡器。其他人建议我以另一种方式扩展——在应用程序负载变高的地方添加专门的盒子——但这又导致了维护的噩梦。
你知道我应该从哪里开始的资源吗?理想情况下,我需要一些基准,哪种方法在性能方面更好?(大声思考,当我有 X 量的负载和 Y 量的内存和处理能力时,我如何分配它有什么关系?)