update producer-consume model
update