On 09/18/2013 06:06 PM, Matthew Walker wrote:
Hey all,
I've been scheming for a while on how to reduce the number of calls up to the server for CentralNotice. At the same time I want to greatly reduce the number of objects I have in cache.
To do this I propose to change the architecture to having an intermediate proxy server with a static head JS section in mediawiki page head. The proxy would map down all the variables to only what is required at the time.
+1 for limiting the application logic in regular text Varnishes, both from a performance and risk management perspective. Having your own banner proxies should make it easier to tweak its behavior to your needs without the risk of taking down the entire site.
Node is a good choice for this kind of task. If the total size of all unique banners is relatively small you might even be able to cache the banners in-memory instead of doing backend cache requests.
Gabriel