晋升机能 Java措施优化的一些最佳实践
为了快速地实现预期结果,在最初的实现中优先思量了成果的实现,而未思量体系机能和代码可读性等。体系大抵有以下的实现: • REST API获守信息、数据库操纵也许抛出的非常信息都被记录到日记文件中,作为调试用; • 共有5次数据库毗连操纵,包罗第一次清空数据库表,针对两个外部体系D各有两次数据库插入操纵,这5个毗连都是独立的,用完之后即开释; • 全部的数据库插入语句都是行使java.sql.Statement类天生的; • 全部的数据库插入语句,都是单条执行的,即天生一条执行一条; • 整个进程都是在单个线程中执行的,包罗数据库表清空操纵,数据库插入操纵,开释数据库毗连; 数据库插入操纵的JDBC代码散布在代码中。固然这个版本的体系可以正常运行,到达了预期的结果,可是服从很低,从通过 REST API获守信息,到理会并提取有用信息,再到数据库插入操纵,总共耗时100秒阁下。而预期的时刻应该在一分钟以内,这显然是不切合要求的。 三、代码优化进程 笔者开始说明整个进程有哪些耗时操纵,以及怎样晋升服从,收缩措施执行的时刻。通过REST API获守信息,由于是行使外部体系提供的API,以是无法在此处晋升服从;取得信息之后理会出有用部门,由于是对特命名目标信息举办理会,以是也无服从晋升的空间。以是,服从可以大幅度晋升的空间在数据库操纵部门以及措施节制部门。下面,分条论述对耗时操纵的改造要领。 1. 针对日记记录的优化 封锁日记记录,可能更他日记输出级别。由于从两台处事器的外部体系D上获取到的信息是沟通的,以是数据库插入操纵会抛出非常,非常信息相同于“Attempt to insert duplicate record”,这样的非常信息跟有用信息的条数相称,有上千条。这种环境是能预推测的,以是可以思量封锁日记记录,可能不封锁日记记录而是更他日记输出 级别,只记录严峻级别(severe level)的错误信息,并将此类操纵的日记级别调解为告诫级别(warning level),这样就不会记录以上非常信息了。本项目行使的是 Java 自带的日记记录类,以下设置文件将日记输出级别配置为严峻级别。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |