这次参加了阿里中间件比赛,确实学到了很多,最重要的一点,开阔了自己的视野,让自己对开源的项目跟感兴趣了,以后有时间了要多看看开源的一下项目。开源改变世界,这只是我的看法。好了,今天主要来聊聊这次比赛的三个个开源项目。
Jstorm
Jstorm主要是一个实时计算的分布式框架,核心的概念主要Nimbus,Worker,Executer,Spout,Bolt,Tuple,Stream. 整体依赖于zookeeper来进行管理。如果只是想尝试的话,自己可以将它们装到一台虚拟机上面,内存稍微要大一点,当然你执行代码的时候只有进行本地模式来进行运行了。因为就一台机子。配置的话,按照比赛给的文档很好进行配置。具体的storm.yaml文件的设置,可以参考我之前的写的博客。
RocketMQ
RocketMq则是一个消息中间件,消息的话,你可以把它理解为一条数据,这些数据可以堆积在RocketMq消息中间件中,通常有比如消息产生者将产生的数据放入到RocketMq中去,然后由消息消费者将消息取出,然后做相应的业务处理。这次比赛中的数据则是双十一的订单消息和支付的消息。然后我们编写的程序进行消息的抽取即可。配置的话直接下载好RocketMq的包,启动的时候,要指定好IP,可能会报错。比如,进入解压完之后的包中,进入bin文件夹中,有些人可能下载的是zip,但是这里我下载的tar文件。然后进行,比如我这里本机IP是192.168.2.190. 然后我执行的命令,启动mqnamesrv,启动的时候,制定以下Ip,后面加上-n 192.168.2.190.同样,启动broker的时候,后面也要加上-n 192.168.2.190:9876,这样启动完broker之后,就可以了。说实话,这玩意没怎么配置,直接从网上下载好了tar包之后,启动的时候,指定好IP和端口就可以了。启动就可以了。你在代码中也要指定好IP.
Tair
Tair则是一个分布式的key,value的数据库,具体的配置可以参考中间件比赛的论坛里面的详细配置,这里用的是centos6.5来进行配置,一般像服务器的配置,还是用centos来进行配置比较好,可以能用ubuntu配置的话,可能会出现很多的问题。Tair是一个Key/Value结构数据的解决方案,它默认支持基于内存和文件的两种存储方式,分别和我们通常所说的缓存和持久化存储对应。
中间件第一赛季的题主要就用到这三个开源软件,可以好好看一下相关的知识,主要是看Jstorm。