如何在两个节点之间实时同步文件和 PHP 会话?

如何在两个节点之间实时同步文件和 PHP 会话?

我在 2 个节点和一个 DB 服务器上设置了一个 PHP 应用程序。还设置了集群(使用 HaProxy),它将在两个节点之间以最少连接算法路由流量。

我感到困惑的是,我将如何同步我的应用程序的数据?我每天都会在我的应用程序上上传图片,它们只上传到本地服务器。(请不要建议使用 CDN 或其他东西,严格来说,需要坚持使用本地服务器)

其次,PHP 会话同步怎么样?它将如何工作?

所有这些同步都需要实时完成。

问题是菜鸟类型,但我对所有集群和节点的东西都很陌生,非常感谢您的帮助。

谢谢

答案1

您必须选择适合您的环境的共享存储。

对于文件,主要类别是网络文件共享、对象存储或数据库。

  • 可以从存储阵列导出 NFS 等文件共享并将其安装在多个节点上。
  • 对象存储具有非传统基于块或文件的访问 API。通常基于 HTTP。S3 是对象存储。
  • 数据库 blob 是填充到某个数据库系统中的数据。其类型不是整数,而是任意数据。

会话很小,而且不是永久的。简单的键值存储(可能在内存中)在这方面非常有用。

有些文件看起来不像常规文件。您的应用程序需要使处理存储的方式通用化。

根据需要,可以将其中任何一个复制到另一个副本。

相关内容