1-of 中文文档教程

发布于 7年前 浏览 20 更新于 3年前

1-of

轻松构建并运行分布式任务。

基于 Redis 和 Kue。

Usage

创建一个计算单元

const Computing = require('../').computing;

module.exports = new Computing('double', (input, progress, done) => {
  progress(0, 0, input * 2);
  done();
});

注意:您可以使用进度返回多个结果。

创建runner

const Runner = require('../').runner;
const streamify = require('stream-array');
const {Transform} = require('stream');



streamify([2, 4, 6]) // stream an array of integer
  .pipe(new Transform({
    objectMode: true,
    transform: function(chunk, encoding, done) {
      console.log('Pushing a number', chunk);
      this.push(chunk);
      done();
    }
  }))
  .pipe(new Runner().asStream('double'))
  .pipe(new Transform({
    objectMode: true,
    transform: function(chunk, encoding, done) {
      console.log('Result is', chunk)
      done();
    }
  }))
  .on('end', () => {
    console.log('End!!!')
  })

启动redis

docker run -p 6379:6379 redis

运行程序

  1. node example/computing.js
  2. node example/run.js

1-of

Build easily and run distributed task.

Based on Redis and Kue.

Usage

Create a computing unit

const Computing = require('../').computing;

module.exports = new Computing('double', (input, progress, done) => {
  progress(0, 0, input * 2);
  done();
});

NB: you can return more than 1 result by using progress.

Create a runner

const Runner = require('../').runner;
const streamify = require('stream-array');
const {Transform} = require('stream');



streamify([2, 4, 6]) // stream an array of integer
  .pipe(new Transform({
    objectMode: true,
    transform: function(chunk, encoding, done) {
      console.log('Pushing a number', chunk);
      this.push(chunk);
      done();
    }
  }))
  .pipe(new Runner().asStream('double'))
  .pipe(new Transform({
    objectMode: true,
    transform: function(chunk, encoding, done) {
      console.log('Result is', chunk)
      done();
    }
  }))
  .on('end', () => {
    console.log('End!!!')
  })

Start redis

docker run -p 6379:6379 redis

Run program

  1. node example/computing.js
  2. node example/run.js
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文