.NET Orleans
I&#x27;m involved in a project that uses Orleans. Conceptually and technically it&#x27;s very interesting. Nodes automatically cluster together to form a big distributed system, and the concept of &quot;virtual actors&quot; make it possible to represent individual entities in the data model directly as actors, without worrying whether everything fits in memory at the same time.<p>However, Orleans doesn&#x27;t seem to play very well with Kubernetes. Kubernetes pods can be uncleanly terminated at any time for any reason. Orleans <i>really</i> doesn&#x27;t like unclean shutdowns: it will leave behind dead entries in the membership tables, which then cause problems in the future because new nodes would contact dead members and run into errors.<p>The clustering protocol also seems to assume that all members have stable identities and IP addresses, but that&#x27;s obviously not the case in Kubernetes, where each new pod has a new identity and new IP address. This can cause members to fail uncleanly, which in turn pushes the clustering protocol into an infinite loop.<p>Orleans was introduced by one person who has a background in distributed computing. Unfortunately, he&#x27;s the only one in the organization with such a background. After he left, nobody could debug clustering problems.