Ben,
While I appreciate the refresher on why CDNs are useful, that isn't what I asked. Please let me try to restate my question more clearly.
For the reasons you described, it is useful in production to push the jar of static assets to a CDN and have requests fetch the assets from there rather than from the web server.
In development mode, everything should operate as it does now with the Assets controller doing its thing. Then during the build process, somehow the assets need to be compiled and assembled by sbt-web and pushed to the CDN. Or maybe not sbt-web, but something automated.
In production mode, another controller that is CDN-aware needs to be available to take requests and fetch the assets from the CDN. Then again, in order for this to be transparent to the views, I imagine there should actually be one controller that fetches from one place or another depending on mode.
Since this is a common need in any web application, I imagine most people in this group have solved the two key issues--automated CDN push and asset location resolution based on mode. So how do you guys do it with Play? Do you use Node packages for the push to CDN? How do you handle things at the controller and routes level?
Thanks.