There are various web server software applications like Internet Information Server (IIS), Apache Tomcat, NodeJS, Nginx, Jetty, and so on. The web server software plays the role of the container for web applications. It receives HTTP requests from clients, regardless whether the client is a smartphone or a desktop application. They then forward the information included in the requests to the web applications which are sitting in the container. After the web application takes actions based on the request and generates a proper result, such as a JSON string, the web server will wrap the result in an HTTP response and send the response back to the client. In short, a web server's job is to accept requests and send responses back; the jobs of serialization, deserialization, and computing actions are performed by web applications, not by the web server.