Socket
Book a DemoInstallSign in
Socket

worker-pool-aws-sdk

Package Overview
Dependencies
Maintainers
2
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

worker-pool-aws-sdk

Simple pool of workers to make API calls using the AWS SDK, while leveraging Node.js Worker threads.

0.1.0
latest
Source
npmnpm
Version published
Maintainers
2
Created
Source

Worker Pool for AWS SDK

License MIT contributions welcome Project Status: WIP – Initial development

Simple pool of workers to make API calls using the AWS SDK, while leveraging Node.js Worker threads.

GitHub Workflow Status Codecov GitHub release Node.js version

This library uses Node.js Worker threads (it depends more specifically on Piscina.js).

Usage

Example

const STS = require('aws-sdk/clients/sts')
const WorkerPoolAwsSdk = require('worker-pool-aws-sdk');

const workerPool = new WorkerPoolAwsSdk();

(async function () {
  const sts = new STS({ region: 'us-east-1' });
  const result = await workerPool.runAwsTask({
    name: 'sts',
    options: sts.config,
    operation: 'getCallerIdentity',
  });
  console.log(result);
  /*
    Prints result in this shape:
    {
      Account: "123456789012", 
      Arn: "arn:aws:iam::123456789012:user/Alice", 
      UserId: "AKIAI44QH8DHBEXAMPLE"
    }
  */
})();

Benchmark

Total duration of SAM local lambda with and without worker threads running on a Quad-core machine.

Without worker threads (40 calls)

  • 20073.56 ms
  • 20373.04 ms
  • 23854.06 ms

With worker threads (40 calls)

  • 23107.90 ms
  • 24376.02 ms
  • 24748.50 ms

Without worker threads (400 calls)

  • 160664.08 ms
  • 170526.89 ms

With worker threads (400 calls)

  • 160884.88 ms
  • 161868.81 ms

Development

Check out the master branch and install dependencies to get started:

npm ci --optional

Now that you have the dependencies installed, you can run this command in the root folder to compile the whole project.

npm run build

Linting is done via TypeScript ESLint and running unit tests via Jest. The continuous integration runs these checks, but you can run them locally with:

npm run lint
npm test

License

This library is licensed under the MIT License.

FAQs

Package last updated on 28 Nov 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.