Вы спрашиваете о преждевременной оптимизации.Вы пытаетесь оптимизировать, даже не зная, что у вас есть проблема.
HTTP-соединения довольно быстрые.Существуют базы данных, которые работают с использованием HTTP API, и к этим базам обращаются при каждом HTTP-запросе сервера.Итак, часто используемый HTTP API может работать просто отлично.
Вам нужно реализовать свой сервер A, используя обычные HTTP-запросы к серверу B, которые уже поддерживаются.Затем протестируйте свою систему под нагрузкой и посмотрите, как она работает.Вполне вероятно, что реальное узкое место не будет иметь ничего общего с тем, что вы используете HTTP-запросы между сервером A и сервером B, и если вы хотите улучшить производительность своей системы, вы, вероятно, будете работать на разныхпроблемы.Вот почему вы не хотите делать преждевременную оптимизацию.
Чем больше движущихся частей в системе, тем меньше вероятность, что у вас возникнут какие-то узкие места, когда вы загружаете систему.Вот почему вы должны протестировать систему под нагрузкой, настроить ее как сумасшедшую, чтобы увидеть, где производительность больше всего влияет, а затем измерить как сумасшедшую.Тогда и только тогда вы узнаете, куда имеет смысл инвестировать свои ресурсы разработки для повышения масштабируемости или производительности.
К вашему сведению, соединение webSocket имеет некоторые преимущества по сравнению с повторными соединениями HTTP (меньше накладных расходов на соединение на запрос), но также есть и некоторые недостатки (это не запрос / ответ, поэтому вы придумали собственный способ сопоставления ответа с данным запросом).