■前言
我们开发的系统,页面采用JSF,由于过多的使用了Ajax,造成系统非常的慢,
因为本来就已经很慢了,所以有时我们在实现逻辑的时候,只是考虑逻辑清晰,
却不过分的考虑性能。
但是并不代表完全不去考虑性能。
■要实现的功能
通过系统填写的数据,会在一览中显示。如果某条数据中的某个字段是特定的值,要在一览中做出标记。
(补足说明1:这个值是否是特定的值,要连接一个外系统的数据库,才能判断出来。)
(补足说明2:这个特定的值,在填写完了之后,有其他的画面可以再次修改。)
■最开始实现的方式
一览中,循环每一条,得到这个字段,然后连接外系统DB,判断是否需要在一览中做出标记。
■改进后的实现方式
这个特定字段被设定时,我们连接外系统,取得对应的状态作为一个flag保存下来,在一览中使用这个flag来判断。
■这里我们为什么要考虑效率问题
・第一,要从使用频率上来看。
因为一览画面经常被使用,而且这个系统会有多人使用,如果多个人同时使用一览画面,
假如一览画面平均有10条数据,十个人同时使用一览画面,
就会造成,100次对数据库的多次访问,非常不好。
・第二,要看访问的资源。
我们访问的是外系的数据库,所以这么做非常不好,
不仅因为访问外系统数据库速度上可能会慢,而且有可能会造成外系统崩溃(只是有可能)。
开发的JSF系统因过多使用Ajax而变慢,在实现通过系统填写数据并在一览中标记特定字段值的功能时,最初循环每条数据连接外系统DB判断,后改进为设定特定字段时连接外系统保存状态作为flag判断,同时说明了考虑效率问题的原因。

52

被折叠的 条评论
为什么被折叠?



