code: func NewSyncProtocolClientMiddleware(bizDecoder Decoder, bizEncoder Encoder, writer func(IOSession, interface{}) error, maxReadTimeouts int) Middleware {
  	return &syncClientMiddleware{
  		cached:          newSimpleQueue(),
  		writer:          writer,
  		bizDecoder:      bizDecoder,
  		bizEncoder:      bizEncoder,
  		maxReadTimeouts: maxReadTimeouts,
  	}
  }
docs: // NewSyncProtocolClientMiddleware return a middleware to process sync protocol