如何扩展当前的设置?

我目前有一台HTTP服务器运行在一台机器上(它运行Ubuntu服务器版,如果有帮助)。 在过去已经足够,但随着交通量的增长,我开始需要更多的电力和存储空间。 我有第二台机器,并安装了Ubuntu Server Edition。 我如何让这两个人一致运行? 这通常是如何在专业设置中完成的?

谢谢,你的答复表示赞赏。

我没有写入操作涉及到您的设置,您可以简单地使用循环法DNS设置。 如果情况并非如此,那么拥有两台服务器的第一个选项可能是将1作为networking,将1作为数据库服务器。

首先你应该连接一些快速的networking。

  1. 你可以运行一些像nginx这样的caching逆向代理。
  2. 您可以将MySQL移动到第二个主机。 你也可以尝试做分布式的。

对于静态数据的请求应该用nginx / lighthttpd / …这样简单的东西在一台机器上或两台机器上(以循环方式)提供。

只读复杂的请求应该被正确地caching。 caching可能在其他主机上运行。

复杂的写请求可能会以一种集中的方式完成(只在一台机器上;与angular色分离(Web服务器/数据库))。 或者,您可能会考虑使用可以处理所有请求的多个节点来执行可扩展的系统,但是这会变得更加复杂,应该考虑是否会有进一步的大规模增长。

如果系统大部分是只读的(如可供下载的电影集合),则可以设置2个负责部分内容的主机。 或者,如果数据保护防止崩溃更重要,则可以在路由器上对两个相同的主机执行相同的数据和循环请求。

在你做任何事情之前,你需要更好地理解你的负载和你的瓶颈是什么。 在这个问题上抛出更快的硬件或更多的服务器是非常容易的,但是你可能会发现一些特定的软件更改可能会产生你以后的结果。

首先,您可以使用一些非常基本的命令行工具(如top和sysstat包)来了解发生了什么事情的基本概念。 首先需要确定是否由CPU,networking,I / O或configuration不当的软件引起的减速。

网上有很多关于使用这些工具来识别问题的信息(Google是你的朋友)。 这不仅可以帮助你更好地理解发生了什么,而且如果你引入了新的硬件,它实际上有助于解决问题。