wangruoliu 2019-01-11 10:05 采纳率: 0%
浏览 1234

这两天刚入门elasticsearch,做了个页面来做压力测试,结果loadrunner上50个并发都过不了?

@RequestMapping(value = "sqlselect4.do",method = RequestMethod.POST)
public ServerResponse select4(@RequestParam(value = "name",defaultValue = "") String name) throws Exception
{
TransportClient client = new PreBuiltTransportClient(Settings.EMPTY).addTransportAddresses(
new TransportAddress(InetAddress.getByName("master"),9300));
System.out.print("连接信息:" + client.toString());
SearchResponse response = client.prepareSearch("test6")//设置要查询的索引(index)
.setSearchType(SearchType.QUERY_THEN_FETCH)
.setTypes("qiye_xinxi")//设置type, 这个在建立索引的时候同时设置了, 或者可以使用head工具查看
.setQuery(QueryBuilders.matchPhraseQuery("Danwei_Name", "石家庄")) //在这里"message"是要查询的field,"Accept"是要查询的内容
.setFrom(0)
.setSize(1000)
.setExplain(true)
.execute()
.actionGet();
List userVoList=new ArrayList();
for (SearchHit hit : response.getHits()) {
ResultVo userVo=new ResultVo();
JSONObject obj = new JSONObject(hit.getSourceAsString());
userVo.setQiye_ID(obj.getString("Qiye_ID"));
userVo.setDanwei_Name(obj.getString("Danwei_Name"));
userVo.setSocialCreditCode(obj.getString("SocialCreditCode"));
userVo.setDanwei_Code(obj.getString("Danwei_Code"));
userVo.setChangeQXBMTime(obj.getString("Create_DATE"));
userVoList.add(userVo);
}
client.close();
return ServerResponse.createBySuccess(userVoList);
}

    查找单位名称包含“石家庄”的前1000条记录。我是在单机上搭建的,单表数量为80万,请大神看看代码哪块有问题?有什么可以优化的地方。
  • 写回答

1条回答 默认 最新

  • s_huang790228 2019-05-15 08:08
    关注

    压力测试和很多因素都有关系,例如如果使用同一台机器产生模拟的请求,可能模拟器本身也会消耗资源。如果是另一台机器发送模拟请求,那么还要看网络是不是瓶颈。另外,也要看被测机器的硬件情况,像搜索引擎这种比较依赖硬盘的系统,ssd读取肯定比非ssd磁盘快,性能也更好。另外,我看到你是取前1000个结果,其实现在主流的开源搜索引擎,都比较怕"deep pagination“,也就是说取出前n个搜索结果的开销是比较大的,n越大开销越大。很可能要涉及读取磁盘,你可以改为10或者100试试看

    评论

报告相同问题?

悬赏问题

  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题