【问题标题】:Host prestashop (with single Shop, no multi shop) Back office in different server [closed]托管 prestashop(有单个商店,没有多个商店)不同服务器中的后台 [关闭]
【发布时间】:2021-08-10 13:43:25
【问题描述】:

在不同服务器/EC2 中托管 Prestashop(有单个 Shop,没有多个 Shop)后台办公室

我试图对此进行深入研究,但我得到的唯一解决方案是多商店。

有没有人用任何类型的服务器做到这一点?

我要解决什么问题?

当 FO 关闭时,BO 不应关闭。所以我将 BO 移动到单独的 EC2 服务器。以免影响操作。

【问题讨论】:

  • 谁加过-1,请你加个commnet并解释一下原因。
  • 我没有投反对票,但我确实投了赞成票,因为这不是编程问题。可能Server Fault 可能是一个合适的地方询问(但请先阅读他们的帮助)

标签: php ubuntu amazon-ec2 prestashop backoffice


【解决方案1】:

你说的对我来说没有太大意义, 主要是因为 FO 和 BO 共享相同的代码库(当然还有相同的数据库)。

因此,为了避免停机,您必须采取一种经典的 HA 方法来横向扩展整个应用程序(Web/数据库)以便进行故障转移:

网站:

  • 在多个服务器中拆分网络
  • 在前面放一个负载均衡器(即HAproxy)
  • 在所有 Web 节点中使用共享文件系统 (NFS)

通过这种方式,您可以决定将 Web 请求路由到某些服务器(例如,通过检查 admin url 将 BO 请求处理到您决定的服务器)。

在 Prestashop 后台,您会发现一个“多前端优化”选项,允许您使用这种扩展架构正确管理缓存。

数据库:

您也需要复制和故障转移。

根据我的经验,我推荐主/从拓扑和前面的 MySQL 代理 (如果 Master 节点宕机,这将通过将 Slave 提升为 Master 来保证故障转移)。

请注意,即使 prestashop 本身支持 MySQL 从属数组(在 config/db_Slave_server.inc.php 文件中), 你不会有很好的性能,因为只有一些遗留查询会通过从站。

由于服务器之间不连续的自动增量,看起来也可以使用带有一些 hack 的多主架构,

见:https://github.com/PrestaShop/PrestaShop/issues/15019

这样您可以更轻松地扩展,但最终会在产品、类别等中使用偏移 ID(所以我从未在生产中尝试过)

因此,总而言之,您将不得不“解决” HA 架构带来的经典问题...

顺便说一下,这是官方的“文档”,你会发现关于水平缩放 Prestashop:

https://devdocs.prestashop.com/1.7/scale/

【讨论】:

  • 感谢您的回答,非常感谢。我已经完成了负载均衡器,并且在 Aurora AWS 数据库中无法进行数据库复制。我见过有人用不同的 BO URL 托管相同的代码,所以我相信这是可能的。主要问题是交通非常意外,类似于 MALL 中的黑色星期五。这也是不可预测的。例如50K 并发用户,用于购买稀有产品。我只是想确保 BO 正常工作并且操作不会受到影响。
  • 不幸的是,我从来没有使用过 aws,所以我无法帮助你了解他们的架构,我已经使用不同的云实例和/或经典 Centos VM 进行了很多工作,无论如何,如果你得到了一些好的东西并且你想分享,我想知道,因为在巨大的工作负载上拆分 PS FO BO 会很好实现。
猜你喜欢
  • 2015-12-24
  • 1970-01-01
  • 2017-08-19
  • 1970-01-01
  • 2017-10-24
  • 2015-10-16
  • 2015-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多