背景:
今天review代码,看到这个“AsyncEventBus”时,脑海里翻译了下“异步事件总线”,猜也就是往Bus总线那就是调用喽,自觉看到是import Google.Guava包的,这就不清晰了,好奇心驱动仔细多看了两眼发现是自己盲区的无疑了,那就找补一下吧
概念:
首先就google guava干啥用的,
https://ifeve.com/google-guava/
Google guava 和 Apache commons类似,都是对java语言和类库进行增强的一个扩展库。
guava的诞生是谷歌的java工程师们从日常的工作中提取出的很多高效率的方法集合。Google guava 类库中有一个事件总线组件(EventBus),它提供的消息发布-订阅类库实现了观察者设计模式可以方便的将业务代码方便的解耦。
比如我们可以通过EventBus可以快速的在建立一个进程内消息队列的方案。
因为EventBus是维护在内存中的一个消息队列,所以不支持跨进程使用。
当然,如果你需要的是一个跨进程、分布式的消息队列应该直接采用中间件(RabbitMQ、kafka等)
百度下,很多写的不错的文章,就不重复早轮子了,先link前人后面结合自己坑再补充待续,没补充就是没遇到坑
老哥1:从包的引入到使用代码都贴上来不错,看完几乎就能上手: https://blog.csdn.net/wangxudongx/article/details/104869047
2:快速上手:https://blog.csdn.net/wuyuxing24/article/details/95505102