最近一段时间才开始关注云栖社区的公众号,在两周前看到要在深圳科兴科学园办一场Rocket MQ的Meetup。因为从来没有参加过这种线下活动,而且对Rocket MQ比较感兴趣,所以就立即报名参加。

报完名就把这件事给忘了,直到周五收到短信才又想起来,周六中午才决定要去。

回顾Meetup

我一开始想着掐点进场,后来还是提前半个小时就到了地方。幸亏早到了,因为这次想要参加的人非常地多,虽然会议室很大,但座位还是不够。后面到的人,只能是坐小板凳,挤在四周的过道里。

简单回顾

Meetup在两点钟准时开始,第一位分享的嘉宾非常年轻,13年毕业的。年轻归年轻,但是无论是对分享内容的把握,还是口头表达能力,都非常出色。他讲完之后,会让人提问题,提问题的人可以在会议结束之后领一件Rocket MQ的定制T恤。

紧接着,后面还有两位分享嘉宾。等他们都分享完之后,上半场就结束了。主办方还准备了茶点。我因为下午要赶着去亲戚家做客,就直接溜了,下半场就没有参加。

Meetup全程有直播,可以点击链接深圳站Meetup看录像回顾。

现场气氛

有人可能会说,既然网上有直播和录像,为什么还要费劲去现场参加呢?

其实这有点像在电影院看电影跟在家里用电脑看电影,很大的一个区别就是气氛。我晚上回到家用电脑看录像,感觉就完全不一样。

千万别小看气氛,气氛对我们的学习积极性是有很大影响的。举个例子,我们在中学的时候都要上晚自习,即便一整个晚上都不跟其他同学说话交流,学习效率都要比一个人在家自习要高。

这次参加会议的有将近三百个人,听起来不多。但是如果身临现场,看到这么多人坐在一起,每个人的脸上都显现出对技术的兴趣和专注,你真的会有不一样的感受。就像中学生晚上路过一个坐满人又非常安静的自习室那样,他心里唯一的想法就是:“回去之后一定要好好学习。”

高质量交流

参加Meetup的好处还有很多,其中之一就是可以获取到高质量的信息渠道。第一位分享嘉宾就在一开始推荐了他在知乎上写的专栏——《Rocket MQ详解》。我用了一个晚上的时间,把它们都打印出来看完,收获非常大。

Meetup有一个微信群,大家没有在里面讨论技术的问题,但是会分享一些资源和连接,例如分享嘉宾的PPT,例如现场直播的录像地址。另外,几乎每个分享嘉宾都会在讲演的一开始公布自己的联系方式,只要在电邮的一开头说“我听过你在某年某月某日在某地Meetup的分享,收获非常大,谢谢你”,再想寻求帮助和合作就会比较容易一些。

到了现场,面对面的交流机会要多得多,也要好得多。通过网络联系这些技术大牛,他们可能会因为工作忙而忽略这些消息,也可能会因为不认识你而不愿意回应。但是Meetup就不一样,他们来到现场本来就是要分享和交流的,只要你友好而礼貌地跟他们搭话,他们都会非常愿意跟你讨论。

为什么选择Rocket MQ

Message Queue,消息队列是后台开发不可缺少的一个模块。只要你做的是跟后台开发相关的工作,就不能对它不了解。现在比较流行的开源MQ组件有好几个,其中比较热门,也是我就职公司采用的Rabbit MQ。

那为什么我还要花时间去学习和研究Rocket MQ呢?

开源

首先第一条理由就是,Rocket MQ跟Rabbit MQ一样,都是开源项目。选择开源项目有哪些好处就不多说了,懂的都懂。虽然这跟Rabbit MQ对比不是一个优势点,但起码不是劣势点。

基于Java

众所周知,Rabbit MQ是用Erlang语言写的。作为Java开发人员,要想对它的内核有一个本质上的理解就比较困难,学习一门新语言的代价不小。如果还想对这个项目进行定制化改造,那就更是难上加难了。

Rocket MQ是基于Java语言的开源项目,对于我们来说,就有天然的巨大的优势。看Java源码,总比看其他语言写的源码要轻松地多。如果想要根据自家公司业务的需要进行优化、改进,都会简单得多。

经受过考验

Rocket MQ一开始是阿里巴巴的内部项目,经过了多年双十一的考验。淘宝天猫双十一,是中国互联网应用场景中高并发、高可用、分布式的经典案例。所以说,Rocket MQ的实用性是显而易见的。

在阿里巴巴把这个项目捐献给Apache之后,用了大概十个月左右的时间就成为顶级项目。这就说明,它的开源性已经得到了全球最权威组织的认可。

学习一个开源项目,并不是一件很轻松的事,需要付出时间和精力。因此,选择一个经受过多方考验的开源项目,是一个比较明智的选择。

参加到开源当中去

其实我一直对开源社区很感兴趣,但是一直都没能真正参与到里面。相信有很多人都跟我一样,有想法,但是还没付诸实践。

在分享会中,其中一位嘉宾提到了如何参与到开源项目当中去。首先你要使用这个开源项目,例如Rocket MQ,成为Rocket MQ的User。在深度使用之后,你会发现一些问题,例如bug,就可以提交上去。如果被采纳之后,你就很可能成为Rocket MQ的Contributer。如果你对项目非常熟悉,工程能力比较强,也愿意花时间帮忙修bug或者写一两个新特性,那么在完成之后,你就有机会成为Rocket MQ的Commiter。随着你对项目的贡献越来越大,最终有可能成为Rocket MQ的PMC。

除了以上提到的角色之外,还有帮忙写文档的Writter,帮忙做测试的Tester,还有负责安全的小组等等。

据我所知,现在Rocket MQ还没有中文文档。我打算自己试着在github上开一个项目,自行翻译。如果有感兴趣的同学可以一起参加进来。如果发展得不错的话,就可以联系Rocket MQ的委员会,看看有没有机会可以为开源项目做贡献。

当然了,现在还只是一个想法,太长远的事情还不敢太多想。但是,玩一玩总是没有坏处的。

我有一个公众号,经常会发一些看书思考过后写的文章。如果你喜欢我的文字,可以用微信搜索“李文业的思考笔记”或者扫描二维码关注。

参加完Rocket MQ Meetup深圳站,回顾和想法的更多相关文章

  1. 干货满满,腾讯云+社区技术沙龙 Kafka Meetup 深圳站圆满结束

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 云+导语:4月22日,由腾讯云和 Kafka 社区主办.开源中国协办的腾讯云+社区技术沙龙 Kafka Meetup 深圳站在腾讯大厦举行, ...

  2. 云+社区技术沙龙:Kafka meetup 深圳站报名开启

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 如果说 2018 年是技术大爆炸年,那么 Apache Kafka 绝对是其中闪亮的新星. 自Kafka 从首发之日起,已经走过了快八个年头 ...

  3. 大咖云集!Kubernetes and Cloud Native Meetup 深圳站开始报名!

    由阿里技术生态联合 CNCF 官方共同出品的 Kubernetes & Cloud Native Meetup 将在 8 月 31 日来到深圳.届时,阿里云.蚂蚁金服高级技术专家将携手来自国内 ...

  4. GIAC2018全球互联网架构大会深圳站盛况回顾,定格精彩瞬间!

    6月1日至2日,由知名软件培训公司msup和高可用架构联合推出的GIAC全球互联网架构大会在深圳华侨城洲际大酒店盛大召开.来自国内外顶级互联网公司.诸多著名科技图书作者在内的71名海内外著名专家与现场 ...

  5. PCB 所建不凡 AWS 技术峰会2018 • 深圳站 2018.9.20

    在去[AWS 技术峰会2018 • 深圳站]之提前并没有AWS提前做功课,主要PCB这行业基本自己搭服务器搭应用,不会买云服务器.由于没用过企业级的云服务器,对云这方面还是了解还是非常有限的. 市面上 ...

  6. GOPS2017全球运维大会深圳站 出席嘉宾盘点!

    去年,GOPS全球运维大会在深圳出发,当时门票提前几周收盘,2017年,承载着运维人的期望,GOPS全球运维大会再次来到了深圳.第六届GOPS2017全球运维大会深圳站(本次)将于2017年4月21日 ...

  7. GOPS2017全球运维大会 • 深圳站 历届金牌讲师精选亮相

    GOPS2017全球运维大会 • 深圳站将于2017年4月21日-22日在深圳举行,GOPS2017报名平台:活动家! 快捷报名通道:http://www.huodongjia.com/event-2 ...

  8. Unity User Group深圳站——Timeline & Cinemachine分享

    报名说明:UUG深圳站,2月分享活动正式启动,1月29日中午12:00前报名可获赠Unity精美纪念礼物一份~ 关于Unity Unity 是一款多平台的综合型游戏开发工具,它的出现对蓬勃发展的全球游 ...

  9. 第十二届GOPS全球运维大会2019深圳站即将开幕

    第十二届 GOPS 全球运维大会深圳站 会议召开时间:2019年4月12日-13日 会议召开地点:深圳圣淘沙酒店(翡翠店) 会议主办单位:高效运维社区 票务合作伙伴:活动家 会议报名地址:https: ...

随机推荐

  1. Longest Common Substring(最长公共子序列)

    Longest Common Substring Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Ot ...

  2. Java中方法的重载和重置(覆盖)的区别

    简单来说,重载就是在同一类中允许同时存在一个以上的同名方法,只要这些方法的参数个数或类型不同即可,而重置(覆盖)是子类重新定义父类中己经定义的方法,即子类重写父类方法. 方法的重载 方法的重载就是在同 ...

  3. mysql启动时报错:Starting MySQL... ERROR! The server quit without updating PID file (/opt/mysql/data/mysql.pid) 的解决方法

    出现问题的可能性 1.可能是/opt/mysql/data/数据目录mysql用户没有权限(修改数据目录的权限) 解决方法 :给予权限,执行  "chown -R mysql.mysql / ...

  4. JavaScript sort() 方法详解

    定义和用法 sort() 方法用于对数组的元素进行排序. 语法 arrayObject.sort(sortby) 参数 描述 sortby 可选.规定排序顺序.必须是函数. 返回值 对数组的引用.请注 ...

  5. linux中安装Python3.x

    首先了解几句Linux命令是必须的.例如 ls, vi, wget, rm, mv, cd, su, sudo, chmod, tar等等一些常用的语句命令是有必要知道它的用法的. 安装Python3 ...

  6. SpringAop源码情操陶冶-JdkDynamicAopProxy

    承接前文SpringAop源码情操陶冶-AspectJAwareAdvisorAutoProxyCreator,本文在前文的基础上稍微简单的分析默认情况下的AOP代理,即JDK静态代理 JdkDyna ...

  7. 线上Mysql数据库崩溃事故的原因和处理

    前文提要 承接前文<一次线上Mysql数据库崩溃事故的记录>,在文章中讲到了一次线上数据库崩溃的事件记录,建议两篇文章结合在一起看,不至于摸不着头脑. 由于时间原因,其中只讲了当时的一些经 ...

  8. 一:Tomcat 服务器 在45秒内未启动成功

    myeclipse或者eclipse中 tomcat 启动超时怎么办?     修改文件     找到Eclipse的工作空间\.metadata\.plugins\org.eclipse.wst.s ...

  9. android wear开发之:建立可穿戴设备的应用 - Building Apps for Wearables

    注:本文内容来自:https://developer.android.com/training/building-wearables.html 翻译水平有限,如有疏漏,欢迎批评指教. 译:山人 建立可 ...

  10. requests和BeautifulSoup

    一:Requests库 Requests is an elegant and simple HTTP library for Python, built for human beings. 1.安装 ...