Emulating Apache Kafka with Amazon SNS and SQSTech by Sunny Srinidhi - January 22, 2020January 24, 20200 We’ll learn how to introduce the concept of consumer groups from Kafka in the AWS world using Amazon SNS and Amazon SQS.
Publishing messages to Amazon SNS from a Spring Boot applicationTech by Sunny Srinidhi - January 20, 2020January 24, 20200 We’ll learn how we can publish messages to an SNS topic from a Spring Boot application. This can be done from any Java code or framework.
Receiving messages from Amazon SQS in a Spring Boot applicationTech by Sunny Srinidhi - January 16, 2020January 24, 20200 In this post, we'll see how we can receive messages from an Amazon SQS queue in a Spring Boot application. This is a continuation of the previous post where we talked about how we can send messages to an SQS queue. The obvious next part of that is how do we receive those messages. So in this post, we'll do just that. If you don't have an Amazon SQS queue created already, checkout the previous post on how to do it. Here, I'll assume that you already have that pipeline setup. So I'm going to skip that part of the post. We'll jump right into the code. The Code The first thing we need to add in our Spring Boot application is the
Sending messages to Amazon SQS from a Spring Boot applicationTech by Sunny Srinidhi - January 14, 2020January 24, 20203 We're looking at yet another proof of concept (POC) application today. We're going to see how we can integrate Amazon SQS, which stands for Simple Queue Service into our Spring Boot application so that we can send messages to the queue. I'm going to use a few terms in this post which are influenced by Apache Kafka, because I come with extensive Kafka experience. However, I'm not going to compare Apache Kafka and Amazon SQS here. To clear things up, any service which sends a message to an SQS queue, I'll refer to such a service as the producer. And any service which receives a message from an SQS queue, I'll refer to that as the consumer. Now that we
Circular Double Linked List Implementation in JavaTech by Sunny Srinidhi - January 10, 2020January 16, 20200 More in The Data Structures series. We'll continue our data structures journey with this post about how to implement a circular Double Linked List (DLL) in Java. This is very similar to the standard DLL with the only difference being the connection of the head with the tail. That means, we link the head the tail to each other, which we can visualise as a circle, because a circle has no start and no end. Because the head and the tail of the list are connected to each other, we can say that there is no start and no end. But of course, we have references to both the head and the tail, to make our traversal easy. If you have not
Using Google’s libphonenumber Library to Parse and Validate Phone NumbersTech by Sunny Srinidhi - January 9, 2020January 9, 20200 We all work with phone numbers in almost any project or product which has human users. And when the product is available to a global user base, it becomes very difficult to maintain valid phone numbers in the database. We need to make sure the phone numbers for different regions are of the proper length for their regions, add country codes, or remove them, and a lot of such validations. This could become a project of its own pretty soon. We had such an issue in one of our projects. When I was doing the research to find an easy to use and light weight tool so that I could outsource the smarts involved in this to, I came across the
Encrypting and Decrypting data in MongoDB with a SpringBoot projectTech by Sunny Srinidhi - January 8, 2020January 8, 20205 In quite a few applications, we'll have a requirement to keep the data in our databases encrypted so that even if somebody gets into the database, they might not understand what the data is. Encrypting is crucial in many applications. With the rise of NoSQL databases these days, we'll take a look at how we can encrypt data going into a MongoDB database from our Spring Boot application. We'll also see how we can decrypt that data after getting it from the database into our application. One thing you need to know before trying this on any production-grade application is that this will slow things down. There are two extra steps involved in this process - encrypting and decrypting the data.
An Intro to Affective ComputingData Science by Sunny Srinidhi - January 7, 2020January 7, 20200 Not a lot of us have heard of Affective Computing. Most people I have spoken to about this didn't know anything about Affective Computing. So I thought, I'll just write an intro, explaining what I have understood about the discipline and hopefully, will get to learn more from the comments. So let's get started. Affecting computing is all about understanding human emotions in a human-machine interface system and responding based on those emotions. Consider this, you get into an ATM vestibule to draw some cash, but you're tensed about getting late to your date, who is already waiting for you at the restaurant. If anybody sees you in this condition at the ATM vestibule, they'll be able to easily understand that
HashMap implementation in JavaTech by Sunny Srinidhi - January 3, 2020January 3, 20203 More in The Data Structures series. In our data structure series, we have already looked at a couple of ways in which we can implement a stack, and also Single Linked Lists (SLL) and Double Linked Lists (DLL). In this post, we'll see how we can implement our own HashMap and see a couple of examples of how we can use that HashMap. Let's get started. The HashMap Before we can start with the implementation of the HashMap, we need to understand how the stuff actually works. This is a combination of an array and a LinkedList. So it's a bit interesting. When we add an item to a HashMap, we provide a key and a value. The key will be used as a
Stack Implementation in Java using Linked ListsTech by Sunny Srinidhi - December 31, 2019January 3, 20201 More in The Data Structures series. In our previous Stack implementation post, we saw how we can implement a Stack data structure using an ArrayList. But as you can imagine, that's not the right way to implement a stack. A much better implementation is using a LinkedList. In this post, we'll see just that. If you've missed it, I've already written about how to implement Single Linked List (SLL) and Double Linked List (DLL), and I'd encourage you to check those two out first as we'll be using the same Linked List implementation here, and you can find more detailed Linked List explanation there. Assuming that you have done that, let's now move on to the Stack. The Node The first thing we have