Clients and Servers
Difficulty
Beginner
Duration
22m
Students
4535
Ratings
4.2/5
starstarstarstarstar-half
Description

To really understand how HTML5 works, you need to have some idea of how the internet works. In this first module, web fundamentals, we’ll take a deep dive into the world of http/s, URLs, clients and servers, and security. This first module is mostly theoretical, and there are no practical activities involved with it.  

Transcript

At the very heart of how the internet works is the client server model. This model works so well that billions of users across the world now have easy access to the internet. So how does it work? Users are people like you and I and we access the internet via a client. A client is basically any device that can access the internet, like your computer or a smart device. Clients generally access the internet using a browser, like Chrome, Safari or Edge, but it can be through apps or software that have been downloaded or built into the device. But how they actually access that information so where things get a little more interesting. And a little more complex. 

Imagine you want to access a specific website. You'll open a browser and enter an address into the browser, right? That address is a Uniform Resource Locator, or URL. The URL has a few parts to it, and we'll get into it in more detail in other videos, but for now, it's enough that you know your client can use the URL to make a request to a server for information and the server will send that information back to your client. One part of the URL we do need to touch on quickly is the transfer protocol it uses, which is HTTP or HTTPS. This is important because this protocol is the part of the URL that actually make the request to the server, and without it, you won't be able to access anything. 

So that's the basics of how clients work. But servers are a little different. Servers are basically just computers that host web applications and websites. You could technically set up any computer to run as a server but most servers are extremely powerful and specialized pieces of hardware. For instance, think about a website like google.com. Google receives tens of thousands of requests to its servers every second. To be able to handle these huge numbers of requests, Google has to have amazingly powerful servers to run and host their flagship website. So servers tend to be a lot more powerful than clients but there are a few other differences between clients and servers. 

Servers also need to run web service software like Apache, Nginx or Microsoft Internet Information Server, IIS. This software handles the HTTP request from the client and sends back the response. And that's it for this video. The internet is basically a network of clients and servers. The servers host the information that the clients are looking to access and the clients can access that data if they have a web browser and the right URL.

Lectures

About the Author
Students
20532
Labs
6
Courses
29
Learning Paths
14

Ed is an Outstanding Trainer in Software Development, with a passion for technology and its uses and holding more than 10 years’ experience.

Previous roles have included being a Delivery Manager, Trainer, ICT teacher, and Head of Department. Ed continues to develop existing and new courses, primarily in web design using: PHP, JavaScript, HTML, CSS, SQL, and OOP (Java), Programming Foundations (Python), and DevOps (Git, CI/CD, etc). Ed describes himself as practically minded, a quick learner, and a problem solver who pays great attention to detail. 

Ed’s specialist area is training in Emerging Technologies, within Web Development. Ed mainly delivers courses in JavaScript covering vanilla JS, ES2015+, TypeScript, Angular, and React (the latter is authored by Ed) and has delivered on behalf of Google for PWAs. Ed has also developed a new suite of PHP courses and has extensive experience with HTML/CSS and MySQL. 

Ed is responsible for delivering QA’s Programming Foundations course using the Eclipse IDE. His skillset extends into the DevOps sphere, where he is able to deliver courses based around Agile/Scrum practices, version control, and CI/CD.

Covered Topics