Хотел бы понять что означает
намертво вешает систему.
в контексте микросервисов? И почему это является проблемой?
Тот получает кучу одинаковых заданий
А почему нужно обрабатывать одинаковые URL повторно?
Если, конечно, сильно надо, то можно проверять в K/V хранилище на наличие ключа с таким URL , у которого ограничено время жизни. Тогда при повторном событии просто игнорировать его.
Ну а, вообще, микросервис "Браузер" может работать только в качестве обработчика очереди, получая сообщения, отправленные REST API. Сам же просто складывать в своем темпе результаты сканирования URL в СУБД, а REST API будет проверять наличие в той же СУБД и сообщать результаты клиенту, если готово.