Claim Check enterprise integration pattern, implemented via AWS PHP SDK.
This library provides extended SNS and SQS clients to "Check Luggage", uses S3 as the "Data Store", and uses the extended SQS client as the "Data Enricher".
This package aims to be a compatible port of Amazon's Extended Client Library. Messages stored via this PHP package should be able to be received by the Java package.
AWS Extended Client Library Compatibility
- Claim Check structure is identical, i.e. keys are
s3Key, meaning you can publish to SQS+S3 via this PHP lib and read via the AWS Extended Client Library java lib.
- Messages published from SNS to SQS contain a nested Claim Check message structure, so the Java SDK is not be able to natively consume messages published to SNS (citation needed).
- Usage of the pattern is not configurable by message size, nor can the pattern be disabled in this lib. Use the wrapped clients if you do not want to use Claim Check.
- The AWS Extended Client Library will always delete the message from S3 when the message is deleted from SQS. This is not acceptable when messages are published to SNS and fanned-out to multiple subscribers (e.g. multiple SQS queues). This package allows you to disable deletion from S3 in the SQS extended client configuration.
composer require abacaphiliac/aws-php-claim-check-sdk
composer install && vendor/bin/phing
- Add SQS check-in.
- Add SQS check-out.
- Add SNS check-in.
- Use WireMock to stub API responses and add feature tests to CI.
- Add async SQS check-in.
- Add async SQS check-out.
- Add async SNS check-in.