Call activities hosted by other services

I have seen that @maxim mentioned that it is possible to call an activity hosted by different service here

How is that possible? I thought that you can call only activities registered on the current worker, not on the other ones.

You do it by using a distinct task queue name per service. When invoking an activity you specify the correct task queue name using ActivityOptions.TaskQueue.

Do you consider it as a best practice or more as a hack? Am I discouraged to do that?

I’m not sure I understand the question. Are you asking if microservice architecture is a best practice or hack compared to monolith?

Im asking if its correct usage of Temporal to call the activities owned by different service? I thought it should be done via workflow…

Yes, it is done via workflow by specifying the correct ActivityOptions.TaskQueue when calling them.