Наличие схемы должно избавлять от ситуации, когда один кусок системы обновился, а в другом об этом никто не знает и у них немного подглючивает
сорян, что влезаю. может что и не в тему, тк не все прочел. по поводу протоколов, мне уже в двух книжках попалось упоминание протокола Apache Avro, как протокола, который позволяет жить с частичным обновлением системы. если какие-то структуры меняются, то у них идет добавление полей в конце, таким образом, что старая часть со старой структурой сможет прочитать поля, которые были в старой версии. вроде бы и в protobuff при определенных условиях произойдет что-то около того.