升级到macOS Sierra后,Spring Data和MongoDB之间的通信速度非常慢,基本上无法使用。
具体而言,与数据库的交互集合以前需要大约100毫秒,现在需要大约10分钟。
我正在使用最新的稳定版本的驱动程序和弹簧数据:
MongoDB Java驱动程序
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver</artifactId>
<version>3.3.0</version>
</dependency>
Spring Data MongoDB
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.9.3.RELEASE</version>
</dependency>
此外,我使用Homebrew安装了MongoDB。
mongod --version
:
db version v3.2.9
git version: 22ec9e93b40c85fc7cae7d56e7d6a02fd811088c
OpenSSL version: OpenSSL 1.0.2h 3 May 2016
allocator: system
modules: none
build environment:
distarch: x86_64
target_arch: x86_64
我不确定如何解决此问题。如果您认为我应该将其发布在其他地方,请告诉我。我会。
感谢。
更新1:在尝试在docker容器中运行mongodb而不是在macOS Sierra上运行它之后,仍然存在缓慢的问题。
更新2:结束降级至El Capitan。
答案 0 :(得分:3)
可能与https://stackoverflow.com/a/39698914/1469525有关,答案是对localhost的/ etc / hosts文件的修改
答案 1 :(得分:0)
这可能是与Docker和macOS Sierra相关的性能问题,而不是Mongo。您可以尝试调试这个是安装Vagrant并在Ubuntu VM中调出您的环境,并查看类似平台上的性能特征。您还可以使用运行旧版macOS的VirtualBox或VMWare Fusion来设置VM。由于Docker在Linux上比OS X更稳定,因此Vagrant路线可能是您最好的选择,以确定问题的严重程度。