Tous les produits
Search
Centre de documentation

ApsaraMQ for RocketMQ:Sample code for Go

Dernière mise à jour :Aug 09, 2026

Envoyez et recevez des messages avec le SDK Apache RocketMQ 5.x pour Go. Le tableau suivant présente les exemples de code pour chaque type de message pris en charge, ainsi que les paramètres de configuration pour connecter votre instance ApsaraMQ for RocketMQ.

Exemples de code par type de message

Tous les types de messages utilisent la même implémentation de SimpleConsumer pour recevoir les messages. L'implémentation du producteur varie selon le type de message.

Type de message Exemple de producteur Exemple de consommateur
Messages normaux Synchrone : ExampleProducerNormalMessage.go ExampleSimpleConsumer.go
Messages normaux Asynchrone : AsyncExampleProducerNormalMessage.go Voir ci-dessus
Messages ordonnés ExampleProducerWithFifoMessage.go Voir ci-dessus
Messages planifiés et différés ExampleProducerDelayMessage.go Voir ci-dessus
Messages transactionnels ExampleProducerWithTransactionalMessage.go Voir ci-dessus

Paramètres

Remplacez les espaces réservés suivants dans les exemples de code par les valeurs de votre instance ApsaraMQ for RocketMQ.

Paramètre Exemple Description
Endpoint rmq-cn-xxx.{regionId}.rmq.aliyuncs.com:8080 Endpoint de l'instance. Utilisez l'endpoint public pour un accès Internet ou l'endpoint VPC pour un accès via VPC. Pour plus d'informations, consultez la rubrique Obtenir l'endpoint d'une instance.
InstanceId rmq-cn-xxx ID de votre instance ApsaraMQ for RocketMQ.
Topic normal_test Topic utilisé pour envoyer et consommer des messages. Créez le topic au préalable. Pour plus d'informations, consultez la rubrique Créer un topic.
ConsumerGroup GID_test Groupe de consommateurs utilisé pour consommer des messages. Créez le groupe de consommateurs au préalable. Pour plus d'informations, consultez la rubrique Créer un groupe de consommateurs.
AccessKey 1XVg0hzgKm****** Nom d'utilisateur de l'instance. Requis pour un accès Internet. Pour un accès VPC, ce paramètre n'est nécessaire que si l'instance est serverless et si l'authentification gratuite dans les VPC est désactivée. Pour plus d'informations, consultez la rubrique Obtenir le nom d'utilisateur et le mot de passe d'une instance.
SecretKey ijSt8rEc45****** Mot de passe de l'instance. Requis pour un accès Internet. Pour un accès VPC, ce paramètre n'est nécessaire que si l'instance est serverless et si l'authentification gratuite dans les VPC est désactivée. Pour plus d'informations, consultez la rubrique Obtenir le nom d'utilisateur et le mot de passe d'une instance.

Accéder à une instance serverless via Internet

Pour accéder à une instance ApsaraMQ for RocketMQ serverless via Internet, ajoutez les champs NameSpace et Credentials à la configuration du SDK.

Remarque

Remplacez InstanceId par l'ID réel de votre instance.

Configuration du producteur

producer, err := rmq_client.NewProducer(&rmq_client.Config{
	Endpoint: Endpoint,
	NameSpace: "InstanceId",
	Credentials: &credentials.SessionCredentials{
		AccessKey:    AccessKey,
		AccessSecret: SecretKey,
	},
},

Configuration du consommateur

simpleConsumer, err := rmq_client.NewSimpleConsumer(&rmq_client.Config{
	Endpoint: Endpoint,
	ConsumerGroup: ConsumerGroup,
	NameSpace: "InstanceId",
	Credentials: &credentials.SessionCredentials{
		AccessKey:    AccessKey,
		AccessSecret: SecretKey,
	},
},