docs: function(params, messages, cb) {
      cb = cb || _noop;
      if (_.isString(params)) {
        params = { topic: params };
      }
      assert(params.topic);
      if (params.partition === undefined) {
        params.partition = _nextValidPartition(params);
      }
  
      _initiate(params, function(err, topic) {
        if (err) { cb(err, null); return; }
        topic.broker.produce(topic.params, messages, function(err, response) {
          cb(err, response);
        });
      });
    }