если не изменяемое по ссылке а объект за ним мутабельный - это остается стейтлесс если ссылка на объект пришла извне в качестве "конфигурационных данных")
ну типа. вот есть стейтлесс микросервис (думаю все примерно понимают что это такое) он сконфигурен на какой-то персистенс/базу если его изменить так что персистентные данные он будет класть к себе в инмемори дб - он станет стейтфул, верно? вот тоже самое кажется можно без проблем применить в классу/объекту
такое можно сделать с помощью брокера, например, Apache Pulsar (наверняка кафкой тоже), где ID будет ключ к сообщению в очереди. будет и очередность, и роутинг по ID, и в сервисе лежать в памяти. у меня так часть сервисов написана
у меня на нем весь прод. клиента к нему функционального не было - свою обертку написали. код джавовой либы - немного страшный, но в целом все работает норм
если было 5 консьюмеров по key-shared подписке, а один отвалился, тогда сообщения будут распределены на остальные 4. состояние из консьюмера 5 магически не переедет на остальные 4, если в этом вопрос