我的第一个建议是考虑原因,为什么需要在一个安装下移动所有 Magento 实例。从你的问题看原因还不清楚。所以最好的开发人员建议是“它有用吗?那就不要碰它”:)
如果没有具体原因,那么您最好保持原样。软件系统的所有重组过程(升级、基础设施配置、访问设置等)都是困难的、昂贵的、耗时的、容易出错的,从业务角度来看通常没有太大的价值,而且有点无聊。这不是 Magento 特有的东西,它只是任何软件的一般特征。
另请注意,这是一个假期。因此,最好在 1 月中旬之前不要对电子商务商店进行任何操作。
如果您看到重组 Magento 商店的价值,那么最好的方法是逐步进行 - 一步一步,逐个商店:
- 以您最复杂的商店为例。为进一步的步骤准备所需的一切 - 即准备好工具,编写自动脚本,在某些测试服务器上完成该过程及其副本。编写一组功能测试以至少通过冒烟测试来覆盖它。您必须多次重复这样的轻量级检查才能确定商店似乎在工作。自动测试将节省大量时间。因此,所有这些准备工作将减少您的停机时间。
- 关闭对商店的公共访问。
- 将商店升级到 Magento 版本,您需要。将其移至新的基础设施。
- 手动验证所有用户场景并使用自动测试。解决问题(如果有)。
- 开放对商店的公共访问。监控日志,在服务器机器上加载报告。修复问题,如果有的话。
- 拿下一家商店(我们称之为 NextStore)。在沙盒服务器上制作它的副本。
- 在沙盒服务器上复制您已经转换的商店(我们称之为 ConvertedStore)。
- 从 NextStore 的副本中导出所有数据并将其导入到 ConvertedStore 的副本中。您可以使用 Magento Dataflow 或 Import/Export 模块来执行此操作。并非所有数据都可以使用这些模块导入/导出 - 只是目录、订单、客户。如果需要,您将需要开发自定义脚本来导入/导出其他实体。
- 手动验证结果并使用自动测试和手动验证。编写自动脚本,修复发现的问题。在真正的转换过程中,您稍后将需要这些脚本。
- 关闭 NextStore。
- 通过使用已经准备好的程序和脚本,将其移至新的基础设施。您需要考虑在转换过程中是否关闭 ConvertedStore。这取决于你的感觉,是否可以打开它。出于安全原因,最好关闭它。
- 验证,一切正常。监控日志、报告。
- 修复问题,如果有的话。
- 继续您的其他商店。
这是我(完全个人)对程序的看法。
一位开发人员说,让它们在不同的安装下有助于提高性能。这是真的?
是的,你的朋友是对的。将 Magento(实际上是这个世界上的任何东西)分离成更小的实例可以让处理起来更轻松。性能差异非常小(对于您的 4000 个产品的实例),但这是不可避免的。考虑一下,在组合实例后(假设其中有 10 个实例,每个实例有 400 种产品),您将处理 10 倍以上的客户、报告、产品、商店等的数据。因此,任何搜索都必须经过 10 倍以上产品,以返回数据。当然,如果搜索需要 0.00001 秒也没关系,因为组合实例的 0.0001 秒也可以。但是有些东西,比如排序或匹配集,是非线性增长的。但是,如前所述,对于 4000 种产品,您不会看到太大的差异。
一旦我们将它们全部安装在一个安装中,诸如库存控制和订单以及将产品放在多个站点上之类的东西也应该非常简单-对吗?
你是对的 - 将商店合并在一起后,处理订单、库存,客户将更加简单和直接的过程。
祝你好运!:)