Image for post
Image for post
Photo by Luke Chesser on Unsplash

As said in the aim of this article is to create a serverless monitoring application using AWS WebSockets API, Lambda functions and EventBridge. In this simple application we are only going to perform a simple status check for facebook.com, but in reality this can be extended for much more other use cases with added features. This will be only an introduction to how to utilize these AWS services in a use case like monitoring. …


Image for post
Image for post
Photo by NordWood Themes on Unsplash

AWS Amplify

AWS Amplify is a service provided by Amazon Web Services where it gives the ability to create end to end solutions for mobile and web platforms with a more secure and scalable way using AWS services. AWS Amplify was initially launched in November 2018 and since then many developers have created and deployed their new applications to Amplify because of the simplicity and reliability provided by Amplify.

Amplify provides easy to configure features with it called modules named authentication, storage, backend API, and hosting and deployments, etc. You can get more information about the modules provided by the Amplify from here. …


What is GraphQL and how to use AWS AppSync to create our own GraphQL API

Image for post
Image for post
Image by Bethany Drouin from Pixabay

What is GraphQL

Nowadays whenever we talk or think about creating/designing an API what pops to the mind at first is REST. REST(REpresentational State Transfer) has been the go-to standard until recently when developing an API platform. Even though REST became the standard, it did have its own disadvantages. One of the main disadvantages is the inflexibility for the clients who are going to consume them. So even though at the beginning we create our REST API according to client requirements, that API will have very few options when there is a rapid change of requirements in the client. …


A beginner’s guide to the Kubernetes platform

Image for post
Image for post
Photo by Arian Darvishi on Unsplash

With the introduction of containers, software application deployment quickly adopted containers for deployments due to its vast advantages over conventional deployments on servers or on virtual machines. Not only that but almost all of the cloud providers also have full support for container deployments which makes it very easy for developers around the world. Now, with this new container, deployments became another problem for developers as they worked to figure out how to manage these containers on a large scale.

The solution for that problem was to have a platform that could orchestrate and manage these containers without too much hassle. Some organizations around the world came up with platforms that will be the solution. Google came up with Kubernetes, Docker came up with DockerSwarm, Apache with Mesos, AWS with Fargate, RedHat with Openshift, and more. With this large scale, enterprise-level container deployment became more practical and also less complex. In this article, we are going to talk about one of these container orchestration platforms: Kubernetes. …


Deploying applications to Kubernetes using AWS EKS and AWS ECR images.

Image for post
Image for post
Photo by Clément H on Unsplash

Kubernetes

Kubernetes is a container orchestration platform that is created by Google in 2014. It is an open-source platform where currently many organizations widely use for container deployment and management. Although there are other container orchestration tools are available in the community like Docker Swarm, Kubernetes remains in the top for container orchestration due to its features and flexible usability.

AWS EKS

Amazon Elastic Kubernetes Service is a service provided for Kubernetes on AWS infrastructure. Like any other service offered by AWS, Kubernetes resources will be fully managed by AWS themselves, which gives less overload for developers on maintaining them. …


Explore how we can deliver real-time data using data streams to Elasticsearch service using AWS Kinesis Firehose.

Image for post
Image for post

Elasticsearch is an open-source solution that is used by many companies around the world for analytics. By definition, Elasticsearch is an open-source, RESTful, distributed, indexed search, and analytics solution.

The first part of the definition is that it is an open-source solution, which means it is a community-driven solution and it is free to use widely. Next, it is RESTful, which means all the communication and configurations can be done through simple REST HTTP API calls. Elasticsearch has developed a feature-rich REST API framework for use by clients in order to consume from. Next distributed and indexed, now this is where Elasticsearch gets differentiated from a common search solution that we tend to implement on top of our existing databases. Elasticsearch is distributed, which means the functionality and data being stored are using multiple resources and it will use all of these resources to do these functionalities which makes them very efficient meanwhile providing high availability as well. Next, it is indexed, which improves significantly data retrieval. …


Image for post
Image for post

Elasticsearch is an open-source, RESTful, distributed search, and analytics solution that is currently widely used by many companies worldwide. It is a search engine based on Apache Lucene library. Elasticsearch is widely used in text analysis, log analysis, text-based search and many more use cases.

Amazon Elasticsearch is a fully managed service that makes it easy for us to deploy, secure, and run Elasticsearch. The service provides support for open-source Elasticsearch APIs, Kibana integration with Logstach, and other AWS services. In this post I am going to talk about how we can load streaming data into AWS Elasticsearch service using AWD DynamoDB streams and AWS Lambda. …


Image for post
Image for post

RabbitMQ is an open-source message-broker software that originally implemented the Advanced Message Queuing Protocol(AMQP). As mentioned in their official website RabbitMQ is the most widely deployed open-source message broker. Before digging into RabbitMQ let’s try to understand what is a message broker and why we need them.

What are Message Brokers

Message brokers are a communication technology used for applications to communicate between them. They act as an intermediary platform when it comes to processing communication between two or more applications. So when do we need to use message brokers in our software systems? There are many use cases where we can use message brokers. …


Image for post
Image for post

React has come a long way since it has been initially released on 29, May 2013 and now it has been one of the top javascript libraries for front end development. Today I am going to talk about React Context API and how to use React Hooks with it. Before starting to code let us take look back at the history and talk about how state management is done in React.

What is State Management

State management refers to the management of the state of an application. This state can be changed in every component of an application. …


Image for post
Image for post

What is Amazon Cognito

Amazon Cognito provides authentication, authorization, and user management for your web and mobile apps. This service was earlier used for mobile applications but now used for a variety of web applications as well. It does the same functionality as many other popular authentication frameworks like Auth0, Identity server, and JWT web tokens. But Cognito saves and synchronizes end-user data that enables an app developer to concentrate on writing code instead of managing the back-end. Before going more further let’s clarify two main concepts in AWS Cognito.

User pools vs Identity pools

Below are the definitions given by Amazon on both user pool and identity pool.

User pool
Amazon Cognito User Pool makes it easy for developers to add sign-up and sign-in functionality to web and mobile applications. It serves as your own identity provider to maintain a user directory. …

About

Janitha Tennakoon

Senior Software Developer | AWS Community Builder from Sri Lanka currently working in Singapore.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store