You all know about the honey bee waggle dance. A bee finds some nectar, returns to the hive, does a dance that communicates information about where the nectar can be found to other bees, and off the workers go to get the nectar.
Techies at Georgia Tech have applied this method to developing a better way to run servers.
After studying the efficiency of honeybees, Craig Tovey, a professor in the H. Milton Stewart School of Industrial and Systems Engineering at Georgia Tech, realized through conversations with Sunil Nakrani, a computer science colleague visiting from the University of Oxford, that bees and servers had strikingly similar barriers to efficiency.
“I studied bees for years, waiting for the right application,” Tovey said. “When you work with biomimetics (the study of how biological principles can be applied to design and engineering), you have to look for a close analogy between two systems — never a superficial one. And this definitely fit the bill.”
The more Tovey and Nakrani discussed bees and servers, the surer they became that somehow the bees’ strategies for allocating limited resources in an unpredictable and constantly changing environment could be applied to Internet servers.
Honeybees have a limited number of workers at any given time to fly out to flowers, collect nectar, return to the hive and repeat until the nectar source is depleted. Sometimes, there’s an abundance of nectar to be collected; at other times nectar is scarce. The bees’ environment is constantly changing — some flower patches occasionally yield much better nectar than others, the seasons shift and rainy days make nectar collection difficult. So how do the bees manage to keep a steady flow of nectar coming into the hive?
Internet servers, which provide the computing power necessary to run Web sites, typically have a set number of servers devoted to a certain Web site or client. When users access a Web site, the servers provide computing power until all the requests to access and use the site have been fulfilled. Sometimes there are a lot of requests to access a site (for instance, a clothing company’s retail site after a particularly effective television ad during a popular sporting event) and sometimes there are very few. Predicting demand for Web sites, including whether a user will access a video clip or initiate a purchase, is extremely difficult in a fickle Internet landscape, and servers are frequently overloaded and later become completely inactive at random.
Read the rest here.