I was wondering if anyone had write a module for squid to change it into
an 'accelerator', of sorts.
What I mean, specifically -- well there are a couple of levels. S
1) Parsing fetched webpages and looking for statically included content
(especially .css, maybe .js, possibly image files) and starting
a "fetch" on those files as soon as determines which files are
going to be needed to render the page. By 'render', I mean something
along the lines of "wget"'s --page-requisites
Theoretically, squid would have an edge as it sees the information
first, and could start fetching all of the needed content in parallel
ASAP (of course if it isn't needed, or the client fetching that page
stops the render, existing, outstanding requests based on that page
could be aborted.
2. Another level would be pre-inclusion of included content for pages
that have already been fetch and are in cache.
I.e. Suppose a page is fetched and it's known that it
includes 3-4 different css pages. If it is a commonly fetched page,
rather than having each client do multiple fetches -- some of which
may involve nested css files -- meaning a client will have to
parse and ask for more (adding multiple Round-Trip-Times/RTT's) to
the page's render time.
Depending on load/RTT and sizes, there could be a significant speedup
to the client if those files were all concatenated into 1 file,
so instead of getting:
index.html
sales.css
corp.css
dept.css
standard.css
support.css
enduser.css
...
other includes but involving "user?xxyz" (i.e. likely non-static)
they'd get:
index-[hexid].html
(includes all static css)
...
(but still has includes for non-static includes)
-----
That way, multiple RTT's and extra fetches could be
eliminated.
OF course, the benefit of this would depend on the amount
of processing time it took to do this type of processing vs. the
"Cost" (usually just 'time', but in some cases, 'money' as well).
I was just curious if anyone had thought about modules for squid
that would do this, or if squid would even be suitable for hosting
and/or including such extensions?
Thanks,
Linda