The Junior Employee of the Server – CDNs

As a passionate web developer with interests in architecture, I have been “death marching” down the road towards scalability and architectures/solutions that lend themselves to this concept.  Having pushed for layered architectures and Redis cache servers I am at my latest muse in this area, the content delivery network (CDN).  It is no surprise that 60%-90% of our web applications are moving more towards the client.  Why burden the server with mundane tasks of rendering html/dynamic html (think razor, php, etc.) when you can make the user’s CPU handle the problem.  So inevitably we move towards javascript based solutions, which lead towards modern framework adoption (AngularJS 1/2, Aurelia, etc.) to make our lives easier.  CSS frameworks have sprung up (boostrap, pure, ui-kit, etc.) to make our lives easier in that area also, all the while relegating our backend servers to nothing more than API endpoints and static file servers.  So imagine this, if you are a server and your job has been demoted to serving up files all day (think TPS reports, data entry employees and the like) and a little bit of the interesting stuff (your api endpoints for example) then you are going to do everything in your power to offload those dare I say routine tasks to a more junior employee, in this case the junior employee is our friend the CDN.  Continue reading