03 2019 档案
摘要:序 死锁在平时开发,尤其是多并发编程时是要避免,不过要自己刻意写个死锁还不一定容易,下面参考别人代码写一个 代码 说明 o1、o2是static类型属于整个累,所以当定义deadLock1、deadLock2时是公用o1、o2的 deadLock1设置flag=1,先锁住o1,然后睡800ms,此时
阅读全文
摘要:介绍 DK1.5之后,提供了读写锁ReentrantReadWriteLock,读写锁维护了一对锁:一个读锁,一个写锁。通过分离读锁和写锁,使得并发性相比一般的排他锁有了很大提升。在读多写少的情况下,读写锁能够提供比排他锁更好的并发性和吞吐量。 源码定义 code 测试1 输出 结论:读读共享 测试
阅读全文
摘要:原理 生产者在仓库没有满的时候进行生产,满了后等待 消费者在仓库有存货事新型消费,没货是等待 示例 #Phone public class Phone { private int id; public Phone() { id = new Random().nextInt(); } public i
阅读全文
摘要:目标 部署一个单节点的ElasticSearch集群 依赖 java环境 安装 下载、解压 配置 config/elasticsearch.yml 参数含义 cluster.name 用来指定集群的名称。如果不指定,则默认是 elasticsearch。 node.name 用来指定当前节点的名称,
阅读全文
摘要:需求 github上整个工厂比较大,下起来费劲,如何只下载一个单独的文件件呢? 方法一 以:https://github.com/eugenp/tutorials为例,下载其中的 spring-kafka, 进入目录齐地址为: 转换: 把tree/master 修改为 trunk转化为svn地址,即
阅读全文
摘要:1.zookeeper在Kafka中的作用 Kafka实用zookeeper保存集群的元数据和消费者信息。Kafka发行版了自带Zookeeper,可以直接从脚本安装,不过安装一个完整版的Zookeeper也很easy。 2.安装zookeeper 下载 zookeeper-3.4.13.tar.g
阅读全文