>
> Are you really stating that your own CDN serving jquery is better than 
> https://code.jquery.com/jquery-2.1.4.min.js , both for SLA and speed ? 

 
That is not what I said.
First of all, this whole "put vendors in bundle or not" issue only concerns 
the first request of a visitor, as any subsequent request should have 
common resources (like jQuery for instance) cached by the browser.
As such, it is a minor performance boost : so it is more of a distribution 
architecture & SLA issue.

Using a public CDN puts you at the mercy of the CDN service in terms of 
SLA. Multiplying public CDNs (e.g. one for bootstrap, one for jquery, cdnjs 
for other JS resources...) means you multiply your SLA as well, which is a 
bad thing.

To be more practical : if your code relies on AngularJS for instance, then 
you would only benefit from using a public CDN if your visitor has 
previously visited an Angular-based website that uses Google's public CDN 
and the exact same version of Angular that the one you are using. That's a 
bit far-fetched.
Same goes for all JS frameworks you might use (including jQuery which, 
indeed, is much more widely distributed).

All in all, I'm stating that private CDNs are easier to manage and more 
reliable, but performance-wise there isn't much to be gained regarding 
vendors.

@Anthony: when I said "private" I meant a Cloudflare account, so #2


Using static_version "rebuilds" all URLs automatically, but it's perfectly 
> fine to serve static from "different" versions alltogether.


Interesting.
So it is in fact possible to create your own versioning system in web2py by 
creating a helper that dynamically builds a static file's URL based on its 
checksum (or any other unique tag).
This way you benefit from automatically set Cache-Control headers.

I also noticed in the source code that puting main.css.gz in the same 
directory as main.css will automatically serve the gzipped version with the 
correct headers : that's pretty sweet.
I didn't know about it before though (it isn't documented), so I built my 
own gzip management.

Basically, I'm not disputing the fact that web2py is built with a lot of 
interesting features (batteries included).
What I do regret is the lack of settings that would allow you to customize 
/ overwrite / extend these features when you come to outscale them.

One size doesn't always fit all.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to