Как правильно тестировать микросервисную систему на основе GRPC на предмет стабильности / целостности при сбоях? - PullRequest
0 голосов
/ 02 октября 2018

Мне нужно протестировать поведение системы на основе микросервисов GRPC, когда некоторые сервисы начинают зависать / зависать при пользовательских запросах.

Для этого мне нужен какой-то механизм управления, позволяющий мне регулировать поведение системы вплоть до отдельных запросов RPC.

"What if request X causes the service Y to timeout?"

"What if request W causes the service A to crash?"

Это вопросы, на которые я хочу ответить и проверить.

Какой правильный / самый простой способ сделать такие вещи с GRPC?

Мой текущий план (если никто не предлагает ничего лучшего) состоит в том, чтобы создавать посреднические службы, использующие как можно больше соглашений об именах и макросах препроцессора, которые принимают запросы и либо перенаправляют их на реальную службу, либо начинают моделировать сбои / тайм-ауты на основена некоторых управляющих файлах .ini для каждой функции.

Есть ли способ автоматизировать это с помощью grpc?Написание этих посреднических услуг вручную, даже с помощью препроцессора, кажется чем-то, что кто-то, возможно, уже автоматизировал.

Для справки: система GRPC / C ++ в основном

...