Limitations

As you can see, the LRA specification has a lot of potential; it can help to manage the consistency of data within microservice architectures.

At the time of writing this book, the specification is still in a draft form, and there are numerous areas for improvement.

Having gone over the use case of our application, in my opinion, the following important limitations must be resolved:

  • Single point of failure: In the case of Narayana implementation, there is no way to set the LRA coordinator in high availability. The object store that it used to store the LRA information cannot be shared between instances, so unavailability of the LRA coordinator could be a severe issue. I think that this problem will be overcome quickly, since the Narayana team is working to provide scalability and failover for the coordinator.
  • Passing parameters to the @Compensate and @Complete methods is very complicated: For this reason, in our scenario, I used a workaround and stored the LRA ID in the domain model to perform operations against the right data. This problem makes the implementation a little more complicated.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset