zoukankan      html  css  js  c++  java
  • rocketmq client for c#

    基于ikvm的rocketmq的c#客户端,由于阿里对c#不敏感,对这方面的东西缺少。因为工作需要弄了一个,分享给大家 https://github.com/franknew/RocketMQ-Client

    如何使用:

    1.添加引用

    IKVM.OpenJDK.Charsets.dll
    IKVM.OpenJDK.Core.dll
    IKVM.OpenJDK.Jdbc.dll
    IKVM.OpenJDK.Management.dll
    IKVM.OpenJDK.Security.dll
    IKVM.OpenJDK.SwingAWT.dll
    IKVM.OpenJDK.Text.dll
    IKVM.OpenJDK.Util.dll
    IKVM.Runtime.dll
    netty-all-4.0.36.Final.dll
    rocketmq-client-4.2.0-incubating.dll
    rocketmq-common-4.2.0-incubating.dll
    rocketmq-remoting-4.2.0-incubating.dll
    slf4j-api-1.7.5.dll
    fastjson-1.2.12.dll
    View Code

    2.生产消息

    DefaultMQProducer p = new DefaultMQProducer("test");
    p.setNamesrvAddr("192.168.100.3:9876");
    p.start();
    var data = Encoding.UTF8.GetBytes(txbMessage.Text);
    com.alibaba.rocketmq.common.message.Message m = new com.alibaba.rocketmq.common.message.Message("defaulttopic1", data);
    p.send(m);
    p.shutdown();
    View Code

    3.消费消息

    DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("test");
    consumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_FIRST_OFFSET);
    consumer.setNamesrvAddr("192.168.100.3:9876");
    consumer.subscribe("defaulttopic", "*");
    consumer.registerMessageListener(new TestListener());
    consumer.start();
    View Code

    4.推送消息的监听器

    public class TestListener : MessageListenerConcurrently
        {
            public ConsumeConcurrentlyStatus consumeMessage(List list, ConsumeConcurrentlyContext ccc)
            {
                for (int i = 0; i < list.size(); i++)
                {
                    var msg = list.get(i) as Message;
                    byte[] body = msg.getBody();
                    var str = Encoding.UTF8.GetString(body);
                    if (body.Length == 2 && body[0] == 0 && body[1] == 0)
                    {
                        
                        //System.out.println("Got the end signal");
                        continue;
                    }
    
                }
                return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;
            }
        }
    View Code

     建议安装JDK1.7及以上版本

  • 相关阅读:
    概述各种事务隔离级别发生的影响
    linux内核的经典书籍
    sso 登录,网页跳转的实现方式
    初探移动网站的架构和设计
    C# PrintDocument 打印
    .Text分页技术(1)分页的存储过程分析
    SQL2008使用CTE递归查询批量插入500万数据
    自己写的Web服务器
    OMCS 语音视频框架
    ESFramework4.x
  • 原文地址:https://www.cnblogs.com/WindBlog/p/7299502.html
Copyright © 2011-2022 走看看