庄周梦蝶

生活、程序、未来
   :: 首页 ::  ::  :: 聚合  :: 管理

淘宝开源MQ——metamorphosis的github分支

Posted on 2012-03-16 10:39 dennis 阅读(8026) 评论(12)  编辑  收藏 所属分类: javaHadoop与分布式

    上周我在淘宝的同事开源了一个消息中间件metamorphosis,放在了淘蝌蚪上。我从淘蝌蚪的svn上fork了一个github的分支,放在了这里:
 1.主体工程:https://github.com/killme2008/Metamorphosis
    
    主要做了一些pom文件的简化,发布1.4.0.2版本到maven central仓库,并且写了几个简单的入门文档,提供了一个完整打包可运行的下载,有兴趣的自己看github页面吧。 Wiki文档放在:
    https://github.com/killme2008/Metamorphosis/wiki
   
     客户端Maven依赖包括,可自行选择添加:
<dependency>
    <groupId>com.taobao.metamorphosis</groupId>
    <artifactId>metamorphosis-client</artifactId>
    <version>1.4.0.2</version>
</dependency>

<dependency>
    <groupId>com.taobao.metamorphosis</groupId>
    <artifactId>metamorphosis-client-extension</artifactId>
    <version>1.4.0.2</version>
</dependency>

<dependency>
    <groupId>com.taobao.metamorphosis</groupId>
    <artifactId>storm-metamorphosis-spout</artifactId>
    <version>1.0.0</version>
</dependency>

     ps.我开通了新浪微博,有兴趣相互关注下:http://weibo.com/fnil,你看,偏见是可以改变的。

评论

# re: 淘宝开源MQ——metamorphosis的github分支  回复  更多评论   

2012-03-19 09:12 by tony.li.fly@gmail.com
你看,偏见是可以改变的。
:)

# re: 淘宝开源MQ——metamorphosis的github分支[未登录]  回复  更多评论   

2012-03-19 09:41 by changedi
你不在淘宝了?

# re: 淘宝开源MQ——metamorphosis的github分支  回复  更多评论   

2012-03-22 21:25 by dennis
@changedi
嗯,上个月离职了

# re: 淘宝开源MQ——metamorphosis的github分支  回复  更多评论   

2012-05-10 15:48 by xnang
2012-05-10 15:46:21 [ pool-2-thread-1:15156 ] - [ ERROR ] 获取ZKLoadRebalanceListener失败
java.util.concurrent.ExecutionException: java.lang.NullPointerException
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
at java.util.concurrent.FutureTask.get(FutureTask.java:83)
at com.taobao.metamorphosis.client.consumer.ConsumerZooKeeper.getBrokerConnectionListener(ConsumerZooKeeper.java:100)
at com.taobao.metamorphosis.client.consumer.ConsumerZooKeeper.commitOffsets(ConsumerZooKeeper.java:89)
at com.taobao.metamorphosis.client.consumer.SimpleMessageConsumer$1.run(SimpleMessageConsumer.java:113)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NullPointerException
at com.taobao.metamorphosis.client.consumer.ConsumerZooKeeper$1.call(ConsumerZooKeeper.java:169)
at com.taobao.metamorphosis.client.consumer.ConsumerZooKeeper$1.call(ConsumerZooKeeper.java:165)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at com.taobao.metamorphosis.client.consumer.ConsumerZooKeeper.registerConsumer(ConsumerZooKeeper.java:183)
at com.taobao.metamorphosis.client.consumer.SimpleMessageConsumer.completeSubscribe(SimpleMessageConsumer.java:212)
at com.duokoo.Remove.main(Remove.java:42)

# re: 淘宝开源MQ——metamorphosis的github分支[未登录]  回复  更多评论   

2012-05-10 15:54 by dennis
@xnang

无背景,无程序,请问你让我怎么帮你看?

# re: 淘宝开源MQ——metamorphosis的github分支  回复  更多评论   

2012-05-10 16:02 by xnang
安装你说的步骤搭建了服务,所有的代码都是example里面的,生产端可以正常写入数据,返回类似Send message successfully,sent to -1-0 这样的提示。消费端通过SyncConsumer这个类只能取出部分数据,比如写入5条只能取到部分几条使用AsyncConsumer.java
log4j在debug模式下出现了上面评论的那个异常错误

# re: 淘宝开源MQ——metamorphosis的github分支[未登录]  回复  更多评论   

2012-05-10 16:35 by dennis
@xnang

从堆栈来看,明显不是example的代码,你自己写的或者修改的吧。

从错误来看,应该是因为消费者的zk配置问题,请看example代码。

SyncConsumer不是只能取出部分数据,可能是因为你没有递增offset,或者服务端延迟force的问题。

# re: 淘宝开源MQ——metamorphosis的github分支  回复  更多评论   

2012-05-10 17:24 by xnang
能告诉下你的邮箱么?我们发邮件交流吧。谢谢!

# re: 淘宝开源MQ——metamorphosis的github分支[未登录]  回复  更多评论   

2012-05-10 17:26 by dennis
@xnang
killme2008@gmail.com,可以的话gtalk

# re: 淘宝开源MQ——metamorphosis的github分支  回复  更多评论   

2012-05-10 17:58 by xnang
感谢博主的指导,调试通过了。博主真的不错,很耐心。再次感谢

# re: 淘宝开源MQ——metamorphosis的github分支  回复  更多评论   

2012-10-26 11:20 by bugaosuni
准备启动服务器,配置为:MetaConfig [brokerId=0, dataPath=d:metamorphosisdatafile
, deletePolicy=delete,168, diamondZKDataId=metamorphosis.zkConfig, diamondZKGrou
p=DEFAULT_GROUP, getProcessThreadCount=80, hostName=null, maxSegmentSize=1073741
824, maxTransferSize=1048576, numPartitions=10, putProcessThreadCount=80, server
Port=8123, slaveGroup=meta-slave-group, slaveId=-1, statTopicSet=[mytopic], topi
cDeletePolicy=, topics=[mytopic], unflushInterval=10000, unflushThreshold=1000,
zkConfig=com.taobao.metamorphosis.utils.ZkUtils$ZKConfig@1630ab9]
Exception in thread "main" com.taobao.metamorphosis.server.exception.Metamorphos
isServerStartupException: Register broker to zk failed
at com.taobao.metamorphosis.server.assembly.MetaMorphosisBroker.start(Me
taMorphosisBroker.java:206)
at com.taobao.metamorphosis.EnhancedBroker.start(EnhancedBroker.java:46)

at com.taobao.metamorphosis.ServerStartup.main(ServerStartup.java:47)
Caused by: org.I0Itec.zkclient.exception.ZkNodeExistsException: org.apache.zooke
eper.KeeperException$NodeExistsException: KeeperErrorCode = NodeExists for /meta
/brokers/ids/0/master
at org.I0Itec.zkclient.exception.ZkException.create(ZkException.java:55)

at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:685)
at org.I0Itec.zkclient.ZkClient.create(ZkClient.java:304)
at org.I0Itec.zkclient.ZkClient.createEphemeral(ZkClient.java:328)
at com.taobao.metamorphosis.utils.ZkUtils.createEphemeralPath(ZkUtils.ja
va:82)
at com.taobao.metamorphosis.server.BrokerZooKeeper.registerBrokerInZk(Br
okerZooKeeper.java:188)
at com.taobao.metamorphosis.server.assembly.MetaMorphosisBroker.start(Me
taMorphosisBroker.java:201)
... 2 more
Caused by: org.apache.zookeeper.KeeperException$NodeExistsException: KeeperError
Code = NodeExists for /meta/brokers/ids/0/master
at org.apache.zookeeper.KeeperException.create(KeeperException.java:110)

at org.apache.zookeeper.KeeperException.create(KeeperException.java:42)
at org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:637)
at org.I0Itec.zkclient.ZkConnection.create(ZkConnection.java:87)
at org.I0Itec.zkclient.ZkClient$1.call(ZkClient.java:308)
at org.I0Itec.zkclient.ZkClient$1.call(ZkClient.java:304)
at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:675)
... 7 more
菜鸟一个求指导,是不是哪里配置不对了

只有注册用户登录后才能发表评论。


网站导航: