我有一个带有 3 个独立“组件”的大型 rails 应用程序。
一种是大部分静态的 WWW 站点,一种是基于 Spree 的购物车,一种是基于 Instagram 的 API 的奖励计划。
目前它们都是一个巨大的 Rails 4.0 应用程序。随着这个应用程序随着时间的推移而增长,我很难区分组件。我想模块化应用程序以保持这 3 个组件分开。
有没有首选的方法来执行这种“SOA”类型的架构?还是将应用程序的每个“组件”变成自己的可安装引擎会更好?还是有更好的策略?
我一直在研究 Spree 的核心,以及它们如何将每个组件作为引擎,并将它们加载到顶层,我认为这可能是最好的路线。