Does anyone know of an open-source equivalent to Amazon SNS? Maybe something that supports a similar pub-sub interface but that can be run on a closed or private network.
If you want a delivery point for this queue where a relevant sub-system can pick it up and process it later, you can use a service like SQS. One thing to note is that we don't need to couple SNS and SQS in all cases. We can have SNS send messages to email, SMS or HTTP endpoint apart from SQS.
The closest SNS replacement in GCP is probably Cloud Pub/Sub, which provides a similar publish-subscribe messaging pattern.
Open source at AWS Since its inception, Amazon Web Services (AWS) has been the best place for customers to build and run open source software in the cloud. AWS is proud to support open source projects, foundations, and partners.
Apache Kafka is a distributed publish-subscribe messaging system. And SNS is also pub/sub system. My goal is to use some queue messaging system on AWS with application that will be distributed over few servers (By the way the main language is Python).
SNS is a pub/sub system, while SQS is a queueing system. You'd typically use SNS to send the same message to multiple consumers via topics. In comparison, in most scenarios, each message in an SQS queue is processed by only one consumer.
Users pay $0.50 per 1 million Amazon SNS Requests, $0.06 per 100,000 notification deliveries over HTTP, and $2.00 per 100,000 notification deliveries over email. For SMS messaging, charges vary by destination country. Amazon SNS also includes a Free Tier, where users can get started with Amazon SNS for free.
Presumably you are looking for a ready to install packaged solution? There is none I know of, however, in case you are comfortable with assembling some readily available components with a modest amount of custom code, you could build yourself a dedicated solution by means of the extremely versatile Apache Camel framework, which is a powerful open source integration framework based on known Enterprise Integration Patterns.
It includes an ever growing list of components out of the box to interface with existing tools/protocols/APIs/etc., e.g. for cloning the Amazon SNS functionality:
Assembling the components is remarkably simple indeed, and there are lots of Examples available, see for example the walkthroughs for configuration via Spring DSL (XML based) or via Java code
Granted, assembling a decently performing and scaling system like so will still require a fair amount of knowledge, but Apache Camel at least removes the burden regarding many of the involved tasks already.
Realize this question is a little old, but came across this recently:
http://www.slideshare.net/openstack/open-source-versions-of-amazons-sns-and-sqspptx
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With