首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >云托管:我们需要它吗?

云托管:我们需要它吗?
EN

Server Fault用户
提问于 2009-11-14 08:21:27
回答 2查看 348关注 0票数 3

我们有一个服务器(4GB内存,两个4核Intel Xeon E5420)执行以下任务:

  • 带有静态内容的网站(目前只是一些CMS,我们计划添加一个缓存反向代理)
  • 客户控制面板(基本上是数据库的web接口)
  • 我们桌面软件的后端脚本-几个PHP脚本,它们执行几个DB查询/更新,但是每5分钟就会被每个客户点击一次
  • 存储上述两种数据的数据库

我们预计未来几周将有大量(高达数十万)用户涌入。我的上级担心我们当前的设置可能无法处理负载,并正在考虑迁移到云托管-然而,我不相信这会有帮助。根据我对云计算的理解,虚拟化不会有多大帮助,除非我们能够将工作负载分散到几台机器上(除非它们有比我们的服务器强大得多的服务器)。它们提供MySQL集群,但是后端脚本只是在几行中读取/写入一些值,并且不执行任何计算密集型的SQL查询,所以我也不确定MySQL集群与Apache/PHP开销+ MySQL网络延迟相比会有多大的不同。至于网站,我们也可以将大部分静态内容移到CDN上,因为我们有一些视频剪辑,这可能会增加我们的带宽。

那么,云托管对我们有什么好处吗?

EN

回答 2

Server Fault用户

回答已采纳

发布于 2009-11-14 08:33:48

可能会,也可能不会。正如您所怀疑的那样,除非您能够轻松地将系统工作负载划分为可以在网络上进行通信的独立单元,否则在可伸缩性方面,您将看不到使用“云”提供商的任何好处。有些“云”提供商确实提供了更大的机器(无论如何,从内存的角度来看-我怀疑你是否会一直从其中任何一个获得相当于8个E5420核的内存),但如果有必要,您也可以为现有的服务器获得更多的内存。

我会花时间观察系统的每个单独的组件,评估每个组件的资源使用情况,因此,将其移动到单独的框中是一种“节省”。然后,查看每个组件(从最密集的资源开始)如何进行集群,以便将该组件的工作拆分到多台机器上(称为“水平可伸缩性”)。一旦你做了所有有可能在你的预期负载水平上使用接近机器价值的资源的事情,你就可以去找你的上级,给你的上级一个计划,一个努力和成本的估计,把它全部分配出去。

所有这些都不是“云”-specific,这只是对如何处理不断增加的用户负载的基本尽职调查。您可以开始使用“云计算”的好处是,当您确实需要快速扩展时,您只需按一下按钮就可以了!有更多的资源可供你支配。但是,不要等到加载达到高峰时才尝试--如果您完全重视您的正常运行时间,那么在任何时候都要与至少两个可伸缩的组件一起运行,提前找出扩展触发阈值,监视它们,并尽快生成新的实例。然后,将系统置于大量的负载下,并测试它是否都能如您所期望的那样工作。

票数 5
EN

Server Fault用户

发布于 2009-11-14 15:52:36

正如Pauska所指出的,虚拟化环境的大部分价值除了规模外,还包括冗余和可用性。您可能想考虑一种私有云风格的解决方案,比如Rackspace的解决方案,或者考虑自己的解决方案,前提是您内部有很好的VMWare工作人员。然而,这将需要一段时间,正如女性的优秀帖子所表明的那样,这样做是正确的。

如果你的截止日期很快就要到了,而且你没有时间对你的应用程序进行研究,你会想到以下几点:

  • 尝试将web服务移动到一个单独的服务器,这样MySQL就可以拥有整个8台核心机器。这在MS环境中是非常重要的,但我相信它在灯栈中也有价值。
  • 给所有涉及的机器更多的RAM - RAM是便宜的。在我的经验中,你研究它所花费的时间要比内存花费更多,所以就这么做吧。
  • 考虑反向缓存。在所有这一切面前创建一个反向缓存可以减轻负载并提高规模,而不会出现任何复杂情况。
  • 读一读女人的绝妙反应,也听从他的建议。
票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/84664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档