Comments (7)
Maybe we can store this message to pulsar metadataStore.
/cc @codelipenghui
from mop.
@liangyepianzhou This will introduce more workload on the metadata server since the connection can create and close frequently. My opinion is to use one broker to handling the MQTT topic under a namespace, this means all the topics under a namespace are maintained by one broker, so we don't need to share something between MQTT brokers. So that we can guarantee client ID uniqueness under a namespace.
from mop.
@codelipenghui this eliminates a large benefit of using Pulsar over a traditional broker which is high availability if this was to be enforced.
At the end of the day MQTT sessions are designed to be long lived. So for well behaved clients it shouldn't be a problem. Could always introduce QoS quotas for number of connection establishments if load on the metadata API is of concern.
from mop.
@josephglanville I have added some declarations on the MoP docs.
from mop.
Another problem with not sharing and/or storing the session is that the subscription info will be lost if the client connects to another broker or the broker restarts. This is particularly an issue when using cleanSession=0
. This info could be stored in metadata store and fetched from a local cache for performance reason.
from mop.
Another problem with not sharing and/or storing the session is that the subscription info will be lost if the client connects to another broker or the broker restarts. This is particularly an issue when using
cleanSession=0
. This info could be stored in metadata store and fetched from a local cache for performance reason.
Hi, we have supported this already.
from mop.
@codelipenghui this eliminates a large benefit of using Pulsar over a traditional broker which is high availability if this was to be enforced.
At the end of the day MQTT sessions are designed to be long lived. So for well behaved clients it shouldn't be a problem. Could always introduce QoS quotas for number of connection establishments if load on the metadata API is of concern.
Hi @josephglanville
As merged #560 and #565, we have supported this in MoP cluster.
from mop.
Related Issues (20)
- Can not support shared subscription
- Connection is null HOT 1
- Flaky-test: SimpleIntegrationTest.testConsumerDisconnectNotMissingMessage
- Is this still maintained? HOT 7
- MoP proxy does not function properly when running without TLS HOT 1
- MoP Proxy, keep alive is not managed correctly causes connection to fail HOT 13
- MoP Proxy seems redundant, introduces unnecessary complexity HOT 2
- java.nio.file.NoSuchFileException: /tmp/pulsar-nar/pulsar-protocol-handler-mqtt-2.8.1.23.nar-unpacked/UdB3VJeg7mGXymmwakz1bw/META-INF/services/pulsar-protocol-handler.yml HOT 1
- Cannot push/receive Mosquitto Bridge messages on MOP
- The mqtt plug-in shows that the loading is successful, but ports 5682 and 1833 still fail to listen. HOT 2
- [WIP] MIP-? Introduce new implementation for MoP
- Please redo the lookup. Request is denied: namespace=public/default HOT 2
- OPENSSL_internal:WRONG_VERSION_NUMBER excpetion when using MOP TLS Proxy HOT 1
- MQTT retain publishes do not make it to Pulsar HOT 3
- Readme.md states "only MQTT 3.1.1 supported" but code base seems to indicate MQTT 5 is also supported HOT 1
- LWT does not reach Pulsar topic, short cuts QoSPublishHandlers so Qos nor Retain function properly HOT 2
- Resubscribing on previously unsubscribed topic closes connection HOT 1
- LWT fires on graceful disconnect but not on connection loss HOT 1
- MQTT QOS support level? HOT 1
- Unsubscribed topic, repeatedly kicked out using client connection only. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mop.