Vous pouvez configurer la mise en forme de publication Pub/Sub du transcodeur Mainframe Connector en ajoutant la configuration requise dans un fichier JSON, puis en spécifiant ce fichier à l'aide de l'option --input-parameter pubsub-publish-configuration
=DataPath avec la commande qsam decode
.
Vous devez définir la configuration de publication Pub/Sub comme indiqué dans la section PubsubConfiguration.
Cette page décrit les différents paramètres Pub/Sub que vous pouvez configurer comme paramètres d'entrée pour le transcodage.
L'objet PubsubPublishConfiguration
contient toutes les options de configuration du décodeur Pub/Sub.
PubsubPublishConfiguration
L'objet PubsubPublishConfiguration
vous permet de configurer les messages envoyés à Pub/Sub et est utilisé avec la commande qsam decode
.
Représentation JSON |
---|
{ "attributes_configuration": object ( |
Champs | |
---|---|
attributes_configuration |
Spécifiez la configuration des attributs. Vous pouvez spécifier la configuration sous forme de paires clé-valeur pouvant être associées à un message Pub/Sub. La configuration peut ensuite être utilisée pour filtrer les messages ou pour transmettre des métadonnées supplémentaires. |
ordering_key_configuration |
Spécifiez la configuration de la clé de tri. Cette configuration vérifie que les messages ayant la même clé de tri sont distribués dans l'ordre. Si vous ne définissez pas cette configuration, l'ordre des messages n'est pas garanti. |
spillover_configuration |
Spécifiez la configuration de l'envoi des messages de débordement.
Si cette valeur n'est pas définie, les messages de débordement sont envoyés au sujet d'entrée avec un suffixe |
batching_settings |
Spécifiez les paramètres de traitement par lots pour publier des messages. Par défaut, le traitement par lot est désactivé. Pour en savoir plus, consultez Publier avec des paramètres de lot. |
flow_control_settings |
Spécifiez les paramètres de contrôle de flux à utiliser pour publier des messages. Par défaut, les paramètres de contrôle de flux sont désactivés. Pour en savoir plus, consultez la section Publier des messages avec des paramètres de contrôle de flux. |
concurrency_control_settings |
Spécifiez les paramètres de traitement des messages et de simultanéité pour le client éditeur. Ces paramètres contrôlent le parallélisme pour la publication des messages, la confirmation des diffusions réussies et la gestion des erreurs lors du processus de publication. Pour en savoir plus, consultez la section Contrôle de la simultanéité. |
AttributesConfiguration
Le message AttributesConfiguration
spécifie un ensemble fixe d'attributs qui définissent la manière dont les attributs sont collectés pour les messages Pub/Sub.
Représentation JSON |
---|
{ "attributes": object ( |
Champs | |
---|---|
attributes |
Collection d'attributs clé-valeur fixes à associer aux messages Pub/Sub. |
OrderingKeyConfiguration
Le message OrderingKeyConfiguration
spécifie une chaîne statique comme clé de tri qui définit la façon dont la clé de tri des messages Pub/Sub est déterminée.
Représentation JSON |
---|
{ "key": string |
Champs | |
---|---|
key |
Valeur de chaîne à utiliser comme clé de tri pour le message Pub/Sub. |
SpilloverConfiguration
Le message SpilloverConfiguration
définit comment spécifier un autre sujet pour les messages de débordement.
Vous pouvez spécifier un nom de thème complet ou un suffixe à ajouter au nom de thème saisi.
Ces deux options s'excluent mutuellement. Vous devez en choisir une.
Représentation JSON |
---|
{ "name": string, "suffix": string |
Champs | |
---|---|
name |
Spécifiez le nom de ressource complet d'un autre sujet pour les messages de débordement au format |
suffix |
Spécifiez un suffixe à ajouter au nom du thème d'entrée pour les messages de débordement.
Par exemple, si le sujet d'entrée est |
BatchingSettings
Le message BatchingSettings
vous permet de spécifier les paramètres de lot pour publier des messages dans Pub/Sub.
Vous devez vérifier que vos paramètres de lot sont configurés pour respecter les quotas et limites Pub/Sub définis.
Pour désactiver le traitement par lot, définissez message_count_threshold=1
.
Représentation JSON |
---|
{ "delay_threshold": string, "element_count_threshold": long, "request_byte_threshold": long |
Champs | |
---|---|
delay_threshold |
Spécifiez le seuil de délai à utiliser pour le traitement par lot. Une fois le délai défini par |
element_count_threshold |
Spécifiez le seuil de nombre de messages à utiliser pour le traitement par lot. Une fois que le nombre de messages définis par |
request_byte_threshold |
Spécifiez la taille maximale, en octets, des messages à accumuler avant d'envoyer un lot à Pub/Sub. Cette règle s'applique même si les seuils de délai ou de nombre de messages n'ont pas encore été dépassés. Si vos messages sont toujours de petite taille, envisagez d'augmenter le seuil d'octets. La valeur par défaut est de 1 octet. |
FlowControlSettings
Le message FlowControlSettings
vous permet de spécifier comment le client éditeur gère le flux de messages vers Pub/Sub.
Ces paramètres empêchent le client de consommer des ressources excessives ou de surcharger Pub/Sub.
Représentation JSON |
---|
{ "limit_exceeded_behavior": enum ( |
Champs | |
---|---|
limit_exceeded_behavior |
Spécifiez le comportement lorsque les limites de contrôle de flux sont dépassées. La valeur par défaut est |
max_outstanding_element_count |
Spécifiez le nombre maximal de messages pouvant être en attente (envoyés, mais pas encore confirmés par Pub/Sub). Si votre mainframe dispose d'une mémoire abondante et que vous souhaitez obtenir un débit très élevé, vous pouvez essayer d'augmenter le nombre. |
max_outstanding_request_bytes |
Spécifie la taille totale maximale, en octets, des messages en attente. |
ConcurrencyControlSettings
Le message ConcurrencyControlSettings
vous permet de configurer le parallélisme de la publication des messages.
Ces paramètres déterminent le nombre de messages pouvant être envoyés simultanément.
Représentation JSON |
---|
{ "publishing_threads": int, "result_processing_threads": int |
Champs | |
---|---|
publishing_threads |
Spécifiez le nombre de threads de traitement pour publier des messages. La valeur doit être égale ou inférieure au nombre de cœurs disponibles. Si le nombre de threads est nul, la publication est gérée de manière synchrone. |
result_processing_threads |
Spécifiez le nombre de threads pour traiter les résultats des messages Pub/Sub. Cela inclut la confirmation des messages envoyés avec succès et la gestion des erreurs qui se produisent lors de la publication. Une valeur de 0 signifie que le parallélisme de traitement des résultats est géré de manière synchrone. La valeur par défaut est de 1. |
Attributs
Le message Attributes
spécifie une collection de paires clé-valeur Attribute
qui définissent la manière dont les attributs sont déterminés.
Représentation JSON |
---|
{ "attribute": object ( |
Champs | |
---|---|
attribute |
Spécifiez une collection de paires clé-valeur. |
Attribut
Le message Attribute
représente une seule paire clé-valeur utilisée comme attribut de message Pub/Sub.
Représentation JSON |
---|
{ "key": string, "value": string |
Champs | |
---|---|
key |
Spécifiez la clé de l'attribut. |
value |
Spécifiez la valeur de l'attribut. |
LimitExceededBehavior
L'énumération LimitExceededBehavior
vous permet de configurer le comportement lorsque les limites de contrôle de flux sont dépassées.
Énumérations | |
---|---|
BLOCK |
L'éditeur Pub/Sub bloque les messages lorsque les limites sont dépassées. Cela empêche la publication de nouveaux messages jusqu'à ce que des ressources soient disponibles. |
IGNORE |
L'éditeur Pub/Sub ignore les limites et continue de publier des messages lorsqu'il les dépasse. Cela peut entraîner une augmentation de la consommation de ressources. |
THROW_EXCEPTION |
L'éditeur Pub/Sub génère une exception lorsque les limites sont dépassées, ce qui indique un échec de la publication. |