RocketMQ.Client 0.0.13-SNAPSHOT

This is a prerelease version of RocketMQ.Client.
There is a newer version of this package available.
See the version list below for details.
dotnet add package RocketMQ.Client --version 0.0.13-SNAPSHOT
NuGet\Install-Package RocketMQ.Client -Version 0.0.13-SNAPSHOT
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RocketMQ.Client" Version="0.0.13-SNAPSHOT" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RocketMQ.Client --version 0.0.13-SNAPSHOT
#r "nuget: RocketMQ.Client, 0.0.13-SNAPSHOT"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install RocketMQ.Client as a Cake Addin
#addin nuget:?package=RocketMQ.Client&version=0.0.13-SNAPSHOT&prerelease

// Install RocketMQ.Client as a Cake Tool
#tool nuget:?package=RocketMQ.Client&version=0.0.13-SNAPSHOT&prerelease

The .NET Implementation of Apache RocketMQ Client

Here is the .NET implementation of the client for Apache RocketMQ.

Supported .NET Versions

Due to the release of .NET 5 in 2020, which unified .NET Framework and .NET Core, and has gradually become the mainstream platform for .NET development, the RocketMQ client will support .NET 5 and later versions.

See more details about .NET 5 from Introducing .NET 5.

Architecture

The client would be developed using the protocols outlined in rocketmq-apis and built on gRPC-dotnet, leveraging Protocol Buffers for data serialization and deserialization during transmission.

Quickstart & Build

dotnet add package RocketMQ.Client

You can obtain the latest version of RocketMQ.Client from NuGet Gallery. To assist with getting started quickly and working with various message types and clients, we offer examples here.

Layout of this project roughly follows this guide . The solution contains a class library, a unit test module and an example console module. Assuming you are at the home of this repository:

# build the project
dotnet build
# run unit tests
dotnet test -l "console;verbosity=detailed"

Logging System

We use NLog as our logging implementation. Similar to the Java binding, we allow the use of environment variables to customize the related configuration:

  • rocketmq.log.level: Log output level, default is INFO.
  • rocketmq.log.root: The root directory of the log output. The default path is $HOME/logs/rocketmq, so the full path is $HOME/logs/rocketmq/rocketmq-client.log.
  • rocketmq.log.file.maxIndex: The maximum number of log files to keep. The default is 10, and the size of a single log file is limited to 64 MB. Adjustment is not supported yet.

Specifically, by setting mq.consoleAppender.enabled to true, you can output client logs to the console simultaneously if you need debugging.

Publishing Steps

  1. Open the command prompt, and change the directory to the project folder that you want to package.
  2. Run the dotnet pack --configuration Release command. This will create a NuGet package in the bin/Release folder of the project.
  3. To upload the package to NuGet, go to the NuGet website and sign in. Click on the "Upload" button and select the package file from the bin/Release folder.
  4. Follow the instructions on the website to complete the upload process. Once the package is uploaded, it will be available for others to download and use.
Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on RocketMQ.Client:

Package Downloads
ToolNET.AliyunRocketMQ.SDK

阿里云RocketMQ消息队列SDK/生产者、消费者/普通消息、定时消息、延时消息、顺序消息

Lingsen.Infra.RocketMQ

该库是一个集成了 RocketMQ 客户端的库,使得在应用程序中使用消息队列变得轻松而高效。通过这个封装,你可以方便地建立生产者和消费者,实现异步消息通信,同时充分利用 RocketMQ 的强大功能。 主要特点: - 提供简洁易用的 API,简化消息的发送和接收。 - 全面支持 RocketMQ 的特性,包括顺序消息、事务消息等。 - 封装了连接管理,处理底层连接和通信细节。 - 异常处理和错误日志,确保代码的可靠性。 - 提供了可扩展性,允许根据具体需求进行个性化定制。 通过这个封装,你可以快速将 RocketMQ 集成到你的应用程序中,实现高效的消息传递和灵活的异步通信。

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
5.1.1-rc1 523 5/11/2023
5.1.0 6,522 3/20/2023
5.1.0-rc1 462 3/17/2023
0.0.17-rc2 451 3/16/2023
0.0.17-rc1 442 3/16/2023
0.0.16-SNAPSHOT 466 3/16/2023
0.0.15-SNAPSHOT 422 3/16/2023
0.0.14-SNAPSHOT 456 3/15/2023
0.0.13-SNAPSHOT 420 3/15/2023
0.0.12-SNAPSHOT 415 3/15/2023
0.0.11-SNAPSHOT 434 3/8/2023
0.0.10-SNAPSHOT 453 3/8/2023
0.0.9-SNAPSHOT 476 3/7/2023
0.0.8-SNAPSHOT 461 3/6/2023
0.0.7-SNAPSHOT 466 3/6/2023
0.0.6-SNAPSHOT 446 3/2/2023
0.0.5-SNAPSHOT 447 3/2/2023
0.0.4-SNAPSHOT 477 3/2/2023
0.0.3-SNAPSHOT 465 3/2/2023
0.0.2-SNAPSHOT 457 3/2/2023
0.0.1-SNAPSHOT 463 3/1/2023