Скорость переполнения стека PubSub и gRPC

Мы экспериментируем с PubSub в качестве очереди на работу и проводим наши эксперименты на экземплярах в Google Cloud.

Проблема, с которой мы сталкиваемся в настоящее время, заключается в том, что создание соединения и создание задания в PubSub занимает около 300-700 мс. Мы работаем с PHP, поэтому, к сожалению, при каждом входящем запросе необходимо устанавливать новое соединение с PubSub (по крайней мере, для внешнего кода). Это ожидаемая скорость службы PubSub или мы что-то делаем не так?

Другой вопрос касается gRPC для PubSub, это выглядит многообещающе, но я не могу найти какую-либо документацию или пример кода, чтобы начать экспериментировать с этим в среде PHP. Кажется, единственные примеры, которые я нашел, работают из AppEngine, который использует классы, которые, как кажется, недоступны за пределами AppEngine.

Надеюсь, в обоих случаях мне чего-то не хватает, я бы очень хотел использовать PubSub.

Обновить: Я частично решил проблему, установив кеш на клиенте. Но это все еще 200 мс-500 мс

1

Решение

Теперь вы можете использовать PubSub + gRPC с Google Cloud PHP PubSub SDK (composer require google/cloud-pubsub). Увидеть официальная документация для получения дополнительной информации.

Если вы используете gRPC, не забудьте также установить расширение protobuf вместо использования нативной реализации PHP. Без расширения gRPC на самом деле помедленнее чем отдых. Чтобы установить расширение protobuf:

pecl install protobuf
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]