我正处于使用ColdFusion和SQL Server 2012规划Web应用程序的开始阶段。
在研究使用多个数据库(每个客户一个)与一个大型数据库的利弊时,出于我的目的,我认为多个数据库是最好的方法。
考虑到这一点,我现在想知道关于登录客户的最佳方式。我有两个想法:
我可以使用子域,每个子域都用于特定客户端。子域也是数据源名称。
我可以在页面上有一个单一的登录信息,该客户的数据源存储在通用用户表中。
我最喜欢选项2的想法,但我想知道这在现实世界中是如何工作的。让每个用户都是唯一的并不理想(虽然我想我可以用电子邮件地址代替用户名)。
我在考虑添加一些需要与用户名和密码一起输入的“公司代码”。
我觉得这可能会让客户过多。
所有这些都说过,你会建议选择选项1还是选项2?也希望听到任何可能不同的想法或想法。
谢谢!
答案 0 :(得分:1)
如果您希望每个客户端拥有大量数据,那么将每个客户端拆分到自己的数据库中可能是个好主意。
您可以为每个客户端创建一个包含客户端信息,客户端数据源,设置等的全局数据库,然后在application.cfc中设置客户端数据库。
如果客户端请求他们的数据或者您想从系统中删除客户端,这也使得最后更容易。