What are Sessions?
A session is a collection of user information that is typically stored on a server. This information can range from login attempts and the user name all the way to purchase history and items in a shopping basket. When you visit a website you are assigned an ID, called a Cookie, and it is this Cookie ID that a server can use to retrieve any stored information is has for this particular user. Unlike the session cookies are stored client-side, that is the client presents their ID, their cookie, and the server checks to see if it has any information about this user stored. If it has some data stored the server can execute any code it can with that data otherwise a new session for this user will be created.
It is worth noting that HTTP is a stateless connection protocol, that is the server can't distinguish one request from another. Sessions and cookies provide HTTP with state, they allow the server to know who is making a specific request and respond accordingly.
Sessions are not the same as authentication. Authentication is providing credentials to gain access to some system, whereas sessions is using an ID to prove you are who you say you are. You can learn more about authentication in our `What is Authentication?` guide.
Add logging: Get useful feedback from your server about startup and errors
Add routing: Add REST APIs, such as HTTP GET, to your server