I settled in for one of Marc Benioff's legendary two-hour-long CloudForce keynotes in London yesterday morning (an abridged, snappier version of the nigh-on-three hour marathon delegates sat through at last month's DreamForce, Benioff had assured me beforehand). As I listened, I thought about the role of multi-tenancy in cloud computing. The keynote hall was full of customers and prospects — a thousand or more altogether — and I'm guessing that, even though Salesforce.com always makes a big deal of multi-tenancy and how fundamental it is to cloud computing, very few of these business people really care what technology the platform is built on, so long as it delivers the goods.
I believe SaaS and cloud vendors have got to move beyond talking just about the technology and instead talk about what cloud computing delivers — which in any case will shift the conversation onto ground where the pureplay, multi-tenant cloud solutions are better placed to win the argument, for reasons I'll come back to later in this post. The trouble with talking about multi-tenancy itself is that it draws you into an abstract debate with conventional software vendors over the relative merits of alternative deployment platforms for a given application. This immediately brings the debate onto their home ground — a place where applications are discrete, deployments happen as a batch process and you have to get the system up-and-running before you even start thinking about meeting the business requirement. That's not where the cloud is at.
Right after saying the cloud is founded on multi-tenancy, Benioff adds, "Cloud computing is also a shift to real-time." Rhetorically speaking, surely this is to put the technology cart in front of the horse? The driving, motive force behind customer adoption of cloud computing is the business need to be out there on the Web, interacting with their customers in real-time, having their fingers on the 24x7 global pulse of the market, able to react and respond instantly to changing competitive threats and opportunities. And how are they to do that if their business systems are cloistered somewhere off the Web, safely tucked away behind an enterprise firewall whose main purpose in life is to keep the Web at bay?
Cloud computing is far more than just multi-tenancy. The technology is core and it's essential, but it's not the whole story. What matters is a raft of capabilities and concepts that I prefer to group together under the umbrella term of 'platform bandwidth', all of them concerned with a cloud platform's capacity for unremitting, uncapped and continuously improving web connectivity.
When evaluating a cloud platform, rather than starting with multi-tenancy, I'd suggest buyers check through the following list of questions:
- Will it remain capable of sustaining high-bandwidth connectivity with all of your customers, suppliers, employees and other stakeholders, even at times of unexpected peak load?
- Will it stay up-to-date with every new technology development (opportunity or threat) that emerges in the global Web ecosystem over the next days, weeks, months and years — without ever making you wait for your own implementation to catch up with the state-of-the-art?
- Can you choose to participate in a community of other platform users, exchanging information and perhaps extensions and add-ons, all referencing — and ready to run on — the same shared infrastructure?
- Will it give you freedom to connect to the widest potential range of third-party services available in the global Web, and to connect to the most popular of them over a shared integration infrastructure instead of having to custom-build your own?
- Will you be able to access limitless capacity on-demand to meet all your computing needs and still only pay for what you use?
- Will your provider monitor usage in real-time and continuously tune platform performance to ensure the infrastructure remains as secure, responsive and cost-effective as possible?
I defy anyone to build a cloud platform that can deliver all of the above without making it multi-tenant at every layer of the stack. But multi-tenancy is not enough on its own. Just as important are components such as: massive Web-facing bandwidth: an API that's architected to interact with the widest possible spectrum of web resources; and an integrated operations and development team that's committed to continuous enhancement of the platform to meet the constantly-evolving needs of its customer base. By focusing the debate on multi-tenancy rather than these wider considerations of platform bandwidth, we risk misleading our audience. This year, I've seen some vendors building multi-tenant architecture for deployment on-premise. I've seen others build single-tenant applications and deploy them to a multi-tenant infrastructure. Neither approach will equip their customers with business systems that allow them to compete and thrive in the real-time, always-on, fully connected, constantly evolving environment of the connected Web. Multi-tenancy is the foundation, but it can only deliver what customers today are looking for when it's deployed in the full context of the Web itself.