'gRPC streaming proxy | Architectural decision

I'm building microservices app that supposed to launch tests in separate containers. I also want to stream log messages to frontend and store them in database and I don't know what solution would be better in that case:

  • Use my backend as proxy to store and redirect messages to the frontend
    enter image description here
  • Stream messages to backend and frontend to avoid redirection enter image description here

Frontend could start observing the test at anytime and if in the first case I could just prepend messages that I would read from database, in second case I will need to handle concurrency issues in some way.

I'm stacked with writing proto files, so there is nothing much to post here. Just figured out how bulky backend service going to be if I will pick first decision, since will need to duplicate TestRunner's calls there.

Please also let me know if you see some other issues I'm going to face by picking any of those decisions. Thanks in advance!

[DUPLICATE]



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source