Розбір рішень · Middle · Запитання 7 з 14
Оформлення замовлення викликає сервіс рекомендацій, що інколи зависає на 30 секунд. Рекомендації необов'язкові, а оформлення має лишатися швидким. Що зробити?
- 1Довгий таймаут із кількома повторами при кожному збої
- 2Перенесення рекомендацій у сам сервіс оформлення
- 3Короткий таймаут із запасним варіантом без рекомендацій
Показати відповідь
Правильна відповідь: Короткий таймаут із запасним варіантом без рекомендацій
Пояснення
Необов'язкова функція не має гальмувати основний потік, тож короткий таймаут і порожній запасний варіант лишають оформлення швидким. Довгі таймаути з повторами підходять для залежності, без якої справді не можна, а тут накопичать затримки поверх завислого сервісу. Злиття сервісів підходить для двох частин, що завжди змінюються разом, але це велике переписування, яке не лікує саму повільність.