]> njoseph.me Git - blog.git/blob - content/posts/demystifying-the-term-serverless.md
30171474cc6f0307876e642403091dd6deb79b26
[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
13 <img src="https://cdn-images-1.medium.com/max/1000/1*JQwYsJYUjKLWCf8r4iEueQ.jpeg" width=800/>
14 *Server, the physical hardware*
15
16 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.
17
18 A server can also mean a computer program that is continuously running, listening for client requests and serving them. Think Apache, Nginx or Tomcat.
19
20 ![Apache HTTP server, the software](https://cdn-images-1.medium.com/max/2000/1*ANRQ-WLCLs5yM13GKGBtPg.png)
21 *Apache HTTP server, the software*
22
23 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.
24
25 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.
26
27 ### What is FaaS then?
28
29 *Serverless *(not running server programs) is the goal* *and* Function as a Service* (FaaS) should be considered one of its implementations.
30
31 ### Are microservices and P2P applications serverless too?
32
33 Not really.
34 A lot of microservices use HTTP for communication and thus have a server component in them.
35 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.
36
37 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.