To guarantee messages are received by the service in the same order that the application gives them to a publisher, the client library needs to wait until a batch of messages is successfully delivered before sending the next batch, otherwise batches may arrive out of order as there is no guarantee the same channel or network path is used for each batch.
For applications that do not care about message ordering, this can limit the throughput. Therefore, the behavior is disabled by default.
See Also
the documentation for the Publisher class for details.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-04-17 UTC."],[[["The page provides a list of different versions of the `MessageOrderingOption` for the Google Cloud Pub/Sub C++ client library, with version 2.37.0-rc being the latest release candidate."],["The default behavior for message ordering in the `Publisher` class is disabled to maximize throughput, as guaranteeing order requires waiting for each batch to be delivered successfully."],["The page references the `Publisher` class documentation, providing information regarding the implications and usage of message ordering, which is to ensure messages are received in the order they were sent."],["The page states that the `MessageOrderingOption` is a type alias of `bool`."]]],[]]