Skip to main content

Welcome To Tech With Rahul :))

Hello, World!


Comments

Popular posts from this blog

Client-Server Communication Model (Part-2) - Server Sent Events

This is the second part of the Client-Server Communication Model. You can have a look at the first part  where we discussed Polling, Long Polling, and Webhooks. Here, we will focus on Server-Sent Events. 4. Server-Sent Events (SSE) Server-Sent Events (SSE) are based on server push technology enabling a client to receive automatic updates from a server via an HTTP connection. The clients make a persistent long-lived connection with the server. Then, the server uses this connection to send the data to the client. It is important to note that the client can’t send the data to the server using the SSE. It is a unidirectional way to flow data from the server to the client. The request-response flow of SSE is: The client issues an HTTP GET request to the server, with the request headers Accept: text/event-stream and   Connection: keep-alive . The inclusion of   Accept: text/event-stream  in the request informs the server that the client aims to initiate an SSE co...

HTTP Series - Part-1: (TCP, HTTP and HTTP/1.1)

Hypertext Transfer Protocol (HTTP) enables the transfer of data over the Internet. HTTP is an application-layer protocol that facilitates the transmission of hypermedia documents, such as HTML. It was designed for communication between web browsers and servers but can also be used for other purposes. I have discussed in detail about different  modes of communication between a client and a server. They all use HTTP under the hood. HTTP is a “stateless” protocol, which means each request is executed independently, without any knowledge of the requests that were executed before it. It uses the underlying transport protocol TCP (Transmission Control Protocol) to establish and manage connections between a client and a server.  Transmission Control Protocol (TCP): TCP is a connection-oriented transport layer protocol. It provides a fully duplex and reliable exchange of messages between different devices over a network. Some of the main features of TCP are: Reliability: TCP ens...

How to Choose Right Database - Part - 2 (SQL v/s No-SQL)

We selected the database based on specific use cases in the first part. This section will be more interesting where we will discuss SQL and No-SQL databases, and what are the factors that influence their selection.  SQL Database: SQL (Structured Query Language) databases are relational database management systems (RDBMS) that use a structured query language (SQL) for defining, querying, and manipulating data. They organize data into tables with rows and columns, enforcing a predefined schema. SQL databases are characterized by their adherence to ACID (Atomicity, Consistency, Isolation, Durability) properties, making them suitable for applications requiring strict data integrity and complex transactions. No-SQL Database: NoSQL (Not Only SQL) databases are a broad category of database management systems that provide mechanisms for storage and retrieval of data modeled in formats other than traditional tabular relations used in relational databases.  NoSQL databases offer flexi...