xively / mosquitto

Ruby binding against libmosquitto (http://mosquitto.org/) - a high performance MQTT protocol (http://mqtt.org) client
Other
58 stars 15 forks source link

CelluloidIO / EM Support #11

Closed rolandjitsu closed 10 years ago

rolandjitsu commented 10 years ago

@methodmissing / @errordeveloper is there any way to make this work with celluloid-io or EM?

I can see that you plan on adding support for EM,even though that project has not been developed on for a while, do you have a timeframe on that?

errordeveloper commented 10 years ago

I believe the TODO item is more about having an EM-style API. I think the mosquitto gem should work with EM or whatever, we haven't tested it though.

errordeveloper commented 10 years ago

@rolandjitsu I just had a look at Celluloid, it looks like a nice replacement for ageing EM! If you do succeed with testing the mosquitto gem with Celluloid, do let us know with some example code :+1:

rolandjitsu commented 10 years ago

@errordeveloper, any pointers on where I could start with that? I mean, what Celluloid would need to do is take care of the mosquitto loop perhaps some kind of loop_forever replacement?

errordeveloper commented 10 years ago

@rolandjitsu it really depends on what you are trying to achieve... Do you just want a better abstartion, i.e. look at MQTT subscribers/pulishers as Celluloid actors or something like that? Otherwise, if you just think of Celluloid as an ultimately scalable solution for your application, then it's wrong. This gem uses non-blocking I/O and uses threads under the hood. Any further discussion of what and how you are building is going to be outside of the scope of this issue.

rolandjitsu commented 10 years ago

@errordeveloper, I agree, any other discussions would be outside of the scope of this issue. I understand that this gem is already using non-blocking IO and threads, but I have some trouble integrating it with the rest of my app.

Perhaps I could write you an email with my inquiries since it is not related in any way to this issue?

errordeveloper commented 10 years ago

@rolandjitsu sure, you could email on this one, if you wanna get in depth, but if it's something you can isolate from the context of your application, I'd just got to stackoverflow for that ;)

rolandjitsu commented 10 years ago

Great @errordeveloper, just send me an email (mine is public so you can take it from my profile) and I will explain what it is that I'm struggling with (it is related to the loop_* and how to close a loop_forever).