我们有一个 Azure Worker 角色(基本上与 Windows 服务相同),我们将 Ninject 用于 IoC,并将 IDbConnection 注入到我们的 worker 中。最佳实践表明,您应该在不再使用连接时立即处理连接,但在可能有意义或可能没有意义的工作人员/服务中。那么在这种情况下处理数据库连接的好方法是什么?
我们的选择包括(也许也不限于):
- 使用 ServiceLocator 模式并在我们处理的每条消息上请求新连接
- 保持连接(即什么都不做)
老实说,我不喜欢任何一个,我希望有其他的解决方案......