美好的一天。 我正在开始一个Web项目,并且正在考虑将mongoDB与Java和Spring数据一起使用。在这个Web项目中,每个用户都有一个数据库。换句话说,当用户登录时(这将是一个只包含登录信息的共享数据库),我会使用给定用户的数据库。这可能吗?实施最优雅的方式是什么?按照此link的示例,它使用mongodb的春天日期。
答案 0 :(得分:0)
在应用程序中使用数据库身份验证层通常是一个坏主意,您不希望您的应用程序能够触摸敏感的内容。
至于使用单独的数据库:如果您的工作流程确实需要它,那么您可能希望使用单独的数据库,而不是集合。这是出于分片原因(每个数据库分片)和锁定原因(锁定仍然是数据库级别),还有很多其他东西都在数据库级别上。
应该注意的是,除非你需要隔离,否则每个数据库一个用户是一个非常糟糕的主意,不仅是因为成本效率,还因为应用程序的复杂性需要加以考虑。