【周刊】 JDK1.7中HashMap死环问题及JDK1.8中对HashMap的优...

一、JDK1.7中HashMap扩容死锁问题我们首先来看一下JDK1.7中put方法的源码我们打开addEntry方法如下,它会判断数组当前容量是否已经超过的阈值,例如假设当前的数组容量是16,加载因子为0.75,即超过了12,并且刚好要插入的索引处有元素,这时候就需要进行扩容操作,可以看到resize扩容大小是原数组的两倍,仍然符合数组的长度是2的指数次幂我们再进入resize方法如下,它首先会对...

【周刊】 Dubbo应用服务迁移到Kubernetes集成方案

Dubbo应用迁移到docker的问题Dubbo是阿里开源的一套服务治理与rpc框架,服务的提供者通过zookeeper把自己的服务发布上去,然后服务调用方通过zk获取服务的ip和端口,dubbo客户端通过自己的软负载功能自动选择服务提供者并调用,整个过程牵涉到的三方关系如下图所示。在正常的情况下,这三方都在同一个互通的网段,provider提供给zk的就是获取到的本机地址,consumer能访问到...

MySQL

mysqldump命令 --single-transaction 参数的作用

5 0

--single-transaction 参数的作用,设置事务的隔离级别为可重复读,即REPEATABLE READ,这样能保证在一个事务中所有相同的查询读取到同样的数据,也就大概保证了在dump期间,如果其他innodb引擎的线程修改了表的数据并提交,对该dump线程的数据并无影响,在这期间不会锁...

阅读全文
ActiveMQ消息队列从入门到实践(3)—通过ActiveMQ收发消息
ActiveMQ

ActiveMQ消息队列从入门到实践(3)—通过ActiveMQ收发消息

41 0

在MQ中,消息模型有两种,一种是队列(Queue),一种是主题(Topic)。队列是Point-To-Point的,队列中的消息,仅能被消费一次。主题是PubSub模型,主题中的消息,可以由多个订阅者消费;订阅者只能消费它订阅以后的消息。这是遵循的JMS规范。1.1 收发消息对象创建过程如上图所示,...

阅读全文