# aspire-rocketmq **Repository Path**: ymjake/aspire-rocketmq ## Basic Information - **Project Name**: aspire-rocketmq - **Description**: Aspire RocketMQ扩展包 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-02 - **Last Updated**: 2026-05-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Aspire RocketMQ libraries Aspire helpers for RocketMQ hosting and client wiring. ## Packages - `YMJake.Aspire.Hosting.RocketMQ` AppHost resource model for RocketMQ cluster deployment (NameServer, Broker, Proxy, optional Dashboard). See [Aspire.Hosting.RocketMQ/README.md](./Aspire.Hosting.RocketMQ/README.md) - `YMJake.Aspire.Apache.RocketMQ` App-side producer/consumer registration and integration helpers from Aspire connection strings. See [Aspire.RocketMQ.Client/README.md](./Aspire.RocketMQ.Client/README.md) - `YMJake.AspNetCore.HealthChecks.RocketMQ` Application-level RocketMQ health checks. ## Notes - Hosting readiness and app-level health checks are intentionally separate concerns. - In Aspire, application connection strings should target Proxy endpoints rather than Broker internals. ## Local Mode - `Aspire.Hosting.RocketMQ.Local` runs RocketMQ in local mode with `namesrv` plus a single `broker --enable-proxy` container. - `AddRocketMQLocal("rocketmq")` can run without a broker config file. When no config is provided, local mode generates a minimal broker config with `brokerIP1=127.0.0.1`. - Use `WithBrokerConfig(...)` to mount your own full `broker.conf`. - If you provide your own `broker.conf`, it should include a host-reachable `brokerIP1`, typically `127.0.0.1` for local Docker/Aspire development, or a LAN IP when remote machines need to reach the broker. - Producer flows are working in this setup. - `SimpleConsumer.Receive(...)` against RocketMQ 5.5 local mode is currently blocked by a server-side proxy `NullPointerException` in `ReceiveMessageActivity`, so the demo keeps simple/push consumer paths disabled by default for local testing. - Dashboard is intentionally not supported by local mode. In Docker/Aspire local networking, dashboard admin calls follow the broker's advertised remoting address and may also use RocketMQ's VIP channel (`listenPort - 2`, for example `10909` when `listenPort=10911`), which conflicts with the `brokerIP1=127.0.0.1` setup that keeps host-side proxy producer flows working.