Amazon Web Services offers the Amazon Simple Notification Service (SNS) which provides pub/sub messaging and push notifications to iOS and Android devices. It is meant to operate in a microservices architecture and which can support event-driven contingencies and support the decoupling of applications.
$0.01
per 1 million
Google Cloud Pub/Sub
Score 9.0 out of 10
N/A
Google offers Cloud Pub/Sub, a managed message oriented middleware supporting many-to-many asynchronous messaging between applications.
Using SNS for any notification use case where available is the default and defacto solution. It directly integrates with SES to configure both incoming email and email delivery responses.
Additionally, any notifications, such as CloudWatch alarms, are a good use case for SNS topics and allow us to fan out delivery as needed (pagerduty, email, etc)
Using Google Cloud Pub/Sub will mainly depend on the cloud platform used. Our client didn't choose GCP for Google Cloud Pub/Sub, if we went with AWS we would be using SNS/SQS (obviously). However, Google Cloud Pub/Sub is a better solution in the GCP services compared to self-managed solutions such as RabbitMQ for instance (it is managed by GCP and integrates with GCP solutions).
At times you receive access denied errors which are annoying.
Rarely do you receive internal failure errors where you can't access the information. It is rare but it does happen.
You are required to add an MWS Authentication Token every so often. I wish it would pull that information automatically for you so you don't have to go searching for it.
It is limited to work with the same platform but with different datasets at the same time, you must request a prior security authentication.
It can sometimes lead to unexpected charges, as Pub/Sub will automatically keep on retrying messages continuously, even if failures are due to permanent code-level issues.
Message re-deliveries don't apply for ingested services like with Python based client. Push messages tried to be delivered immediately and if your service is busy dealing with some other task, it won't be done OR goes into a queue
It serves all of our purposes in the most transparent way I can imagine, after seeing other message queueing providers, I can only attest to its quality.
It is useful for applications developed using event driven architecture. It helps in tracking and logging the events in a very timely and efficient manner. The dashboards are a little difficult to implement. But overall it is very easy to integrate with other AWS services like Lambda, API GW, S3 and DynamoDB. The permissions to access should be resolved before using it.
It has many libraries in many languages, google provides either good guides or they're AI generated code libraries that are easy to understand. It has very good observability too.
The AWS documentation is well maintained and has lots of information which makes it easier for developers to refer to and develop applications in a fast efficient manner. It is well documented with examples which is easy to understand and implement. You can also get help by posting into forums from like-minded developers.
They have decent documentation, but you need to pay for support. We weren't able to answer all our questions with the documentation and didn't have time to setup support before we needed it so I can't give it a higher rating but I think it tends to be a bit slow unless you're a GCP enterprise support customer.
Amazon Simple Notification Service (SNS) is well integrated in AWS and has been there since the early days of public cloud. It is a cost effective and very inexpensive solution to meet the needs of event notifications and custom messaging. Wish to share that there is considerable number of developers who can easily build solutions using AWS SNS. So, training costs are minimal. Other solutions are emerging and we are seeing a great usage especially of Firebase notifications because of its very neat integration with open source cross platform hybrid app frameworks like ionic, xamarin. SNS needs to become better and should have plugin support for the mobile application developers using low code/no code tools too.
You can just plug in consumers at will and it will respond, there's no need for further configuration or introducing new concepts. You have a queue, if it's slow, you plug in more consumers to process more messages: simple as that.
Cost of alert calls to the different stakeholders across different geographies have gone down since using Amazon SNS.
Amazon SNS has saved a lot of time for the employees that they used to spend to call multiple stakeholders so they can now focus more on productive tasks.
Amazon SNS usage needs prior knowledge of programming.