Linux, open source software pay off for PayPal

n By Phil Hochmuth

When Scott Thompson left Visa to take the CTO role at PayPal in 2005,
the Web company’s data center surprised him. “Wait a minute,” he
recalls saying, “they run a payment system on Linux?”

“I was pretty familiar with payment systems and global trading systems, but I just scratched my head when I came here,” Thompson says. With his history of working on IBM mainframes and large Sun Solaris systems, the PayPal approach to computing seemed alien, especially for a company whose core mission was dealing with money.

PayPal runs thousands of Linux-based, single-rack-unit servers, which host the company’s Web-presentation layer, middleware and user interface. Thompson says he quickly saw the economic, operational and development advantages of open source and Linux technology. He now sees no other way to do it.

“When you’re buying lots of Big Iron, as I did in other places I’ve worked, your upgrade path is $2 million, $3 million at a clip. You just had to buy big chunks of stuff to scale,” he says.“Here at PayPal, our upgrade path is 10 $1,000 no-name servers, slapped into the midtier of the platform. And we just keep scaling it that way. It’s unbelievably cost effective.”

This model also leads to a highly reliable site, says Matthew Mengerink, vice president of core technologies for PayPal, who helped build this architecture from scratch.

“Rather than have a monolithic box, or an impenetrable fortress that never breaks, we just have so many [nodes] that the breakages are irrelevant,” Mengerink says. Using a proprietary operating system to build out a system with a thousand points of failure would not be an option, he says.“This distributed, highly redundant system we have is predicated on the cost model of Linux and Intel,” he adds.

The distributed model also lets the company make massive shifts and resource allocation when needed. The generic Linux Lego-block-style servers that make up the company’s Web tier can be easily shifted around for a variety of tasks.

For example, every day at 1 a.m. PST,

PayPal runs its batch processing for reconciling payments. Thompson says this kind of work, typically done on mainframes or large symmetric multiprocessing boxes in other payment organizations, is spread across the middle-tier Linux servers in the data center.

“We don’t bring the site down” he says. “We just allocate a higher portion of the [servers] to running batch processes, and we crunch through all that data in three hours every night.”

References:

Archives