@aliomaidi419

producer 跟 consumer端都可以使用http-proxy

huzongt...@cmss.chinamobile.com <huzongt...@cmss.chinamobile.com>
于2019年9月12日周四 上午10:47写道:

> This rip sounds very wonderful.It make RocketMQ may access clients written
> in different languages.We can join in this rip together.
>
>
>
> huzongt...@cmss.chinamobile.com
>
> From: heng du
> Date: 2019-09-12 09:41
> To: dev; users
> Subject: [DISCUSS][RIP-17]RocketMQ HTTP Proxy Support
> Dear Apache RocketMQ Community:
>
> We would like to propose a RIP-17 about RocketMQ HTTP Proxy.
>
> RocketMQ may access clients written in different languages. In order to
> meet the needs of heterogeneous systems to access RocketMQ, this proposal
> solves this problem by adding an HTTP proxy module. At the same time, some
> logic such as flow control/ACL on the broker and some process logic on the
> client can be moved to the proxy, which makes the broker and client lighter.
>
> So we would like to provide an HTTP proxy to provide a proxy for HTTP so
> that users can quickly access the RocketMQ with a lightweight HTTP client.
>
> The following is the relevant information about this RIP and we are listed
> directly below for your convenience, hope everyone can give more
> suggestions.
>
> Thanks,
> The Apache RocketMQ Team
>
> Status
> ●      Current State: Proposed
> ●      Authors: qqeasonchen
> ●      Shepherds: duhengforever
> ●      Mailing List discussion: dev@rocketmq.apache.org;
> us...@rocketmq.apache.org
> ●      Pull Request: RIP-17
> ●      Released: 4.7.0(rocketmq-external first)
> Background & Motivation
> What do we need to do
>
> RocketMQ may access clients written in different languages. In order to
> meet the needs of heterogeneous systems to access RocketMQ, this proposal
> solve this problem by adding HTTP proxy module. At the same time, some
> logic such as flow control/ACL on broker and some process logic on client
> can be moved to proxy, which makes the broker and client lighter.
> Goals
> ●      What problem is this proposal designed to solve?
> In the future, RocketMQ may access clients written in different languages.
> At present, due to the complexity of the client logic, it takes a lot of
> effort to rewrite the client in different languages. And the persistent
> connection in RocketMQ is based on TCP, and the ability to resist network
> jitter is bad. HTTP connection can better resist network jitter. In order
> to write and access clients in different languages better, this proposal
> provides an HTTP sending proxy, which simplifies the processing logic of
> the client and implements a more lightweight client.
> Non-Goals
> ●      What problem is this proposal NOT designed to solve?
> Nothing specific
> ●    Are there any limits of this proposal?
> User need deploy proxy before use it. It will add a little complexity for
> operation and maintenance.
> Changes
> Adding a proxy module to achieve message proxy.
>
> This RIP will be divided into two phases.
>
> The first phase will not have any impact on the existing architecture,
> including the nameserver, depending on the service discovery configured to
> do the proxy.
>
> The second phase will decide whether to do proxy service discovery based
> on community feedback or provide a lightweight http client.
> Architecture
>
>
> In our proposal, there are 3 features in the proxy:
> (1)   We realize group proxy in producer group/consumer group level
> (2)   The proxy receives HTTP packets sent by HTTP producer, which
> realizes HTTP proxy and reduces the impact of network jitter.
> (3)   The proxy simplify processing logic in client and achieve lighter
> client.
>
>
>
>

Reply via email to