我正在将MongoDB与Java结合使用,并且对我的连接存在一些问题。首先,我应该如何连接到Mongo?我应该使用静态客户端并保持打开状态吗?因为连接大约需要500毫秒。因此,在用户需要数据时始终连接它不是最好的主意吗?
但是接下来的问题是。当我进行一些查询时,我收到错误消息java.lang.IllegalStateException: The pool is closed
或java.lang.IllegalStateException: state should be: open
。
那么,我应该如何管理整个MongoDB连接呢?始终等待500毫秒是减慢速度并在10个连接不太好之后重启服务器的方法。还有其他好的方法吗?
谢谢您的帮助!
我应该如何连接到Mongo?
听起来,您已经在使用MongoClient
,这是一个很好的方法。
该MongoClient
级的设计是线程安全的,线程之间共享。通常,您只为一个给定的数据库集群创建1个实例,并在整个应用程序中使用它。
我应该使用静态客户端并保持打开状态吗?
该MongoClient
实例实际上表示与数据库的连接池;即使有多个线程,您也只需要一个MongoClient类的实例。
这是使用MongoClient建立连接的快速导览。
如何使用多个类正确管理mongo连接? 例如,我有4个类管理4个集合。 收藏1。班级集合2。班级等等。。 我要做的是在每个类中创建一个connect and close方法,这会减慢应用程序中某些事务的连接 除了创建每个类的对象并分别连接每个类之外,将应用程序连接到db并开始使用所有类实例的最佳方式是什么?
我正在使用带有MongoDB的Node-MongoDB本机驱动程序来编写一个网站。 我有一些关于如何管理连接的问题: > 对所有请求只使用一个MongoDB连接是否足够?是否存在性能问题?如果不是,我可以设置一个全局连接在整个应用程序中使用吗? 如果不是,如果我在请求到达时打开一个新的连接,并且在处理请求时关闭它,这是好的吗?打开和关闭一个连接是否昂贵? 我应该使用全局连接池吗?我听说驱动程序有一
问题内容: 我在MongoDB中使用node-mongodb-native驱动程序来编写网站。 我对如何管理连接有一些疑问: 仅使用一个MongoDB连接就可以处理所有请求是否足够?是否存在性能问题?如果没有,是否可以设置全局连接以在整个应用程序中使用? 如果没有,如果在请求到达时打开一个新连接,并在处理请求时将其关闭,那会很好吗?打开和关闭连接是否昂贵? 我应该使用全局连接池吗?我听说驱动程序具
你们很多人都知道,欧洲有夏季和冬季。一年两次,所有欧盟成员国的时钟从冬季调到夏季(在3月的最后一个星期天),从夏季调回到冬季(在10月的最后一个星期天)(更多信息在这里)。现在,欧洲议会即将提议取消那些钟表变化。 在Java中,我们有日历,并且日历总是知道正确的时区(例如,夏季为GMT+1,冬季为GMT+2)。Java如何管理这一点?如果它改变了,它会对我们的系统产生什么影响? 所以,正如我在评论
请有人帮助我解决这个问题。