[Info-vax] how difficult is it to implement cluster-wide global sections?

Kerry Main kemain.nospam at gmail.com
Mon Aug 6 10:40:54 EDT 2018


> -----Original Message-----
> From: Info-vax <info-vax-bounces at rbnsn.com> On Behalf Of Arne Vajhøj
> via Info-vax
> Sent: July 15, 2018 7:52 PM
> To: info-vax at rbnsn.com
> Cc: Arne Vajhøj <arne at vajhoej.dk>
> Subject: Re: [Info-vax] how difficult is it to implement cluster-wide global
> sections?
> 
> On 7/15/2018 4:25 PM, Kerry Main wrote:
> >> From: Info-vax <info-vax-bounces at rbnsn.com> On Behalf Of Arne Vajhøj
> >> Sent: July 14, 2018 10:29 PM
> >> On 7/14/2018 9:33 PM, Kerry Main wrote:
> >>>> From: Info-vax <info-vax-bounces at rbnsn.com> On Behalf Of Arne
> >>>> Vajhøj via Info-vax
> >>>> Sent: July 14, 2018 7:49 PM To: info-vax at rbnsn.com Cc: Arne Vajhøj
> >>>> On
> >>>> 7/12/2018 3:41 PM, Stephen Hoffman wrote:
> >>>>> On 2018-07-12 17:43:57 +0000, don.zong at gmail.com said:
> >>>>>> so that every node in the VMS Cluster can get access to the
> >>>>>> global section (read and write).
> >>>>>
> >>>>> TL;DR: use RMS files and global buffers, or use a database.  Or
> >>>>> expect to work for it.
> >>>>>
> >>>>> It can be quite challenging to have consistent and coherent
> >>>>> results with distributed shared memory, particularly if
> >>>>> performance is a consideration and if there are writes and
> modifications in the mix.
> >>>>
> >>>>> Some reading on distributed shared memory and consistency, and on
> >>>>> distributed computing follow.  I've included a few links on cache
> >>>>> coherent shared memory multiprocessor computing, as what's
> >>>>> involved with those designs is similar to what'll be involved
> >>>>> here.  Though with slower links.
> >>>>
> >>>> The sad fact is that despite the frequent claims "VMS share
> >>>> everything clusters are much better for state than Windows/Linux
> >>>> share nothing clusters for stateful applications - and when the DLM
> >>>> is builtin to the OS then it is much simpler and easier to use",
> >>>> then VMS clustering is not good at providing what applications need.
> >>>>
> >>>> The above is a common requirement.
> >>>>
> >>>> And for most platforms there are non-OS-specific solutions that are
> >>>> very easy to use.
> >>>>
> >>>> In the Java world one can pick from: Terracotta EHCache, Hazelcast,
> >>>> Redhat Infinispan, Oracle Coherence, Apache Ignite etc..
> >>>>
> >>>> Outside the Java world there are: memcached, redis and maybe a few
> >>>> more.
> >>>>
> >>>> VMS clustering well ...
> >>>
> >>> If distributed shared nothing cluster strategies are so easy, then
> >>> why are there so many consistency, caching issues documented here:
> >>> [video by high end Twitter distributed SW Engineer]
> 
> >> You seem to have totally missed the point.
> >>
> >> It is hard to create such libraries.
> >>
> >> It is damn easy to use them.
> >>
> >> Similar to that it is let us call it semi-easy to use SYS$ENQ(W) and
> >> SYS$DEQ(W) while implementing the VMS DLM must have been a
> >> significant task.
> >>
> >> Google, Twitter, Facebook, Amazon have huge IT orgs that produce such
> >> libraries from scratch.
> >>
> >> Business application developers just pick something and use.
> >>
> >> Cluster wide locking - no problem:
> >>
> >> ILock lock = hci.getLock("MyLock");
> >> ...
> >> lock.lock();
> >> ...
> >> lock.unlock();
> >>
> >> Cluster wide caching - no problem:
> >>
> >> IMap<Object, Object> cache = hci.getMap("MyCache"); ...
> >> Counter c = (Counter) cache.get("counter"); ...
> >> cache.set("counter", c);
> >>
> >> Use SYS$ENQ(W) & SYS$DEQ(W) - no thank you.
> >>
> >> Implement what Hoff described - you must be kidding.
> 
> > So why does this experienced Twitter / Microsoft Gaming SW Engineer
> > (see YouTube
> > link) not do what you suggested i.e. just use some "to be named" library?
> >
> > Which magic library that is available to all Customers does she not know
> about?
> 
> ????
> 
> She explicit mention some libraries:
> 
> FB Scuba.
> Uber Ringpop
> MS Orleans
> 
> Why do you ask why she is not aware of libraries when she list libraries????
> 
> And I am sure that she also knows all the grid systems I mentioned.
> 
> > Why does she feel there are so many issues to be addressed with
> > distributed systems caching, data consistency, node management, HA
> > (replication etc.) when it is as simple as you say it is?
> These libraries are very complex to create but very easy to use.
> 
> She describe some of the problems they try to solve and how they solve
> them.
> 
> > It appears from what you are saying is that rather than use an OS
> > supported cluster interface, each company has to "roll their own"
> > distributed systems cluster library for their SW Engineers to use -
> > perhaps this what I am missing?
> 
> Not really.
> 
> It depends on the size of the company's IT.
> 
> The real huge companies (think more than 10 B$/yr in IT spend) may be able
> to justify developing their own library to get it exactly as they want.
> 
> The 99.99% rest just pick some existing library. Most of them are free,
> feature rich, work on multiple OS and are accessible from multiple
> programming languages.
> 
> Arne
>

I guess it boils down to whether one thinks the OS platform level is where to build in support (one throat to choke) for distributed systems caching, data consistency, cluster node mgmt., HA (replication, including multi-site) or leaving this to each of the different App groups in an organization to make their own decisions how to handle these requirements with their associated different support models.


Regards,

Kerry Main
Kerry dot main at starkgaming dot com







More information about the Info-vax mailing list