首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

优化效能点

2013-11-13 
优化功能点今日优化XX反馈响应太慢的功能点:1.成立采购小组选择用户2.退回订单页面3.申请开票选择订单界面

优化功能点

今日优化XX反馈响应太慢的功能点:

1.成立采购小组选择用户

2.退回订单页面

3.申请开票选择订单界面

这三个页面反应特别慢,经过对这个三个功能的逐一分析,找到太慢的原因。

1.成立采购小组选择用户 功能响应太慢。看代码:

public ActionForward indexResult(ActionMapping mapping, ActionForm form, HttpServletRequest request,
???HttpServletResponse response) {
??initLocation(request);
??request.setAttribute("users", userManager.findTeamUser());
??return new ActionForward("/XXX.jsp");
?}

?

这是查找选择用户的代码,这段代码没有做分页查询,也就是每次把满足条件的用户都查出来,如果满足条件的用户数多,那这个功能点必然会慢,

并且会越来越慢。

到正式站查了满足条件的数据,为18000多条,想想而知,把18000多条数据查询出来,保存到内容中风险有多大。

?

2.XXX订单页面?? 和?XX开票选择订单界面 功能点导致查询很慢的原因相同:查询试图写得太差,没有考虑大数据量的问题,导致查询太慢。

写得太差:就是执行一次查询可能对关联指标不可估计的多次查询。

像这种试图对写法:

create view my_view asselect?? ? ?szzc_get_name.f_get_columnmeans('TN_NOTE','BILL_FLAG',(select max(nvl(x.bill_flag,0)) from tn_note x where x.order_id=t.id and x.status =1 )) bill_flag_mean,? ? ? ?(select count(1) from tn_note x where x.order_id=t.id) note_count? from tpo_headers_all t? where t.status=1;?查询 my_view 试图使,可能对tn_note 不可预计的多次查询。所以导致很慢,并且会越来越慢。

?

?

?

?

热点排行