Мне не очень нравится идея разбирать текстовые потоки JSON в
реальном времени на STM32. Особенно учитывая, что заказчик не может
определиться сколько клиентов будет. Пишет "5000 с возможностью
масштабировать". Насколько рационально оно будет разбито по
темам(топикам) тоже не ясно. Поэтому платить за JSON 100 кратным
увеличением времени обработки и 20 кратным увеличением требований к
ОЗУ и к каналу.... Какой из вариантов является говнокодом - совсем
не факт. Почему именно вы считаете это говнокодом - вы аргументы не привели.