Une rubrique est la catégorie de messages de premier niveau dans ApsaraMQ for RocketMQ. ApsaraMQ for RocketMQ prend en charge le modèle publication/abonnement. Les producteurs publient des messages dans les rubriques et les consommateurs les reçoivent en s'y abonnant. Créez, supprimez, mettez à jour et consultez les rubriques depuis la console ApsaraMQ for RocketMQ.
Remarques sur l'utilisation
Les rubriques ne sont pas partagées entre les instances. Par exemple, une rubrique créée dans l'instance A ne peut pas être utilisée dans l'instance B.
Le type de rubrique doit correspondre au type de message. Par exemple, si vous créez une rubrique pour des messages standards, sélectionnez normal message comme type de message. Ne choisissez pas d'autres types, tels que les messages ordonnés ou transactionnels. Une incompatibilité peut entraîner des problèmes, comme la perte de messages planifiés ou différés lors du remplacement de nœuds ou de la migration d'instances.
Dans RocketMQ 5.x, le système attribue automatiquement le nombre de files d'attente par rubrique. Vous ne pouvez ni personnaliser ni modifier ce nombre, ni le consulter via la console ou l'API.
ApsaraMQ for RocketMQ ne permet pas de créer directement des rubriques à ordre global et ne propose aucun canal d'application spécifique à cet effet. Pour obtenir un ordre global des messages, créez une rubrique FIFO (ordre partitionné) et définissez la même clé de partitionnement (Sharding Key), par exemple une valeur fixe, lors de l'envoi des messages. Cette approche achemine tous les messages vers la même partition pour un traitement séquentiel.
ApsaraMQ for RocketMQ 5.x ne prend pas en charge la création automatique de rubriques, y compris celles dédiées aux lettres mortes. Vous devez créer explicitement ces rubriques via la console ou l'API. Cette configuration diffère de la version open source de RocketMQ, qui autorise la création automatique de rubriques.
Facturation
La facturation des rubriques dépend du mode de facturation de votre instance ApsaraMQ for RocketMQ.
-
Instances avec abonnement et paiement à l'utilisation
Seules les rubriques dépassant le quota gratuit de votre instance sont facturées. Aucun frais n'est appliqué tant que vous restez dans les limites du quota gratuit. Pour plus d'informations, consultez la section Frais liés aux rubriques.
-
Instances serverless
La facturation est basée sur le nombre de rubriques. Pour plus de détails, reportez-vous à la section Frais liés aux rubriques pour les instances serverless.
Créer une rubrique
Connectez-vous à la console ApsaraMQ for RocketMQ. Dans le volet de navigation de gauche, cliquez sur Instances.
Dans la barre de navigation supérieure, sélectionnez une région, telle que China (Hangzhou). Sur la page Instances, cliquez sur le nom de l'instance à gérer.
Dans le volet de navigation de gauche, cliquez sur Topics.
Sur la page Topics, cliquez sur Create Topic.
-
Dans le panneau Create Topic, saisissez un Name et une Description, sélectionnez un message type, puis cliquez sur OK.
Vous pouvez choisir parmi normal message, ordered message, scheduled/delayed message ou transactional message. Le nom de la rubrique doit comporter entre 1 et 60 caractères et ne peut contenir que des lettres, des chiffres, des traits d'union (-) et des traits de soulignement (_).
Répertorier les rubriques
Connectez-vous à la console ApsaraMQ for RocketMQ. Dans le volet de navigation de gauche, cliquez sur Instances.
Dans la barre de navigation supérieure, sélectionnez une région, telle que China (Hangzhou). Sur la page Instances, cliquez sur le nom de l'instance à gérer.
Dans le volet de navigation de gauche, cliquez sur Topics.
Sur la page Topics, consultez toutes les rubriques de l'instance actuelle.
Afficher les détails d'une rubrique
Sur la page Topics, repérez la rubrique cible et cliquez sur Details dans la colonne Actions.
Sur la page Topic Details, consultez les détails de la rubrique.
Modifier une rubrique
Sur la page Topics, repérez la rubrique cible et cliquez sur Details dans la colonne Actions.
Sur la page Topic Details, accédez à l'onglet Basic Information. Ensuite, dans la section Basic Information, cliquez sur Edit.
Dans le panneau Update Topic, mettez à jour la description de la rubrique et cliquez sur OK.
Supprimer une rubrique
La suppression d'une rubrique interrompt immédiatement ses producteurs et consommateurs. Les métadonnées de la rubrique ainsi que les données des messages sont définitivement effacées et ne peuvent pas être restaurées. Agissez avec prudence.
Attendez cinq minutes avant de pouvoir créer une autre rubrique portant le même nom.
Sur la page Topics, repérez la rubrique cible et cliquez sur Details dans la colonne Actions.
Sur la page Topic Details, accédez à l'onglet Basic Information. Ensuite, dans la section Basic Information, cliquez sur Delete Topic.
Dans la boîte de dialogue Note, cliquez sur OK.
Démarrage rapide
Testez rapidement l'envoi de messages standards depuis la console ApsaraMQ for RocketMQ. Pour envoyer et recevoir d'autres types de messages, utilisez un SDK. Pour plus d'informations, consultez la section Présentation de la référence SDK.
Sur la page Topics, repérez une rubrique dont le Message Type est défini sur normal message, puis cliquez sur Details dans la colonne Actions.
Sur la page Topic Details, cliquez sur Quick Start.
-
Dans le panneau Start Message Production and Consumption, effectuez l'une des actions suivantes :
-
Console :
Saisissez le Message Body, la Message Key et le Message Tag, puis cliquez sur OK.
-
SDK :
Consultez les exemples de code pour les différents SDK et suivez les instructions pour envoyer et recevoir des messages.
-
Afficher le tableau de bord
Le tableau de bord affiche les métriques clés relatives à la production de messages et aux clients producteurs. Pour plus d'informations, consultez la section tableau de bord.
Sur la page Topics, repérez la rubrique cible et cliquez sur Details dans la colonne Actions.
Sur la page Topic Details, cliquez sur l'onglet Dashboard.
Autres opérations
Pour obtenir des informations sur l'importation et l'exportation de rubriques, consultez la section Importer et exporter des rubriques.
FAQ
Q : Que faire si je reçois une erreur InternalError ou un message indiquant que MessageType est manquant lors de la création d'une rubrique avec Alibaba Cloud CLI ?
Lorsque vous créez une rubrique via Alibaba Cloud CLI, le paramètre MessageType est obligatoire et ne possède aucune valeur par défaut. Les valeurs valides sont : NORMAL, FIFO, DELAY. Si vous omettez ce paramètre, la création de la rubrique échoue ou renvoie une erreur InternalError.
Q : Que faire si l'appel API OnsTopicStatus renvoie une erreur BIZ_RESOURCE_NOT_EXISTS ?
Cette erreur signifie généralement que la rubrique cible n'existe pas dans l'instance spécifiée. Procédez au dépannage comme suit :
Vérifiez que l'ID de l'instance et le nom de la rubrique utilisés dans l'appel API sont corrects.
Assurez-vous que la rubrique cible existe bien dans l'instance spécifiée.
Notez que les rubriques ne peuvent pas être utilisées entre différentes instances.
Q : Comment consulter les journaux d'opérations et l'identité de l'opérateur ayant supprimé une rubrique RocketMQ ?
Connectez-vous à la console ActionTrail et recherchez le nom d'événement OnsTopicDelete ou ConsoleTopicDelete. Filtrez par région pour afficher les enregistrements de suppression et les informations relatives au compte de l'opérateur.
Les journaux d'audit sont conservés pendant une durée maximale de 90 jours. Les enregistrements âgés de plus de 90 jours ne peuvent pas être consultés.
Q : Que faire si je rencontre une erreur d'incompatibilité de type de message lorsque plusieurs projets possèdent des producteurs pour la même rubrique FIFO ?
Cette erreur n'est pas liée à la coexistence de plusieurs projets. La cause profonde réside dans le fait que la rubrique est configurée en mode FIFO (messages ordonnés), mais que le client envoie des messages identifiés comme NORMAL (messages standards). Pour résoudre ce problème :
Vérifiez la définition du message et la méthode d'envoi dans votre code.
Assurez-vous d'utiliser l'API d'envoi de messages FIFO appropriée.
Vérifiez que les attributs du message respectent les exigences du mode FIFO.
Assurez-vous que le type de rubrique et le type de message sont cohérents.
Documents connexes
Vous pouvez également gérer les rubriques en appelant les opérations API suivantes :