All Projects → bbc → Sqs Producer

bbc / Sqs Producer

Licence: other
Simple scaffolding for applications that produce SQS messages

Programming Languages

typescript
32286 projects

Labels

Projects that are alternatives of or similar to Sqs Producer

Lambdaguard
AWS Serverless Security
Stars: ✭ 300 (+140%)
Mutual labels:  aws, sqs
Sqs Worker Serverless
Example for SQS Worker in AWS Lambda using Serverless
Stars: ✭ 164 (+31.2%)
Mutual labels:  aws, sqs
Aws Sdk Perl
A community AWS SDK for Perl Programmers
Stars: ✭ 153 (+22.4%)
Mutual labels:  aws, sqs
Laravel Plain Sqs
Custom SQS connector for Laravel (or Lumen) that supports third-party, plain JSON messages
Stars: ✭ 91 (-27.2%)
Mutual labels:  aws, sqs
Sqs Consumer
Build Amazon Simple Queue Service (SQS) based applications without the boilerplate
Stars: ✭ 1,019 (+715.2%)
Mutual labels:  aws, sqs
Dazn Lambda Powertools
Powertools (logger, HTTP client, AWS clients, middlewares, patterns) for Lambda functions.
Stars: ✭ 501 (+300.8%)
Mutual labels:  aws, sqs
Justsaying
A light-weight message bus on top of AWS services (SNS and SQS).
Stars: ✭ 157 (+25.6%)
Mutual labels:  aws, sqs
Terraform Sqs Lambda Trigger Example
Example on how to create a AWS Lambda triggered by SQS in Terraform
Stars: ✭ 31 (-75.2%)
Mutual labels:  aws, sqs
Serverless
This is intended to be a repo containing all of the official AWS Serverless architecture patterns built with CDK for developers to use. All patterns come in Typescript and Python with the exported CloudFormation also included.
Stars: ✭ 1,048 (+738.4%)
Mutual labels:  aws, sqs
Simpleue
PHP queue worker and consumer - Ready for AWS SQS, Redis, Beanstalkd and others.
Stars: ✭ 124 (-0.8%)
Mutual labels:  aws, sqs
Cash
HTTP response caching for Koa. Supports Redis, in-memory store, and more!
Stars: ✭ 122 (-2.4%)
Mutual labels:  aws
Cloudformation
Some CF templates
Stars: ✭ 123 (-1.6%)
Mutual labels:  aws
Aws Amplify Workshop React Native
Building Cloud-enabled Mobile Applications with React Native & AWS Amplify
Stars: ✭ 124 (-0.8%)
Mutual labels:  aws
Aws Serverless Event Fork Pipelines
AWS Event Fork Pipelines helps you build event-driven serverless applications by providing pipelines for common event-handling requirements, such as event backup, analytics, and replay. The pipelines are based on AWS SAM, and can be deployed directly from AWS SAR into your AWS account.
Stars: ✭ 126 (+0.8%)
Mutual labels:  aws
Aws Lambda R Runtime
Serverless execution of R code on AWS Lambda
Stars: ✭ 121 (-3.2%)
Mutual labels:  aws
Covid 19 Api
This is the code running in AWS Lambda powering covid-api.mmediagroup.fr/v1. The API provides realtime and historical data on Coronavirus COVID-19 confirmed cases, deaths, and recovered cases. This API has now been called over 3 million times, thank you!
Stars: ✭ 122 (-2.4%)
Mutual labels:  aws
Amazon Sagemaker Operator For K8s
Amazon SageMaker operator for Kubernetes
Stars: ✭ 122 (-2.4%)
Mutual labels:  aws
Cluster.dev
Kubernetes-based Dev Environments with GitOps
Stars: ✭ 122 (-2.4%)
Mutual labels:  aws
Aws Faq
Stars: ✭ 122 (-2.4%)
Mutual labels:  aws
Aws Data Wrangler
Pandas on AWS - Easy integration with Athena, Glue, Redshift, Timestream, QuickSight, Chime, CloudWatchLogs, DynamoDB, EMR, SecretManager, PostgreSQL, MySQL, SQLServer and S3 (Parquet, CSV, JSON and EXCEL).
Stars: ✭ 2,385 (+1808%)
Mutual labels:  aws

sqs-producer

NPM downloads Build Status Code Climate Test Coverage

Enqueues messages onto a given SQS queue

Installation

npm install sqs-producer

Usage

const { Producer } = require('sqs-producer');

// create simple producer
const producer = Producer.create({
  queueUrl: 'https://sqs.eu-west-1.amazonaws.com/account-id/queue-name',
  region: 'eu-west-1'
});

// create custom producer (supporting all opts as per the API docs: http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#constructor-property)
const producer = Producer.create({
  queueUrl: 'https://sqs.eu-west-1.amazonaws.com/account-id/queue-name',
  region: 'eu-west-1',
  accessKeyId: 'yourAccessKey',
  secretAccessKey: 'yourSecret'
});

// send messages to the queue
await producer.send(['msg1', 'msg2']);

// get the current size of the queue
const size = await producer.queueSize();
console.log(`There are ${size} messages on the queue.`);

// send a message to the queue with a specific ID (by default the body is used as the ID)
await producer.send([{
  id: 'id1',
  body: 'Hello world'
}]);

// send a message to the queue with
// - delaySeconds (must be an number contained within 0 and 900)
// - messageAttributes
await producer.send([
  {
    id: 'id1',
    body: 'Hello world with two string attributes: attr1 and attr2',
    messageAttributes: {
      attr1: { DataType: 'String', StringValue: 'stringValue' },
      attr2: { DataType: 'Binary', BinaryValue: new Buffer('binaryValue') }
    }
  },
  {
    id: 'id2',
    body: 'Hello world delayed by 5 seconds',
    delaySeconds: 5
  }
]);

// send a message to a FIFO queue
//
// note that AWS FIFO queues require two additional params:
// - groupId (string)
// - deduplicationId (string)
//
// deduplicationId can be excluded if content-based deduplication is enabled
//
// http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html
await producer.send({
  id: "testId",
  body: 'Hello world from our FIFO queue!',
  groupId: 'group1234',
  deduplicationId: 'abcdef123456' // typically a hash of the message body
});

Development

Test

npm test

Coverage

For coverage report, run the command:

npm run coverage

Lint

To check for problems using ESLint

npm run lint

Contributing

See contributing guildlines

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].