报错如图:
这是mongodb的一个bug,会报错:use geoNear command rather than
n
e
a
r
q
u
e
r
y
,
但
是
在
非
s
h
a
r
d
集
群
中
是
可
以
在
f
i
n
d
中
使
用
near query,但是在非shard集群中是可以在find中使用
nearquery,但是在非shard集群中是可以在find中使用near。shard集群中使用runCommand是可以的,但是runCommand在高并发时,会停顿几秒,使用db.sz_user.aggregate(
g
e
o
N
e
a
r
)
能
解
决
此
问
题
。
所
以
一
句
话
,
在
s
h
a
r
d
集
群
中
,
geoNear)能解决此问题。所以一句话,在shard集群中,
geoNear)能解决此问题。所以一句话,在shard集群中,near没法用,runCommand高并发性能有问题,$geoNear才能完美解决此问题
解决办法:
https://blog.youkuaiyun.com/s19980228/article/details/107051262/