Utilisation du service de message Java avec d'autres clients Amazon SQS - Amazon Simple Queue Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation du service de message Java avec d'autres clients Amazon SQS

L'utilisation du client Amazon SQS Java Message Service (JMS) avec le AWS SDK limite la taille des messages Amazon SQS à 256 Ko. Cependant, vous pouvez créer un fournisseur JMS avec n'importe quel client Amazon SQS. Par exemple, vous pouvez utiliser le client JMS avec la bibliothèque client étendue Amazon SQS pour Java afin d'envoyer un message Amazon SQS qui contient une référence à une charge utile de message (jusqu'à 2 Go) dans Amazon S3. Pour plus d’informations, consultez Gestion de messages Amazon SQS volumineux à l'aide de Java et Amazon S3.

L'exemple de code Java suivant crée le fournisseur JMS pour la bibliothèque client étendue :

AmazonS3 s3 = new AmazonS3Client(credentials); Region s3Region = Region.getRegion(Regions.US_WEST_2); s3.setRegion(s3Region); // Set the Amazon S3 bucket name, and set a lifecycle rule on the bucket to // permanently delete objects a certain number of days after each object's creation date. // Next, create the bucket, and enable message objects to be stored in the bucket. BucketLifecycleConfiguration.Rule expirationRule = new BucketLifecycleConfiguration.Rule(); expirationRule.withExpirationInDays(14).withStatus("Enabled"); BucketLifecycleConfiguration lifecycleConfig = new BucketLifecycleConfiguration().withRules(expirationRule); s3.createBucket(s3BucketName); s3.setBucketLifecycleConfiguration(s3BucketName, lifecycleConfig); System.out.println("Bucket created and configured."); // Set the SQS extended client configuration with large payload support enabled. ExtendedClientConfiguration extendedClientConfig = new ExtendedClientConfiguration() .withLargePayloadSupportEnabled(s3, s3BucketName); AmazonSQS sqsExtended = new AmazonSQSExtendedClient(new AmazonSQSClient(credentials), extendedClientConfig); Region sqsRegion = Region.getRegion(Regions.US_WEST_2); sqsExtended.setRegion(sqsRegion);

L'exemple de code Java suivant crée la fabrique de connexions :

// Create the connection factory using the environment variable credential provider. // Pass the configured Amazon SQS Extended Client to the JMS connection factory. SQSConnectionFactory connectionFactory = new SQSConnectionFactory( new ProviderConfiguration(), sqsExtended ); // Create the connection. SQSConnection connection = connectionFactory.createConnection();