add message cache
update method
remove serialization id
cache and reuse Message to avoid garbage creation