A research agency turned to an open source solution when it needed to process 190 million messages a day.
Felix Ehm, a member of CERN's beams control group, has always had a curious and scientific bent.
"What I did when I was a small kid and I wanted to know what was inside something, was just smash it with a hammer," Ehm, a member of the beams control group at the European nurclear research agency called CERN, told the audience at the closing address of the CamelOne open source conference in Boston on Wednesday.
On a vast scale, that's broadly what CERN's Large Hadron Collider does - smashing particles together at a whisker short of the speed of light in order to minutely document the results. Running the supercooled magnets and four gigantic detection arrays -- each of which weighs in at tens of thousands of tons - in place around the nearly 17-mile-long underground tunnel is, unsurprisingly, a fiendishly complex task.
According to Ehm, CERN began using open source message broker ActiveMQ as a way to transport data between the 85,000 machines and more than 2 million total endpoints at the facility in 2005.
While the team was initially looking only for a free Java messaging system, Ehm said that the open-source nature of ActiveMQ has provided unlooked-for advantages. Being able to tinker with source code for modification and repair, by itself, has already proved highly useful.
Additionally, the public-spirited nature of CERN dovetails well with that of open source.
"Any kind of outcome of CERN is public knowledge. There are no secrets at CERN, everything is public. Anything we develop is for humankind, basically," he said.
The system has to handle a wide variety of different use cases, according to Ehm. One such application runs a critical safety measure used to dissipate the enormous amounts of energy produced by the LHC's particle beams - which could otherwise "easily destroy the facility," he noted. The 20 or 30 clients in this system each must send 2MB per second in order to function properly.
While that 60MB per second would ordinarily tax the network to its limits, Ehm said that the team was able to share the load between two machines for better reliability.
Another application -- this one a log monitor designed to collect a huge number of updates quickly - handles 4,500 small messages per second, while routing them to a wide array of endpoints.
In total, Ehm told the audience, CERN's open-source messaging framework processes 190 million messages per day, while maintaining a 99.98 per cent uptime figure in 2011.
The importance of that high uptime percentage cannot be overemphasized, according to Ehm.
"If there is no [Java messaging system] there is no particle physics," he said. Given that the JMS controls a magnetic array so powerful that it takes a month to warm up and another to power down, the consequences of downtime can be severe.
Ehm said that his team will continue to update the middleware in place on its systems, noting that a major change - replacing CORBA (Common Object Request Broker Architecture) with a new product, while keeping JMS where it is -- is scheduled for the end of the year.
No comments:
Post a Comment