Cloud PubSub Client - Class BatchPublisher (1.44.0)

Reference documentation and code samples for the Cloud PubSub Client class BatchPublisher.

Publishes messages to Google Cloud Pub\Sub with background batching.

Example:

use Google\Cloud\PubSub\PubSubClient;

$pubsub = new PubSubClient();
$batchPublisher = $pubsub->topic('my_topic')
    ->batchPublisher();

$batchPublisher->publish([
    'data' => 'An important message.'
]);

Namespace

Google \ Cloud \ PubSub

Methods

__construct

Parameters
NameDescription
topicName string

The topic name.

options array

Please Google\Cloud\PubSub\PubSub\Topic::batchPublisher() for configuration details.

↳ enableCompression bool

Flag to enable compression of messages before publishing. Set the flag to true to enable compression. Defaults to false. Messsages are compressed if their total size >= compressionBytesThreshold, whose default value has been experimentally derived after performance evaluations.

↳ compressionBytesThreshold int

The threshold byte size above which messages are compressed. This only takes effect if enableCompression is set to true. Defaults to 240.

publish

}

Send messages to a batch queue.

Example:

$batchPublisher->publish([
    'data' => 'An important message.'
]);
Parameter
NameDescription
message Google\Cloud\PubSub\Message|array

An instance of Google\Cloud\PubSub\Google\Cloud\PubSub\Message, or an array in the correct Message Format.

Returns
TypeDescription
void

publishDeferred

Publish a set of deferred messages, sorted into multiple calls by ordering key.

Intended for internal use only by the batch publisher.

Parameters
NameDescription
messages array[]

A list of messages. Each message must be in the correct Message Format.

options array

[optional] Configuration Options

Returns
TypeDescription
arrayA list of message IDs.

Constants

ID_TEMPLATE

Value: 'pubsub-topic-%s'