Clone
 

robin gong <i.robingong@gmail.com> in Netty

feat(example-mqtt): new MQTT heartBeat broker and client examples (#9336)

Motivation:

Recently I'm going to build MQTT broker and client based on Netty. I had MQTT encoder and decoder founded, while no basic examples. So I'm going to share my simple heartBeat MQTT broker and client as an example.

Modification:

New MQTT heartBeat example under io.netty.example/mqtt/heartBeat/.

Result:

Client would send CONNECT and PINGREQ(heartBeat message).

- CONNECT: once channel active

- PINGREQ: once IdleStateEvent triggered, which is 20 seconds in this example

Client would discard all messages it received.

MQTT broker could handle CONNECT, PINGREQ and DISCONNECT messages.

- CONNECT: send CONNACK back

- PINGREQ: send PINGRESP back

- DISCONNECT: close the channel

Broker would close the channel if 2 heartBeat lost, which set to 45 seconds in this example.

feat(example-mqtt): new MQTT heartBeat broker and client examples (#9336)

Motivation:

Recently I'm going to build MQTT broker and client based on Netty. I had MQTT encoder and decoder founded, while no basic examples. So I'm going to share my simple heartBeat MQTT broker and client as an example.

Modification:

New MQTT heartBeat example under io.netty.example/mqtt/heartBeat/.

Result:

Client would send CONNECT and PINGREQ(heartBeat message).

- CONNECT: once channel active

- PINGREQ: once IdleStateEvent triggered, which is 20 seconds in this example

Client would discard all messages it received.

MQTT broker could handle CONNECT, PINGREQ and DISCONNECT messages.

- CONNECT: send CONNACK back

- PINGREQ: send PINGRESP back

- DISCONNECT: close the channel

Broker would close the channel if 2 heartBeat lost, which set to 45 seconds in this example.