摘要:
使用Executors工厂类创建线程池 1、使用newCachedThreadPool()方法创建无界线程池 newCachedThreadPool()方法创建的是无界线程池,可以进行线程自动回收,此类线程池中存放线程个数理论值为Integer.MAX_VALUE最大值。 执行结果: pool-1- 阅读全文
摘要:
CyclicBarrier的介绍 类CyclicBarrier不仅有CountDownLatch所具有的功能,还可以是啊县屏障等待的功能,也就是阶段性同步,它在使用上的意义在与可以循环地实现线程要一起做任务的目标,而不是像类CountDownLatch一样,仅仅支持一次线程与同步点阻塞的特性。 Cy 阅读全文
摘要:
CountDownLatch的介绍 类CountDownLatch是同步功能得一个辅助类,使用效果就是给定一个计数,当使用CountDownLatch类的线程判断计数不为0时,则呈wait状态,如果是0则继续运行。 实现等待与继续运行的效果分别需要使用awit()和countDown()方法来进行。 阅读全文
摘要:
Exchanger的介绍 类Exchanger的功能可以使两个线程之间传输数据。 方法exchange()的使用 类Exchanger的功能可以使两个线程之间传输数据。 方法exchange(V x,long timeout,TimeUnit unit)的使用 此方法是指在指定的时间内没有其他线程获 阅读全文
摘要:
Semaphore的介绍 单词Semaphore的中文含义就是信号、信号系统的意思,此类的主要作用就是限制线程并发的数量。 举个例子,一个屋子里有10个人,但只有一个窄门可以出去,这个窄门一次最多只能通过一人,这样就限制了同时出门的人数,同理也就是限制了线程并发的数量,这也就是Semaphore类要 阅读全文
摘要:
概念介绍 Protocol buffers 是google公司的与语言无关、与平台无关的、可扩张的为序列化话结构数据,就像xml一样,办事更加的小巧、快速、简单。Protocol buffers 目前支持语言有Java,Python和C++。 为什么不用XML Protocol buffers在序列 阅读全文
摘要:
本文所使用的环境: 10.6.2.128 centos6.5 10.6.2.129 centos6.5 VIP 为10.6.2.150 要实现的目标: 实现10.6.2.128和10.6.2.129的9998端口的服务通过haproxy负载,并通过keepalived实现高可用。 1、安装hapro 阅读全文
摘要:
1、使用jedis的原生JedisCluster spring的applicationContext.xml配置redis的连接、连接池、jedisCluster Bean redis.xml的配置: jedisCluster的使用: 2、自定义spring工厂类生产jedisCluster Jed 阅读全文
摘要:
1、表的主键、外键必须有索引;2、数据量超过300的表应该有索引;3、经常与其他表进行连接的表,在连接字段上应该建立索引;4、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;5、索引应该建在选择性高的字段上;6、索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;7、复... 阅读全文