Search code examples
architecturecontainersmicroservicesreactive-streamsrsocket

Operation Resumability of Service (?)


The #Cloud-Native way, guarantees the Availability of the services. The #containers serving the request, may die & self-heal, but the service endpoint needs to ensure the request gets served.

If the service is based on TCP socket serving custom protocol and involves complex and long running operations, do the #Resumability of the operation (from where a died container left) need to be supported in the service? If YES, what are the ways and means to achieve this?


Solution

  • Unfortunately, there is no standard way to implement long running resumable operations. The closest you can get is to use an orchestration platform like Temporal. It allows reconnecting to already running operation (aka workflow) by its business ID. Temporal also out of the box deals with container failures seamlessly reconstructing the operation implementation state.

    See my presentation that describes the Temporal programming model.