微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 拥有单独的Web应用程序的标准是什么?

我正在尝试设置一个Rails项目,该项目有两个逻辑上分离的组件,即管理面板用户门户.从我到目前为止所读到的,有很多方法来设置它;

>将单个Web应用程序与单个数据库结合使用
>为管理员和主要应用程序分离Web应用程序,但使用通用数据库
>使用单独的数据库分离Web应用程序
>合并两者但部署单独的实例,一个作为Admin运行,另一个作为Main应用程序运行

主应用程序将需要处理繁忙的流量,管理员适度低.
在四个选项中设置项目的最佳方法是什么?
还有什么可能是每个的缺点?
还有其他方法可以做得更好吗?

解决方法

关于可能的架构解决方案的一些想法

1.将单个Web应用程序与单个数据库结合使用

优点:

>您拥有单一项目配置下的所有内容,
这样就可以避免两次配置项目设置.
>您可以重复使用代码而无需复制文件或参考文件
在不同的目录中,有时可能会很麻烦.

缺点:

>安全性,可以在系统中将事物颠倒过来的功能
在与用户相关的代码的同一屋檐下,所以它有更大的概率
管理员相关的功能可被恶意用户利用.

2.为管理员和主要应用程序分离Web应用程序,但使用通用数据库

优点:

>在不同的应用程序中将代码与不同的上下文分开,使事情更简单
并且用户体验更加简洁.

缺点:

>由于第二个应用程序存在的原因是操纵数据和
在主应用程序中,它必须读取并影响主应用程序中使用的数据;因此减少了开销.

在大多数情况下,这将是最好的情况.

3.使用单独的数据库分隔Web应用程序

在第二个应用程序出现时,想不到为什么要这样做
处理第一个数据库内容.
如果你要去
在第二个应用程序中使用与您的数据无关的大量数据
主要应用,这将是一个合理的选择.

4.组合两者但部署单独的实例,另一个作为Main应用程序运行

缺点:

>您将开发解决方案一,增加处理两个实例的复杂性.>恶意用户可能会找到登录管理实例并获取访问权限的方法管理级功能.

原文地址:https://www.jb51.cc/ruby/264922.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐