用 .NET SDK 方式接入 MQ,需要完成以下准备工作。
注意:
代码里涉及到的 Topic, Producer ID, Consumer ID,需要到 MQ 控制台上创建。 Message Tag 可以完全由应用自定义,具体创建过程可参考 申请 MQ 资源。
使用 MQ 服务的应用程序需要部署在阿里云 ECS 上。
下载 SDK
[backcolor=transparent]Windows .NET 版本:
我们提供的.NET 版本是基于 MQ CPP 版本的托管封装,这样能保证 .NET 完全不依赖于 Windows .NET 公共库,内部采用 C++ 多线程并发处理,保证.NET版本的高效稳定。
在使用 VS 开发 .NET 的应用程序和类库时,默认的目标平台为 “Any CPU”,即运行时可根据 CPU 类型自动选择 X86 或 X64。拥有这样的能力是因为 .NET 编译后的程序集是基于 IL 的。在运行时,CLR 才会将其 JIT 发射为 X86 或 X64 的机器码。而 C 或 C++ 编译生成的 DLL 就是机器码。所以,其平台的决策是在编译时决定的。通过编译选项的设置,我们将 C/C++ 项目编译为 X86 的32位 dll 或者 X64 的 64 位 dll,因此我们提供了包含 VS2015 编译的 release64 位版本 DLL。其他 VS 版本也可以使用。
旧版 Windows .NET SDK 下载
[backcolor=transparent]注意:
- 基于托管封装的 SDK 存在诸多问题,并且无法稳定在 ASP.NET 上正常工作,因此在2016/12/29号开始推出新版本的 SDK。
- 新版 SDK 基于 C# PINVOKE 调用底层的 dll,利用开源软件 SWIG 生成 PINVOKE 封装代码。新版 SDK 相比于托管版本的 SDK 更稳定,部署安装更简单。
- 托管版本的 SDK 不再维护,只提供最后一次的稳定版本。
[backcolor=transparent]新用户或者不考虑升级成本的老用户请下载新版SDK
新版 Windows .NET SDK 下载
下载完成后进行解压,会有如下目录结构:
- example/
- lib/
- demo/
- interface/
- SDK_GUIDE.pdf
- changelog
上面的目录和文件的作用如下:
example: 包含了普通消息发送、Oneway 消息发送、顺序消息发送、普通消息消费、顺序消息消费等例子。
lib:底层的 C++ DLL 相关文件,以及 [backcolor=transparent]Virtual C++ 2015 运行时环境安装包。
-
[backcolor=transparent]
[backcolor=transparent]
64[backcolor=transparent]
/
- [backcolor=transparent] [backcolor=transparent]NSClient4CPP[backcolor=transparent].[backcolor=transparent]lib
- [backcolor=transparent] [backcolor=transparent]ONSClient4CPP[backcolor=transparent].[backcolor=transparent]dll
- [backcolor=transparent] [backcolor=transparent]ONSClient4CPP[backcolor=transparent].[backcolor=transparent]pdb
- [backcolor=transparent] vc_redist[backcolor=transparent].[backcolor=transparent]x64[backcolor=transparent].[backcolor=transparent]exe
SDK_GUIDE.pdf: SDK 环境准备文档和 FAQ。
changelog: 新版本发布解决的问题和引入的新特性列表。
inteface: 封装 PINVOKE 调用的代码,需要包含到用户项目代码中。
NET SDK 配置说明
[backcolor=transparent]Visual Studio 2015 使用 .NET SDK 配置说明[list=1]
使用 [backcolor=transparent]Visual Studio 2015 创建自己的项目。