最近有一个关于ES的排序问题,想问下dl们:
目前我的排序是用es的painless的自定义排序去做的,但是我在脚本return的时候加了一个double类型的数,接口性能从平均500ms,慢到了1s~2s,非常奇怪,想问问dl们有没有什么解决方案
操作前的脚本:
double total = doc['score1'].value;
long m=params.m
total /= Math.log(m);
total+=doc['score2'].value;
return Math.rint(total*10000)/10000;
操作后的脚本
double total = doc['score1'].value;
long m=params.m
total /= Math.log(m);
total+=doc['score2'].value+doc['score3'].value;
#这里就多了一个score3 是double类型的,score1也是double, score2是long
return Math.rint(total*10000)/10000;
查了很多也没有发现是哪里的问题,qq各位dl帮忙分析下