【问题标题】:Social Engine - Database Scaling? General Scalability? [closed]社交引擎 - 数据库扩展?一般可扩展性? [关闭]
【发布时间】:2014-01-19 10:35:39
【问题描述】:

我正在建立一个社交网络,由于名人将为其背书,我预计会有合法的流量。

正因为如此,我正在尝试尽可能地完全构建它。

我的方法如下,所有这些都在自己的虚拟机上运行:

-操作系统:CentOS6

  • 应用程序(网络)服务器 - SocialEngine 4
  • 内存缓存服务器
  • 数据库服务器
  • CDN - 网站会包含大量图片,因此需要实施 CDN(maxCDN 似乎是一个合理的选择)
  • 监控服务器(zabbix等)

如果社区发展壮大,我最初的方法是增强虚拟机 CPU/RAM。一旦这种方法不再适用,我计划实施集群。

  • 应用程序 - 每个附加应用程序服务器上的独立代码实例,都与单个数据库服务器通信
  • Memcache - 具有虚拟 IP 和负载平衡的集群,用于平衡流量
  • 数据库 - 单个数据库节点,由于不太熟悉如何实现数据库服务器,因此必须研究集群

我已经设置了 memcache 服务器并且知道 socialengine 如何使用它(在缓存部分,设置 memcache 服务器的 IP 地址);如果需要 memcache 集群,我假设可以使用虚拟 IP 地址

但是,我不知道如何将 socialengine 设置为使用外部数据库服务器。有人可以向我指出文档或描述如何更改这些参数,无论它们是在 GUI 中还是必须在服务器本身的配置文件中进行更改?

我们将不胜感激任何其他关于可扩展性的提示。我希望我的理解和方法是合法的。

【问题讨论】:

    标签: php database scalability social-networking socialengine


    【解决方案1】:

    数据库配置

    Installation 期间,您指定数据库服务器(请参阅第 3 步:设置 MySQL 数据库)。使用 localhost 告诉它连接到同一服务器上的 MySQL 数据库。如果要使用不同的服务器,请指定托管数据库的服务器的 IP 地址或主机名。

    您需要确保端口 3306 已打开,并且您的应用程序服务器可以与该端口上的数据库服务器通信。

    SocialEngine 是一个 PHP 应用程序,将数据库连接信息存储在配置文件中。该文件位于此处:

    application/settings/database.php
    

    即使在安装之后,您也可以编辑该文件并更改数据库连接字符串。

    扩展注意事项

    对于扩展,我建议您研究一下 Amazon Web Services 平台。还有其他云平台,但这是我最熟悉的一个,所以我会给你一些关于在 AWS 上研究的建议。

    负载平衡:AWS Elastic Load Balancing (ELB) 允许您在多个服务器之间拆分 Web 流量。

    Auto Scaling:使用此功能,您可以根据监控事件(例如 CPU 使用高峰、网络流量高峰)启动新服务器并将其添加到您的池中。您可以在不需要时关闭额外的服务器。

    远程数据库服务:这是一个易于实现集群的托管数据库服务。

    CloudFront:AWS 的 CDN

    这是关于 AWS 扩展的非常有用的网络广播:

    AWS Webcast - Scaling on AWS for the First 10 Million Users

    对于监控,请查看 New Relic。

    如果您需要进一步的说明/建议,请告诉我。

    【讨论】:

    • 非常感谢!很棒的建议!对于托管,我实际上已经选择了 Linode;它是便宜的虚拟云托管,如果需要,我可以轻松扩展实例。我将不得不检查他们是否提供弹性负载平衡,但我假设没有。我想我必须在时机成熟时手动实施解决方案,非常感谢您的信息!很有帮助!
    • 很高兴能提供帮助。如果您觉得它有帮助,请记得接受我的回答 :) 我也与 Linode 合作过。提供负载平衡“NodeBalancers”library.linode.com/nodebalancers/getting-started,但它们没有 AWS 等自动缩放功能。
    猜你喜欢
    • 2018-01-06
    • 2013-04-02
    • 1970-01-01
    • 2010-12-07
    • 2013-07-12
    • 1970-01-01
    • 2011-10-13
    • 1970-01-01
    • 2012-01-31
    相关资源
    最近更新 更多