Skip to content

{ Tag Archives } scalability

Retiring AMO’s Landfill

A few years ago we deployed a landfill for AMO – a place where people could play around with the site without affecting our production install and developers could easily get some data to import into their local development environment. I think the idea was sound (it was modeled after Bugzilla’s landfill) and it was […]

Also tagged , ,

Splitting AMO and the Marketplace

Years ago someone asked me what the fastest way to stand up an App Marketplace was. After considering that we already had several Add-on Types in AMO I replied that it would be to create another Add-on Type for apps, use the AMO infrastructure as a foundation for logins/reviews/etc. and do whatever minor visual tweaks […]

Also tagged , , , ,

Inception: projects within projects

When we converted addons.mozilla.org from PHP to Python I mentioned how deceptively large (lines of code) the site had grown with so many views and features. We’ve since built marketplace.firefox.com on literally the same code base (a decision I hoped to blog about some day, alas) and the line count continues upwards. The MVC paradigm […]

Also tagged , , , ,

Libraries to connect to a Citrix NetScaler or Zeus Traffic Manager

The first front end cache we used on AMO was the Citrix NetScaler. I’ve complained about it’s API before but apparently never announced the library I wrote to purge items from the cache. So, a little late, but I have some reusable PHP code that will talk to your NetScaler and let you expire objects. […]

Also tagged , , , ,

AMO Development Changes in 2010

The AMO team met in Mountain View last week to develop a 2010 plan. We’ve been wanting to change some key areas of our development flow for a while but we needed to make sure time was budgeted in the overall AMO and Mozilla goals. As usual, the timeline will be tight, but the AMO […]

Also tagged , , , , , , , , , ,

Planning your API is important

I’m upgrading some code I wrote to talk to a new version of the Citrix NetScaler‘s API. The NetScaler’s manuals (that’s right, plural) weigh in at a combined 1114 pages so documentation isn’t a problem and their implementation is a breeze using WSDL over SOAP. However, some of the core changes left me scratching my […]

Also tagged , ,

Speed testing your web site with AOL Pagetest

I’m at Velocity 2008 right now and the keynote I was most excited about this morning introduced http://webpagetest.org/. This site accepts a URL which it loads over a network connection with the speed of your choice. After loading the site it offers you a waterfall graph of page elements, a screenshot so you can see […]

Also tagged ,

Memcached best practices and internals

Yesterday, igvita.com published a short article summarizing memcached internals and best practices. It was originally a talk by Brian Aker and Alan Kasindorf and their slides are included. It’s a good read and digs into memcached’s memory management and expiration logic. (Thanks for the heads up, chenb). I noticed their first best practice for memcached, […]

Also tagged , ,

Caching is easy; Expiration is hard

Still on a high from our success with memcached in AMO version 2, we decided to go a fairly common route and cache query results in version 3. This performs admirably particularly with our rediculously long and slow queries. Over time, though, the popularity of the site and the load on the servers climb, and […]

Also tagged , , ,

AMO Scalability: Then and Now

Struggling with scalability on AMO is nothing new but the tools we use to solve the problems have changed over time. Here is a bit of information on the performance evolution AMO has gone through. I wanted to link to the wayback machine for all our old versions, but I get “Redirect Errors” for the […]

Also tagged , , , ,