我正在开发一个任务管理器应用程序 - 其中一个方面是项目所有权和访问权限。从理论上讲,创建一个 project_user_meta
表是有意义的,如下所示:
REL_ID USER_ID PROJECT_ID NAME VALUE
1 4 17 'owner' true
72 209 8 'project_access' true
414 17 101 'task_access_only' 14
等等。但是,随着此应用程序范围的扩大,项目数量开始达到数千个,用户数量达到数万个,这可能会变得非常麻烦和困惑。我努力不跨越“我如何做得更好”的界限。我想知道的是 - 随着此设置规模的增加,我应该注意什么?
例如,假设我的公司决定公开此应用 - 用户数量增长到 10 万以上,项目数量增长到 1 万以上。这种方法在更大范围内会面临哪些限制/缺点?
最佳答案
一开始将所有项目放在一个数据库中会容易得多,但是如果您的规模超出了一台数据库服务器的容量,那么您会希望将每个项目拆分为自己的项目D b。这更容易扩展,并且还为您提供一定程度的容错能力 - 一个项目的不当行为不会影响其他项目。
关于php - 这种关系方法是否可扩展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15301939/