本文介绍两种主线程等待子线程的实现方式,以5个子线程来说明:
1、使用Thread的join()方法,join()方法会阻塞主线程继续向下执行。
2、使用java.util.concurrent中的CountDownLatch,是一个倒数计数器。初始化时先设置一个倒数计数初始值,每调用一次countDown()方法,倒数值减一,他的await()方法会阻塞当前进程,直到倒数至0。
join方...
分类:
编程语言 时间:
2014-06-19 11:29:16
阅读次数:
262
在本机上对线下HBase集群做了初步的写性能测试,下面对测试内容做详细说明。
批量写性能提升不少
线上应用最好是禁用buffer刷写功能的,即每一个Put一次RPC写,不过看到这种情况下写速度慢,考虑到机器、网络环境的差别的话,估计能上1K
启用buffer刷写功能的话,要避免未flush的put记录丢失。(HTable在close的时候最后是会自动flush,我们在写服务节点故障的时候也需要flush一次)
Rowkey哈希后性能有小量提升
Rowkey Hash之后对写性能的确有小量提升,但如果要...
分类:
其他好文 时间:
2014-06-19 10:16:00
阅读次数:
296
表连接有嵌套循环(nested loop join) 哈希连接(hash join)
排序合并(merge sort join)这三种表连接的应用比例为70%,20%,10%各类连接访问次数差异alter session set
statistics_level=all 这种跟踪方式 显著特点,可以...
分类:
其他好文 时间:
2014-06-16 09:10:15
阅读次数:
199
在多台后台服务器的环境下,我们为了确保一个客户只和一台服务器通信,我们势必使用长连接。使用什么方式来实现这种连接呢,常见的有使用nginx自带的ip_hash来做,我想这绝对不是一个好的办法,如果前端是CDN,或者说一个局域网的客户同时访问服务器,导致出现服务器分配不均衡,以及不能保证每次访问都粘滞...
分类:
其他好文 时间:
2014-06-16 07:24:48
阅读次数:
237
1 left join
左外连接:查询结果以左表数据为准。假如左表有四条数据,右表有三条数据,则查询结果为四条,且都是左表中有的数据。例如:EMP表:SAL表:左连接select*fromEMPLeftjoinSALonEMP.ENAME=SAL.ENAME;左连接,表EMP是主表,因此查询结果是显...
分类:
数据库 时间:
2014-06-16 06:30:58
阅读次数:
246
有这样一个业务场景,需要在2个表里比较存在于A表,不存在于B表的数据。表结构如下:T_SETTINGS_BACKUP | CREATE TABLE
`T_SETTINGS_BACKUP` ( `FID` bigint(20) NOT NULL AUTO_INCREMENT, `FUSERID` .....
分类:
数据库 时间:
2014-06-12 21:32:15
阅读次数:
453
Object
class中,也定义了toString()这个方法,因此所有的class也都继承这个方法。默认是传回这个对象完整类别名称,后面接一个"@",及一个不带正副号的十六进制hash码。
分类:
编程语言 时间:
2014-06-12 19:36:13
阅读次数:
223
.Net的字符串其实还是有很多东西可以写的。但是最近在学习SQL
Server,只好先做下最近学习到的一些巧用,妙用之类的东西。
巧用String.Join拼接字串数组,字符串集合为字符串。如果在之前,一个foreach早就敲上去了。虽然效率差多,但是少了个foreach,还是美观不少的。cla.....
分类:
Web程序 时间:
2014-06-12 09:11:35
阅读次数:
244