摘要: 在JAVA中,线程可以使用定制的代码来管理,应用也可以利用线程池。在使用线程池时,有一个因素非常关键:调节线程池的大小对获得最好的性能至关重要。线程池的性能会随线程池大小这一基本选择而有所不同,在某些条件下,线程池过大对性能也有很多不利的影响。 所有线程池的工作方式本质是一样的:有一个任务队列,一定数量的线程会从该任务队列获取任务然后执行。任务的结果可以发回客户端,或保存到数据库,... 阅读全文
posted @ 2017-02-24 10:10 JAVA日知录 阅读(17527) 评论(2) 推荐(0) 编辑
摘要: P6Spy 是针对数据库访问操作的动态监测框架(为开源项目,项目首 页:www.p6spy.com)它使得数据库数据可无缝截取和操纵,而不必对现有应用程序的代码作任何修改。P6Spy 分发包包括P6Log,它是一 个可记录任何 Java 应用程序的所有JDBC事务的应用程序。其配置完成使用时,可以进 阅读全文
posted @ 2016-12-30 10:58 JAVA日知录 阅读(4680) 评论(0) 推荐(0) 编辑
摘要: CountDownLatch CountDownLatch是一个非常实用的多线程控制工具类,这个工具通常用来控制线程等待,它可以让某一个线程等待直到倒计时结束,再开始执行。在这里指CountDownLatch.await()方法在倒计数为0之前会阻塞程序运行。 CountDownLatch 的作用和 阅读全文
posted @ 2016-12-02 09:07 JAVA日知录 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 线程通信概念: 线程是操作系统中独立的个体,但这些个体如果不经过特殊的处理就不能成为一个整体,线程之间的通信就成为整体的必用方式之一。当线程存在通信指挥,系统间的交互性会更强大,在提高CPU利用率的同时还会对线程任务在处理过程中进行有效的把控与监督。 为了支持多线程之间的协作,JDK提供了两个非常重 阅读全文
posted @ 2016-11-30 11:21 JAVA日知录 阅读(4379) 评论(0) 推荐(0) 编辑
摘要: 引言 对于下面的Oracle分页如何优化该段语句: SELECT * FROM (SELECT A.*, ROWNUM RN FROM (SELECT * FROM task_log order by taskid desc) A WHERE ROWNUM = 21; 第一部分: 判断并获取问题SQL? 问题sql主要有以下两个表象 系统... 阅读全文
posted @ 2016-11-30 08:48 JAVA日知录 阅读(792) 评论(1) 推荐(2) 编辑
摘要: Oracle主键常用的分为UUID和自增长int两种,下面简单说下各自的优缺点: UUID的优点 1、生成方便,不管是通过sys_guid() 还是java的uuid都能很方便的创建UUID。 2、适合批量数据中的插入和更新操作。 3、跨服务器数据合并非常方便。 INT自增长的优点 1、占用空间小 阅读全文
posted @ 2016-11-29 11:19 JAVA日知录 阅读(1099) 评论(2) 推荐(0) 编辑