тут за gql общались выше, я не нашёл чем тред закончился, но хотел бы вставить 5 копеек. Я только в одном проекте с ним работал, может быть ребята там его неправильно использовали, но после него остались только отрицательные впечатления: тонны кодолапши, связанность микросервисов из-за федераций и какой-то он сложный что ли
с федерацией у меня лично опыта мало, но RPC плох в первую очередь тем, что создаёт тесную связь между клиентом и сервером. Если клиентов много и требования у них разные то RPC превращается в свалку endpoint’ов, либо приложение страдает от больших задержек
RPC хорошо когда все сервисы в пределах одного датацентра - задержки незначительные. А вот когда мобилка подключается к серверу задержки могут быть до 300 и более мс