如何让你的代码跑得更快?尽量让你的代码少干点儿活儿

2019-11-28  本文已影响0人  会点代码的大叔

前几天帮助其他项目组的一个小伙伴解决了一个代码上的问题,他们代码的主要功能是这样的(这里只写伪代码):

流程上是没有问题的,但其实有两步是重复操作,一是读取本地密钥文件,二是从数据库中查询请求 url ;

每次发送请求的时候,都要做这两步操作,其实完全是可以把密钥文件和 url 放在静态变量中,初始化一次,然后每次发送报文时直接使用,这样就可以让你的代码少干点儿活儿。

接收参数;
读取本地密钥文件;
对接收参数进行加密;
从数据库中查询请求url;
发送加密后的报文;

让我们看看修改后的代码:

静态变量:

byte[] 存放读取出来的密钥文件 和 url ;

单独的方法:
如果 byte[] 为空,初始化;不为空,则返回;
如果 url 为空,初始化;不为空,则返回;

接收参数;
通过方法获取静态变量 byte[] ;
对接收参数进行加密;
通过方法获取静态变量 url ;
发送加密后的报文;

如何让你的代码跑得更快?尽量让你的代码少干点儿活儿

缓存数据加载时间

让我们对比一下改造前后的代码(改造后的代码并不是没有缺点):

如何让你的代码跑得更快?尽量让你的代码少干点儿活儿

缓存数据存放位置

另外,将配置信息直接放在一个静态变量中缓存,也不是什么特别好的办法,还有更优的做法:

当然,考虑到这个项目非常老,不太可能加入复杂的架构,所以就采用了看起来“不是特别好的方法”,把配置信息加载到静态变量中。

image.png
上一篇 下一篇

猜你喜欢

热点阅读