In case, you are landing here directly, it would be recommended to visit this page.

In this section, we would deep dive to learn about AWS-RDS & ElasticCache.

AWS RDS stands for Relational Database Service. Its a Managed Database-Service. It allows us to create databases in the cloud, that shall be managed by AWS. Following types of database-engines are supported using AWS RDS :-

  • POSTGRES
  • MYSQL
  • MARIADB
  • ORACLE
  • SQL-Server
  • Amazon AURORA (AWS Proprietary Database) → This is not compatible with Free-Tier.

Following are the advantages of using AWS RDS Vs Deploying RDS on EC2 :-

  • AWS Managed RDS takes care…

In case, you are landing here directly, it would be recommended to visit this page.

In this section, we would deep dive to learn about AWS ELB & Scalability aspects.

AWS Scalability: It means that, software system can handle higher loads by self-adaptation. We can either do Vertical OR Horizontal scaling.

  • Vertical-Scalability → It means increasing size of the given instance. For e.g. Say we have a system with CPU of 1 Ghz clock-rate and 2 GB RAM and its able to handle load of 50 TPS, but say if we increase its capacity to 4 GB RAM and 2…

AWS has been an revolutionary in powering the IT companies with least possible workforce. AWS is an cloud offering from Amazon, which helps its users to provide the servers and services on demand.

AWS Regions : AWS has regions all around the world. There are many upcoming regions, marked in orange colour in below map. A Region is nothing, but a cluster of data-centres. Many AWS services are region-scoped, i.e. if we use the same service in more than 1 regions, our data may not be replicated. Naming conventions used for regions are like “us-east-2”, “ap-east-1”, “eu-central-1”, etc.


First step to Pandas :- Anaconda comes with a lot of packages that you need for data science. In this course, we will also use Conda, a package manager. In case, you currently already have a version of pip or Conda installed, then you don’t need to reinstall everything. To complete a brand new installation of Anaconda, head over to www.cotinuum.io/downloads. Once the installation is done, the same can be opened through explorer :-


Kafka Streams Fundamentals :-

Kafka streams are built on top of Kafka client APIs. Kafka streams leverages the native capability of Kafka to offer data parallelism and distributed coordination and fault-tolerance. By default, the streams application runs as a single threaded application.


Expectations from modern app:- Lets start with understanding whats expected out of a application being powered by bunch of micro-services :-

  • Eventual Scaling based on the load.
  • Efficient usage of resources.
  • Response-time should be faster.

How does Spring-boot serves the request traditionally (Thread per request Model) :-

When the HTTP request comes , it comes through Servlet-container, which is Tomcat in this case. Each request is assigned a Thread. This is also known as ‘Thread Per Request’ model. This thread is responsible for interacting with the downstream APIs or databases.

How does Spring-boot handles the concurrency today :-

Tomcat internally…


We shall be building a Blog application which shall support CRUD features with help of On-Premises MongoDB. So,

Step 1.) Lets begin with installation of MongoDB at our local machine :-

aditya-MAC:bin aditya$ pwd

/Users/aditya/Documents/LEARNING/MongoDB/mongodb-macos-x86_64–4.4.1/bin

aditya-MAC:bin aditya$ ./mongod — dbpath ../data/db

{“t”:{“$date”:”2020–10–18T13:42:27.926+05:30"},”s”:”I”, “c”:”CONTROL”, “id”:23285, “ctx”:”main”,”msg”:”Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify — sslDisabledProtocols ‘none’”}

{“t”:{“$date”:”2020–10–18T13:42:28.867+05:30"},”s”:”I”, “c”:”NETWORK”, “id”:23015, “ctx”:”listener”,”msg”:”Listening on”,”attr”:{“address”:”/tmp/mongodb-27017.sock”}}

{“t”:{“$date”:”2020–10–18T13:42:28.867+05:30"},”s”:”I”, “c”:”NETWORK”, “id”:23015, “ctx”:”listener”,”msg”:”Listening on”,”attr”:{“address”:”127.0.0.1"}}

Part1.) Create Records API :-

Step 1.) Next course of action is to define the service and message structures :-

syntax = "proto3"; package greet; option java_package = "com.proto.blog"; option java_multiple_files = true; message Blog { string id =…


Every microservice is expected to serve some part of the business function and can be built using multiple approaches. One of the proven approach is REST (HTTP-JSON). For example, below chart shows the 4 different microservices working in conjugation with each other.

These microservices must exchange data amongst themselves and following are aspects which we need to thoroughly pen-down before making any microservice being live :-

  • API to exchange data. e.g. Below can be APIs formats :-

POST /api/v1/customer

GET /api/v1/customer/876/posts/3409

  • The data format itself. e.g. it can be JSON, XML or binary.
  • Efficiency of the API and Load-balancing. There…


Fundamentals of Elastic-Search:-

ElasticSearch is a Document-oriented search-engine, which means we can search & delete the documents into the elastic-search. The purpose of the elastic-search is to facilitate searching, as pointed right in its name. Its very powerful and does the searching in lightning fast speed. For e.g. Just like Google, it searches and finds the relevant matching documents. Similarly, Elastic-Search retrieves those documents which matches to the keywords in the search query. It supports :-

  • Analyze the Documents.
  • Indexing of Documents.
  • Deletion of Documents.
  • Retrieval of Documents.
  • Search of Documents.

The way, it works is similar to the way…


This wiki details about the lambda expressions introduced in Java8.

Lets begin with understanding, how the need for lambdas arises. To start with fundamental coding approach for doing some stuff till java7, using Polymorphism, here is how we shall be doing :-

Step.1) Create an Interface for the work :-

public interface Wisher {
public void perform();
}

Step.2) Create an solid implementation for aforesaid interface:-

public class HelloWorldWisher implements Wisher {
@Override
public void perform() {
System.out.println("Hello there, Good wishes !!");
}
}

Step.3) Create an testing class :-

public class MainTester { public void wishesParser(Wisher wisher) { wisher.perform()…

aditya goel

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