对于操作系统来说,协程其实是一种特殊的线程,对于CPU来说,协程是非抢占式(进程和线程是抢占式的),实现机理如下: 有两个function:A, B, A调用B,B要执行一段时间,很晚才返回,A不会因为等B而一直占用CPU,即A是非阻塞的。B返回后,A又能继续执行。神奇的是,A和B又是走在一条独木桥 ...
分类:
其他好文 时间:
2019-04-28 15:35:46
阅读次数:
124
1、查看topic信息 kafka-topics --zookeeper 10.79.2.92:2181/chroot --describe --topic ogg_fab_u 2、创建topic kafka-topics --create --topic dwr_pnl --zookeeper 1 ...
分类:
其他好文 时间:
2019-04-28 15:26:51
阅读次数:
84
1,消息队列解决什么问题 异步处理 应用解耦 流量消峰(高并发、 秒杀) 日志处理...... 2,virtual host 相当于mysql数据库的db,一般以/开头 授权 3,使用java开发rabbitMQ (1) 简单队列 p:消息生产者 红色:消息队列 c:消息消费者 3个对象,生产者、消 ...
分类:
其他好文 时间:
2019-04-27 09:27:38
阅读次数:
144
一、kafka集群搭建 至于kafka是什么我都不多做介绍了,网上写的已经非常详尽了。 1. 下载zookeeper https://zookeeper.apache.org/releases.html 2. 下载kafka http://kafka.apache.org/downloads 3. ...
分类:
其他好文 时间:
2019-04-25 21:30:11
阅读次数:
307
SynchronousQueue是一个不存储元素的阻塞队列。每一个put操作必须等待一个take操作,否则不能继续添加元素。SynchronousQueue可以看成是一个传球手,负责把生产者线程处理的数据直接传递给消费者线程。队列本身并不存储任何元素,非常适合于传递性场景,比如在一个线程中使用的数据 ...
分类:
编程语言 时间:
2019-04-25 18:51:05
阅读次数:
154
Activemq使用教程 解压activmq进入bin\win64 启动activemq.bat 启动成功 浏览器访问http://127.0.0.1:8161 创建maven工程 在pom.xml中添加依赖 创建创建者和发布者 Producer 代码 consumer 代码 开启生产者生产消息 如 ...
分类:
其他好文 时间:
2019-04-24 22:14:22
阅读次数:
164
传说中的多线程(魔鬼)电梯完成啦! 一、程序设计分析与基于度量的程序结构分析 三次电梯都统一地采用了生产者-消费者模型,每次在前一次的基础上进行添加,没有大规模的重构,可以说设计含有一定的可拓展性。 第一次电梯(单部多线程傻瓜调度(FAFS)电梯) 这是第一次接触多线程,十分迷惑。起初实在不知道什么 ...
分类:
编程语言 时间:
2019-04-23 22:41:57
阅读次数:
420
消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成,通过提供消息传递和消息排队模型,它可以在分布式环境下拓展进程间的通信,对于消息中间件,常见的角色大致也就有Producer(生产者).Consumer(消费者) MQ 消息中间件 消息队列 Messag ...
分类:
其他好文 时间:
2019-04-23 17:37:42
阅读次数:
180
一、FAFS电梯设计 这是第一次使用java多线程,主要的问题主要集中在两个方面 1、共享资源的数据同步 2、整体架构 先考虑第一个问题: 数据同步的问题显然可以使用synchronized解决,也就是经典的生产者消费者模型。 但是由于初次接触,对锁机制理解不清,我还探索了一种不那么好的方法——vo ...
分类:
编程语言 时间:
2019-04-23 12:40:02
阅读次数:
144
1. 问题 比如说我们建了一个 topic,有三个 partition。生产者在写的时候,其实可以指定一个 key,比如说我们指定了某个订单 id 作为 key,那么这个订单相关的数据,一定会被分发到同一个 partition 中去,而且这个 partition 中的数据一定是有顺序的。消费者从 p ...
分类:
其他好文 时间:
2019-04-22 00:41:18
阅读次数:
544