Если между сервисами начинаются циклические связи (когда сервис 1 ходит в сервис 2, а сервис 2 ходит в сервис 1) - это метрика, чтобы подумать как переделать взаимодействие, например, через ту же очередь и событийную модель
Если между сервисами цикл, то это повод задуматься о том, что это один сервис и имеет место быть неправильное деление по контекстам.
def magic(x: int, y: int, z: int) -> int:
a = 256
b = 512
c = 1024
return a * x + b * y + c * z
class A(int):
def __rmul__(self, x):
print(x)
return self * x
print(magic(A(1), A(1), A(1)))
Я знал. Дальше что?
Если между сервисами цикл, то это повод задуматься о том, что это один сервис и имеет место быть неправильное деление по контекстам.