From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: polyorb
Date: Tue, 13 Aug 2019 12:09:21 +0200
Date: 2019-08-13T12:09:21+02:00 [thread overview]
Message-ID: <qiu28h$oot$1@gioia.aioe.org> (raw)
In-Reply-To: 7682ca22-c220-44be-ad66-9b814556e06f@googlegroups.com
On 2019-08-13 10:13, tonyg wrote:
> The flexibility from the DSA comes from the rigidity of the types used across the partitions. This being a natural amplification from the ada language.
Annex E is intended and good for tightly coupled static systems, e.g. a
network of engine control units of a car.
In a loosely coupled system with nodes going on and off, changing or
only modifying their roles and services, RPCs and types known prior to
start is not a good choice. Another problem with RPC is that synchronous
calls are utterly inefficient and slow. For a real-time system with a
time-triggered transport calculated for the worst-case scenario this is
no problem. But for most practical applications the load is
unpredictable and millisecond accumulating latencies is not an option.
Regarding types, there were many attempts to bring some sort of abstract
types and even OO to distributed systems, they all failed (CORBA, ASN.1
included).
This is why data distribution layers stick to some fixed set of
primitive types leaving to the application to build upon them. Many have
no types at all, only messages (e.g. MQTT). It is not nice but it works.
IMO, annex E's remote types was a good start. But there is a lot of work
required to make it full OO, to defining QoS things making it usable in
loosely coupled applications.
I also think that current work on new concurrent programming primitives
is wasting time. It must be invested into annex E which should serve
both concurrent and distributed programming. The difference between a
distributed and a multiple core system is not that dramatic (and shared
memory architectures will likely die in some future anyway).
> I have found it in action, very resiliant, one time when the connection was interrupted between two nodes by a server room fire, both nodes merrily carried on and updated nicely swapping all the stored information once the server inbetween was replaced. **true story :) **
Well that is certainly some application layer stuff that did the
replication, not the annex E. It has no idea about the deeper states (no
pun intended (:-)) of partitions.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2019-08-13 10:09 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-10 22:49 polyorb tonyg
2019-08-10 22:58 ` polyorb Jere
2019-08-11 8:05 ` polyorb Dmitry A. Kazakov
2019-08-11 8:29 ` polyorb tonyg
2019-08-11 8:34 ` polyorb tonyg
2019-08-11 15:45 ` polyorb Dmitry A. Kazakov
2019-08-12 16:31 ` polyorb tonyg
2019-08-12 19:44 ` polyorb Dmitry A. Kazakov
2019-08-13 8:13 ` polyorb tonyg
2019-08-13 10:09 ` Dmitry A. Kazakov [this message]
2019-08-12 19:49 ` polyorb cryintothebluesky
2019-08-13 7:45 ` polyorb tonyg
2019-08-20 16:12 ` polyorb Frédéric Praca
-- strict thread matches above, loose matches on Subject: below --
2011-01-04 7:24 PolyORB Shark8
2011-01-07 17:24 ` PolyORB Anh Vo
2011-01-12 2:09 ` PolyORB Shark8
2011-01-12 17:12 ` PolyORB Anh Vo
2011-01-12 22:03 ` PolyORB Shark8
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox