Hi,
Just for fun (I mean, how much fun can you have with the following…), I am trying to implement a “axon-server-connector” for GO.
At this moment I am able to subscribe and send a basic query between my Java Spring Boot and Golang applications.
So basically I defined a query (GetUserByID
), and I can “handle” it in both applications (so for example the Java app sends with the commandGateway the query request, and the golang app replies, and viceversa).
I understand that the concept of different connectors is not really needed because of axon-synapse. But I thought it could be a nice “side” project to understand better how axon works, and also use async programming and goroutines, etc in GO.
But now the real question, I struggled quite a lot to “follow” the flow of, for example how the subscription “process” works, so I make the following gRPC calls:
- QueryProviderOutbound.Subscribe
- QueryProviderInbound.Ack
And then when the actual query request is sent:
- QueryProviderInbound.Query
- QueryProviderInbound.QueryFlowControl
- QueryProviderOutbound.QueryResponse
- QueryProviderInbound.QueryCancel
I could not find documentation on what are the expected “steps” for each “process” (in this case the query subscription, but eventually all the processes related to commands and events). I’m wondering, is there any link to read about that?
Thanks for the amazing product.