Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: What's a global, low throughput, low latency message bus service?
14 points by viraptor on April 24, 2022 | hide | past | favorite | 14 comments
I'm looking for a SaaS solution where I can send 10msgs a day per endpoint, but with <1s latency to deliver.

I need the ad-hoc, independent queues to be trivially created based on a shared publisher/consumer key and I don't care about persistence - if a msg is not delivered immediately, it should be dropped. All endpoints are behind Nat, so some polling is required.

Is there a service that would help me here? SNS almost works, but creating/restricting individual queues ad-hoc makes it more work than I want to deal with. Can something else provide a trivial "send(secret, queue name, message)" and "listen(secret, queue)" functionality?

I'm a little tempted to just use Telegram for this.



Are you on AWS?

For your 10 messages a day, how about something even simpler, just throw them into an s3 bucket and trigger a lambda on save?

It would cost nothing, would be durable.


When you mentioned telegram, i was going to suggest trying out the matrix protocol. The protocol itself is not only designed for chat, that is merely only one admittedly popular use-case. And in conjunction with matrix, i was going to further suggest try to leverage a different transport layer that has lowerr latency instead of current http...which i know matrix org was testing out some time ago...But, then...you said you wanted a SaaS...which i'm not aware of any that exist for your use case. So, maybe try a Saas for Mqtt, etc.


I've had success using the self-service tier from Ably.com, which is <$100 USD/mo. [1]

Their client libraries handled most of the edge-cases that I would have had to worry about using SQS or a message broker on my own. It seems like they're scaling using sensible technologies on the back-end and have very approachable pricing for early-growth projects compared to some of the enterprise focused alternatives.

[1] https://ably.com/pricing


If you wanted something where you could get pretty far without spending any money, Cloudflare Workers + Durable Objects would be an interesting path. You would have to implement some of the functionality yourself, but there are some examples.

Like this example chat app: https://github.com/cloudflare/workers-chat-demo/blob/master/... It supports private chat rooms, which is somewhat analogous to a pub sub topic.


A good message broker can do that. Like RabbitMQ with MQTT or AMQP.

You can deploy a rabbitmq software container using your favourite cloud provider. It’s not much work.


It's not much work to set up initially, but I don't want to run that service myself in this case. I'm happy with someone else carrying that pager, so I'm looking at fully hosted services only.


CloudAMQP [1] might be what you're looking for.

[1] https://www.cloudamqp.com/


Ooooh, this is interesting. I'll see what the performance looks like.


Amazon has a managed redis solution too.


Not low latency, but onion-adresses/services are actually ideal for this. You only need to know the onion adress, to know that you connect to the correct node.

* encrypted * automatic NAT punching * complete location independence * use 0MQ with tor as transport if you want a queue on top .

Or if it has to be fast and low latency: 0MQ with eliptic curve encryption.



Try https://www.tinc-vpn.org/ and redis pub-sub.


SQS?


Similar to SNS - it doesn't allow multiple endpoints to use queues not readable by other endpoints without extra IAM work, right?

I could go with encrypting messages on each queue instead of doing full isolation at the service level, so endpoints can listen to everything, but not understand most messages. Basically I'm trying to achieve multi-tenancy with adhoc accounts, which would require extra work. (not impossible, but this is what I'm trying to avoid)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: