Update:Archive/2.0/Architecture and General Design/Infrastructure
« Back to Archive | Update: Main
Introduction
This page will describe the UMO infrastructure supporting the UMO service.
Caching
We are currently using Squid for caching of images and content. This has been quite scalable but we need to start considering using Apache2 + mod_cache/mod_proxy to be able to handle more types of HTTP 1.1 requests.
We were using Squirm at one point as part of Squid to handle the Firefox's random string on the end of the application update URLs, to improve cacheability of the RDF files (see bug 279379), however that was removed after the application update service was separated to another box.
The addons and plugin-finder sites are now the only ones living behind our dual squid servers.
- Another thing to consider might be Memcached, to see if that would help? --Csogilvie 12:06, 22 Jan 2005 (PST)
Database
We are using MySQL 4.1.7 for the database. We currently have this all on one database server but moving forward we need to consider a master/slave arrangement for redundancy sake.
Web/Application Servers
We are using Apache2 + PHP 4 (4.3.8) on top of Linux machines right now. Right now, we only have one application server for addons/pfs and we need to fix that asap. The current application server is running RHEL 3.
The Application Update Service now lives on a separate webserver running Apache2+prefork, without the assistance of squid. The actual update.mozilla.org domain is served from this box, too. We discovered by trial and error (and my was it an error!) that Apache is much more efficient at handling 301/302 redirects than squid+squirm is, and that we have far less load if we just serve the RDF file from update.mozilla.org if that's the domain the client browser requests it from (which should slowly diminish as people upgrade) instead of redirecting them to aus.mozilla.org. Requests for URIs that belong to PFS or addons are redirected to those domains.