]> njoseph.me Git - blog.git/blob - content/posts/demystifying-the-term-serverless.md
Become independent of Medium 🎉
[blog.git] / content / posts / demystifying-the-term-serverless.md
1 ---
2 title: "Demystifying the term Serverless"
3 date: 2018-07-15T17:40:09+05:30
4 lastmod: 2018-07-15T17:40:09+05:30
5 tags : [ "serverless", "devops" ]
6 categories : [ "tech" ]
7 layout: post
8 type: "post"
9 highlight: false
10 ---
11
12 ![A server rack](/blog/server-hardware.jpeg)
13 *Server, the physical hardware*
14
15 When people think of servers, they imagine a big machine or a large stack of them making humming noises and furiously serving millions of requests.
16
17 A server can also mean a computer program that is continuously running, listening for client requests and serving them. Think Apache, Nginx or Tomcat.
18
19 ![Apache HTTP Server logo](/blog/apache-logo.png)
20 *Apache HTTP server, the software*
21
22 When someone says that they have gone *serverless*, what they actually mean is that they are no longer running a software program listening to requests. There should still be a physical computer of some sort serving the requests of the clients.
23
24 The premise of serverless is that you don’t have to keep a computer program called a server continuously running to serve your clients’ requests. When a request comes in, a small program (maybe a single function) gets invoked, serves the request and terminates.
25
26 ### What is FaaS then?
27
28 *Serverless *(not running server programs) is the goal* *and* Function as a Service* (FaaS) should be considered one of its implementations.
29
30 ### Are microservices and P2P applications serverless too?
31
32 Not really.
33 A lot of microservices use HTTP for communication and thus have a server component in them.
34 A P2P application (e.g. Syncthing, BitTorrent) acts as both the client and the server and hence doesn’t need a server decoupled from the client.
35
36 Now that you know what serverless actually means, it’s time to learn more about it. I recommend starting with this [blog post](https://martinfowler.com/bliki/Serverless.html) by Badri Janakiraman.