【问题标题】:Redis on web server front-end or database server back-endWeb 服务器前端或数据库服务器后端上的 Redis
【发布时间】:2011-06-15 02:43:41
【问题描述】:

我有两台虚拟专用服务器,第一台是 Web 服务器前端,第二台是数据库后端。我想将 Redis 用于实时数据,我的问题是:我应该在哪里安装 Redis?在网络或数据库服务器上?

【问题讨论】:

  • 你在redis中存储了什么?主要将其用作缓存?如果是这样,我会把它放在网络服务器上以获得非常快的性能。另外,哪台机器有更多的空闲内存可以给redis?
  • Redis 用于存储聊天记录和统计数据,这些数据被实时读取并交付给客户端。 VPS 具有相同数量的内存和磁盘空间。

标签: database redis web-frontend


【解决方案1】:

好吧,如果按照您所说的那样使用 Redis,并且您的 Web 进程不使用大量内存,我会将它放在两者上并复制到数据库服务器。这将提供冗余和性能。该数据似乎比简单的缓存数据更重要,因此冗余会很好。

如果您的 Web 服务器的可用内存较少,并且该可用内存小于您的​​数据大小,请将其全部保存在 db 服务器上。

【讨论】:

    【解决方案2】:

    在数据库服务器上安装 Redis 的优点:

    • 如果您有大量数据,Redis 的数据库大小可能会变大。如果您要存储统计信息并存储大量统计信息,那么您的数据库可能会占用大量内存。您不希望将所有数据保留在 Web 服务器的内存中,因为这可能会占用 HTTP 服务器的内存。
    • 它被称为数据库服务器是有原因的

    在数据库服务器上安装 Redis 的缺点

    • 轮询服务器以获取数据时,网络响应时间会更长,因为它不是本地的
    • 如果服务器出现故障,那么您将没有数据。

    我个人会将 Redis 保留在自己的服务器上,因为您可以向它提供大量数据,但这完全取决于您所处的环境。如果您希望速度成为重中之重(额外的 50 毫秒或所以将是不可接受的),那么您应该在您的 Web 服务器上运行它,因为到 127.0.0.1 的请求时间比外部网络地址快得多,即使它在您的本地子网内。如果没有,那么您应该将其保留在 Web 服务器之外。

    【讨论】:

      猜你喜欢
      • 2012-07-11
      • 1970-01-01
      • 2012-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-03
      • 2011-09-26
      • 1970-01-01
      相关资源
      最近更新 更多