What happens when you type holbertonschool.com in your browser and press Enter.

This post will understand how the web stack works, Defining topics such as Database, DNS Request, TCP / IP, etc.

When we surf the internet, we have never asked ourselves, how does it work? How do I access web pages? We only search, find and use them without even knowing the tip of the iceberg.

DNS request.

What happens when we search our browser for “holbertonschool.com” is that it will search its cache and if it cannot find it, it will search the Domain Name System for the IP address belonging to the domain we are looking for.

TCP/IP.

Transmission Control Protocol (TCP):

TCP takes care of creating connections between them and ensuring that data is delivered without errors and in order of delivery.

Internet Protocol (IP):

IP is faster and more efficient creating data blocks to send and receive, always creating the best route, this affects the guarantee of arrival at the destination.

Firewall.

HTTPS/SSL.

HTTPS stands for “HyperText Transfer Protocol Secure” and is a secure version of HTTP. HTTPS requests and responses are encrypted, ensuring users that their data cannot be stolen or used by third parties.

SSL stands for Secure Sockets Layer, the certificate must be issued by a trusted Certification Authority and when a website has this certificate, we can see a small lock icon next to the website name in the search bar.

Load-balancer.

To define a load balancer we can say that it is software that distributes requests among several servers following a load balancing algorithm.

A load balancer that we could use would be HAproxy which is a very famous load balancer, in this software we can use different algorithms such as round-robin, Weighted Round-Robin, etc.

Web server.

Basically, the Web Server is responsible for finding where the static content corresponding to the requested address is located and serving it as an HTTP or HTTPS response.

Application server.

This allows you to create interactive pages with the user, such as saving information, starting your own session, and more.

Database.

The main modeling methods are relational and non-relational. Relational databases can be seen as a collection of tables that represent objects, where each column is an attribute and each row is an instance of that object and non-relational databases can have many forms since the data inserted into it does not have to follow a particular scheme. They are also called NoSQL databases.

Software developer