Distributed Computing

Sort By:

Describing the Elephant:
The Different Faces of IT as Service

In a well-known fable, a group of blind men are asked to describe an elephant. Each encounters a different part of the animal and, not surprisingly, provides a different description. We see a similar degree of confusion in the IT industry today, as terms such as service-oriented architecture, grid, utility computing, on-demand, adaptive enterprise, data center automation, and virtualization are bandied about. As when listening to the blind men, it can be difficult to know what reality lies behind the words, whether and how the different pieces fit together, and what we should be doing about the animal(s) that are being described.

by Ian Foster, Steven Tuecke | August 18, 2005


Enterprise Software as Service

While the practice of outsourcing business functions such as payroll has been around for decades, its realization as online software services has only recently become popular. In the online service model, a provider develops an application and operates the servers that host it. Customers access the application over the Internet using industry-standard browsers or Web services clients. A wide range of online applications, including e-mail, human resources, business analytics, CRM (customer relationship management), and ERP (enterprise resource planning), are available.

by Dean Jacobs | August 18, 2005


Web Services and IT Management

Web services aren't just for application integration anymore.

by Pankaj Kumar | August 18, 2005


Enterprise Grid Computing

I have to admit a great measure of sympathy for the IT populace at large, when it is confronted by the barrage of hype around grid technology, particularly within the enterprise. Individual vendors have attempted to plant their flags in the notionally virgin technological territory and proclaim it as their own, using terms such as grid, autonomic, self-healing, self-managing, adaptive, utility, and so forth. Analysts, well, analyze and try to make sense of it all, and in the process each independently creates his or her own map of this terra incognita, naming it policy-based computing, organic computing, and so on.

by Paul Strong | August 18, 2005


Lessons from the Floor

The January monthly service quality meeting started normally—around the table were representatives from development, operations, marketing, and product management, and the agenda focused on the prior month’s performance. As usual, customer-impacting incidents and quality of service were key topics, and I was armed with the numbers showing the average uptime for the part of the service that I represent: MSN, the Microsoft family of services that includes e-mail, Instant Messenger, news, weather and sports, etc.

by Daniel Rogers | January 31, 2006


Monitoring, at Your Service

Internet services are becoming more and more a part of our daily lives. We derive value from them, depend on them, and are now beginning to assume their ubiquity as we do the phone system and electricity grid. The implementation of Internet services, though, is an unsolved problem, and Internet services remain far from fulfilling their potential in our world.

by Bill Hoffman | January 31, 2006


Beyond Beowulf Clusters

In the early ’90s, the Berkeley NOW (Network of Workstations) Project under David Culler posited that groups of less capable machines (running SunOS) could be used to solve scientific and other computing problems at a fraction of the cost of larger computers. In 1994, Donald Becker and Thomas Sterling worked to drive the costs even lower by adopting the then-fledgling Linux operating system to build Beowulf clusters at NASA’s Goddard Space Flight Center. By tying desktop machines together with open source tools such as PVM (Parallel Virtual Machine), MPI (Message Passing Interface), and PBS (Portable Batch System), early clusters—which were often PC towers stacked on metal shelves with a nest of wires interconnecting them—fundamentally altered the balance of scientific computing.

by Philip Papadopoulos, Greg Bruno, Mason Katz | May 4, 2007


Distributed Computing Economics

Computing economics are changing. Today there is rough price parity between: (1) one database access; (2) 10 bytes of network traffic; (3) 100,000 instructions; (4) 10 bytes of disk storage; and (5) a megabyte of disk bandwidth. This has implications for how one structures Internet-scale distributed computing: one puts computing as close to the data as possible in order to avoid expensive network traffic.

by Jim Gray | July 28, 2008


CTO Roundtable: Cloud Computing

Our panel of experts discuss cloud computing and how companies can make the best use of it.

by Mache Creeger | June 2, 2009


Cloud Computing: An Overview

A summary of important cloud-computing issues distilled from ACM CTO Roundtables

by Mache Creeger | June 12, 2009


Monitoring and Control of Large Systems with MonALISA

MonALISA developers describe how it works, the key design principles behind it, and the biggest technical challenges in building it.

by Iosif Legrand, Ramiro Voicu, Catalin Cirstoiu, Costin Grigoras, Latchezar Betev, Alexandru Costan | July 30, 2009

CACM This article appears in print in Communications of the ACM, Volume 52 Issue 9


Why Cloud Computing Will Never Be Free

The competition among cloud providers may drive prices downward, but at what cost?

by Dave Durkee | April 16, 2010

CACM This article appears in print in Communications of the ACM, Volume 53 Issue 5


Securing Elasticity in the Cloud

Elastic computing has great potential, but many security challenges remain.

by Dustin Owens | May 6, 2010

CACM This article appears in print in Communications of the ACM, Volume 53 Issue 6


Condos and Clouds

Constraints in an environment empower the services.

by Pat Helland | November 14, 2012

CACM This article appears in print in Communications of the ACM, Volume 56 Issue 1


There's Just No Getting around It: You're Building a Distributed System

Building a distributed system requires a methodical approach to requirements.

by Mark Cavage | May 3, 2013


Toward Software-defined SLAs

Enterprise computing in the public cloud

by Jason Lango | January 6, 2014

CACM This article appears in print in Communications of the ACM, Volume 57 Issue 1


Unikernels: Rise of the Virtual Library Operating System

What if all the software layers in a virtual appliance were compiled within the same safe, high-level language framework?

by Anil Madhavapeddy, David J. Scott | January 12, 2014


There is No Now

Problems with simultaneity in distributed systems

by Justin Sheehy | March 10, 2015

CACM This article appears in print in Communications of the ACM, Volume 58 Issue 5


Reliable Cron across the Planet

...or How I stopped worrying and learned to love time

by Štěpán Davidovi, Kavita Guliani | March 12, 2015


From the EDVAC to WEBVACs

Cloud computing for computer scientists

by Daniel C. Wang | April 9, 2015

CACM This article appears in print in Communications of the ACM, Volume 58 Issue 8


Evolution and Practice: Low-latency Distributed Applications in Finance

The finance industry has unique demands for low-latency distributed systems.

by Andrew Brook | May 4, 2015