我正在尝试设置一个具有 2 个逻辑分离的组件、管理面板和用户门户的 Rails 项目。从我目前所读到的有很多方法可以设置它;
主应用程序需要处理繁重的流量,管理员适度低。
在四个选项中,建立项目的最佳方法是什么?
还有什么可能是每个缺点?
有没有其他方法可以做得更好?
最佳答案
关于可能的架构解决方案的一些想法:
1. 将两者结合在一个 Web 应用程序和一个数据库中
优点:
这样您就可以避免两次配置项目设置。
在不同的目录中,这有时会很麻烦。
缺点:
与用户相关的代码在同一屋檐下,所以它的概率更大
恶意用户可以利用与管理员相关的功能。
2. Admin 和 Main 应用程序分开 Web 应用程序,但使用公共(public)数据库
优点:
并且两者的用户体验都更加简洁。
缺点:
主应用程序,它将必须读取并影响主应用程序中使用的数据;因此给你更少的开销。
在大多数情况下,这将是最好的情况。
3. 使用不同的数据库将 Web 应用程序分开
想不到为什么要在第二个应用程序中执行此操作
处理第一个和数据库的内容。
如果你要
在第二个应用程序中使用大量与您无关的数据
主应用程序,这将是一个合理的选择。
4. 结合两者但部署单独的实例,一个作为管理员运行,另一个作为主应用程序运行
缺点:
管理员级别的功能。
关于ruby-on-rails - 拥有单独的 Web 应用程序的标准是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8502902/