Yahoo! and FreeBSD

http://zer0.org/daemons/yahoobsd.html

Yahoo! began life at Stanford University on a DEC Alpha box running OSF and a Sparc 20 running SunOS. They served us well for the first year but we learned that neither system was really designed for handling a large number of HTTP requests. In fact we were unable to find any commercial system that addressed the problems we were facing with scalability. This was one of the unfortunate realities of being at the forefront of Web technology.(互联网初期的OS都没有办法处理大量HTTP连接请求)

After leaving Stanford we used a few platforms including SGI IRIX, Linux, and BSDI. Not being impressed with anything we'd used (in terms of performance and stability), we were still looking for alternatives. As Yahoo! grew more popular, both scalability and stability were becoming critical to our success. At the time none of us knew anything about FreeBSD, but after seeing references to it I thought I'd give it a try.(即便是Linux那时的性能和扩展性都不理想)

Having spend many frustrating hours trying to install other PC OS's, I was a bit skeptical. I had no intention of spending three days trying to install yet another one. To my surprise I went to the FreeBSD Web site, downloaded the floppy boot image, booted a PC with the created floppy, answered a few install questions, and a few minutes later FreeBSD was installing over the Net. The real surprise was when I cam back later to a fully configured system that actually worked. If anything had gone wrong with that install it would likely been the end of that trial. Luckily for us that it was the easiest and most painless OS installs I had ever experienced.

A couple of days later we added a FreeBSD box to our cluster of Web servers. Not only did it out-perform the rest of our machines, but it was more stable. A few weeks into this experiment and we were sold. Although the price was certainly attractive, it was the stability, performance, and access to the sourcode that sold us. Ever since then we've used FreeBSD almost exclusively for production as well as our development environment.(性能,稳定性,可扩展性,源代码,价格。使用FreeBSD作为生产和开发环境)

Early on the two big unknowns were support issues and the future direction of FreeBSD. The support we've received from the core team as well as other users has been excelent. This support along with the source code has allowed us to solve any issues we've had almost immediately. Likewise we were pleasantly surprised with the organization and direction of the FreeBSD project as we learned more about it and the people involved over the last two years.(最担心的两个问题是支持和未来发展方向)

We started with a single Pentium 100 box running FreeBSD 2.0.5. We eventually migrated the rest of our production servers to FreeBSD and today we have over 50 servers running various versions of 2.1 STABLE. We are in the process of testing 2.2 STABLE and hope to convert during the next 6 months. The machines we use range from a Pentium 100 with 64MB of memory to a PPro200 with 256MB of memory. When additional I/O performance is needed we use ccd with stripping over multiple disks. 100Mbps fast ethernet is used for networking. Overall an extremely cost effective solution.

FreeBSD has been extremely stable for us. We've seen over 180 days of uptime on a machine serving over 4 million HTTP requests per day. Performance has been impressive too. With disk striping using ccd we've been able to serve over 12 million HTTP requests per day on a PPro200 with 128MB of memory. One of the only negative things we've found with FreeBSD has been the lack of third party software. Fortunately this is changing, but there's still a long way to go. The only way for this to change is for Yahoo! along with other organizations to convince the software vendors that there is a big enough market for their products.(持续工作180天,每天可以处理4M的HTTP请求,如果使用ccd/RAID每天则可以处理到12M. FreeBSD最大的问题在于第三方软件支持,需要组织来让软件厂商相信FreeBSD有足够的市场)

One of our big technical challenges is scaling our services in the face of rapid growth. Looking forward we are very interested in using SMP to achieve even better price/performance. FreeBSD on other platforms (e.g. Alpha) is also interesting from the price/performance perspective. We are also looking at FreeBSD to provide other services such as large reliable RAID file servers. Overall we've found FreeBSD to excel in performance, stability, technical support, and of course price. Two years after discovering FreeBSD, we have yet to find a reason why we should switch to anything else.(那时FreeBSD还不支持SMP以及Alpha等处理器)

comments powered by Disqus