| « Umberloid / Neon Tetra | The Bug That Needs An Unofficial Name That Consists Of "The" And One Word » |
Behind the Scenes, RocWiki Edition
A couple weeks back, a plan was unleashed to modernize the RocWiki back-end architecture. We stopped following the main Sycamore development awhile back to create a bit of a local fork, which kinda died out. It appears all of the custom stuff (e.g. mapping) got merged back into the main tree some while ago, so we decided to go ahead and just rejoin the trunk.
First order of business was a new server. For simplicity, we went with a Xen-based VPS from Linode so I could keep all my VPSes on one account (and, in the event of trouble, their support works very well for me). The Linux distribution is Ubuntu 8.04 LTS Server Edition, which was the logical choice considering the previous server was running an older Ubuntu.
On top of that, we're running a number of cool technologies that weren't in use previously:
- memcached: Instead of hitting the database directly on every request, elements and some whole pages are stored in memcached for quick retrieval.
- SCGI: The Sycamore server now runs as a (multithreaded!) daemon and is interrogated by Apache over a socket. This means the interpreter, code, and connections to the db and cache is always right there, ready to go.
- PostgreSQL: Now running version 8.3.
/proc/sys/vm/swappiness is 100, boohay), and we're up-to-date with the official code. Good stuff.
13:35:21 up 7 days, 2 min, 1 user, load average: 0.06, 0.08, 0.08