Tuesday, June 16, 2009

What if Domino Could Scale?

Years ago, I and many others even more intelligent than I pondered what if we could build a Domino infrastructure to support a whole country, say 5 million people.

It was a great idea and a great project but we were told, in R5 era, we shouldn't do it. Not that we couldn't or at least try.

At the time I asked around in Product Management about this and was met with the usual reasons but no one actually stopped and said, perhaps we can try it. It was just presumed it couldn't do it.

The time has come(and some might argue this was behind the Workplace initiative)to scale the mountain and the country. If the client side is not working, the server side always has and maybe that is where we are going. Client agnostic, but server specific.

Just wondering as I learn more about Cloud offerings and companies which want to leverage the world's infrastructure not their own.


  1. I'm skeptical whether you could do it without Directory Federation. If you were sticking with your directory in NSF, you'd probably want to have config directories only and design a dedicated directory cluster for the rest of the environment.

    There's only a handful of Domino experts I'd think could build such an environment reliably. I'm certainly not among them.

  2. I'm fairly sure that Domino could scale in some of the Caribbean countries. Most of them have under a Million in population.
    I could definitely see applications like 911's "BONES" working for public clinics.

  3. Bones doesn't require that the patient have a directory entry anyway. Only the care provider. According to the US Dept. of Labor, there are 13 million people employed as medical professionals in the US. But we don't need a single central directory for all of them anyway. Cross-practice communication is federated, and authenticated using the PKCS.

  4. Might be ok with the Vatican City (population approx 900 - smallest country in the world by population and area 110 acres).

  5. Lotus Foundations Branch Office is a great way to scale Domino into new office's. Provides everything for new small remote office and will cluster back to the maine hub.
    An increase in the number of servers clusterable would help scaliablity.

  6. A dedicated directory cluster would definitely be the way to go. The storage, updates, and maintenance would definitely be doable for 5 million records, within NSF, with the right hardware and possibly some minor tweaking to view update thresholds.

    If you simply wanted to go with extended directories and stripped-down NAB templates it's even easier.

    The biggest concern I see is with the Name Lookup Cache. That thing has a 16 MB limit if I recall, which is good for only (at most) a couple hundred thousand simultaneous users at any one point in time -- dependent on their group membership, etc. Got numerous groups? That number starts to drop.

    You would need some fairly sophisticated cluster management to ensure that you *never* overloaded the cache on any one cluster member, lest the cache start getting overfilled and your performance go from OK to unusable.

    But other than that? I think you're set. Now what you place on top -- that can affect things. Obviously one horrible app can bring any Domino server to its knees.

  7. Whoops - that was me above, forgot to type my name.

  8. 5 Mio users. Managing nested groups in the Domino directory (with the current limits) would be fun. I think IBM is working on something for their Live offering.

  9. I was thinking about forcing the Dircat to be used for users lookups and the core server handling the primary nab.
    Clustered Directory Servers would just be the start, imagine the storage requirements of a SAN for this type of an effort?
    Costs would be huge, but maybe we could configure a mesh network of Domino servers running on unused MIPs of those huge Mainframes.
    Either way, it still is an idea which is not likely to be tested as IBM bought a company to use for email in their Cloud initiative instead of Notes and Domino.