Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Lightweight request runner

License

NotificationsYou must be signed in to change notification settings

reddec/nano-run

Repository files navigation

nano-run

Lightweight async request runner. GitOps friendly.

A simplified version oftrusted-cgi designedfor async processing extreme amount of requests.

Main goals:

  • Should have semi-constant resource consumption regardless of:
    • number of requests,
    • size of requests,
    • kind of requests;
  • Should be ready to run without configuration;
  • Should be ready for deploying in clouds;
  • Should support extending for another providers;
  • Can be used as library and as a complete solution;
  • Performance (throughput/latency) has less priority than resource usage.

Please note that the project is being developed in free time, as a non-profitable hobby project.All codes, bugs, opinions, and other related subjects should not be considered as the official position, official project,or company-backed project to any of the companies for/with which I worked before or/and at present.

TODO:

  • On attempt failed job
  • On failed job
  • On success job
  • Per endpoint swagger
  • Pickup file as an artifact

sample-nano-run

Documentation

Stability

(After 1.0.0)

We are trying to follow semver:

  • Patch releases provides fixes or light improvements without migration
  • Minor releases provides new functionality and provides automatic migration if needed
  • Major releases provides serious platform changes and may require manual or automatic migration

Within one major release, it guarantees forward compatibility: new versions can use data from previous versions, but not vice-versa.

Reproducible binaries

The project tries to follow best practices providing reproducible binaries: it means, thatyou can verify that complied binaries will be exactly the same (byte to byte) as if you will compile it by yourselfby following our public instructions.

License

The project (source code and provided official binaries) are licensedunder Apache-2.0 (see License file, or inplain English) and suitablefor personal, commercial, government, and others usage without restrictions as long as it used with abidinglicense agreement.

Do not forget to bring your changes back to the project. I willbe happy to assist you with PR.

The project uses external libraries that may be distributedunder other licenses.

Installation

Debian/Ubuntu

(recommended)

Tested on 20.04 and 18.04, but should good for any x64 version.

Add the repository (only once)

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61echo"deb https://dl.bintray.com/reddec/debian all main"| sudo tee /etc/apt/sources.list.d/reddec.list

Install or update nano-run

sudo apt updatesudo apt install nano-run

Automatically creates servicenano-run.service.

Binary

Download and unpack desired version inreleases.

Docker

docker pull reddec/nano-run

From source

Requires go 1.14+

go get -v github.com/reddec/nano-run/cmd/...

Ansible for debian servers

-name:Add an apt key by id from a keyserverbecome:yesapt_key:keyserver:keyserver.ubuntu.comid:379CE192D401AB61-name:Add repositorybecome:yesapt_repository:repo:deb https://dl.bintray.com/reddec/debian all mainstate:presentfilename:reddec-name:Install nano-runbecome:yesapt:name:nano-runupdate_cache:yesstate:latest

Quick start

(optional) initialize configuration

nano-run server init

it will create required directories and files in a current working directory.

define a unit file

Create minimal unit file (date.yaml) that will return current date (by unix commanddate) and put itin directoryrun/conf.d/

run/conf.d/date.yaml

command:date

start nano-run

nano-run server run

now you can open ui overhttp://localhost:8989 or do API call:curl -X POST http://localhost:8989/api/date/


[8]ページ先頭

©2009-2025 Movatter.jp