Our Projects

A showcase of our work.

EasyWorker - a Golang package
Started: 2023-05-31

Intro

This is a open source package write by Golang.

This is a Golang package help dev can work easily with Gorountine just simple write functions without to care about create & manage gorountines.

easyworker is inspired by Erlang OTP.

We open source this library for dev can use or simply see how it works.

Concept

Build a layer over goroutine to manage goroutine & help dev to reduce boilerplate code.

Each goroutine has a supervisor, user start a worker (goroutine) from supervisor then supervisor handle everything else.

Features

A package with a lot of features that are useful for work with concurrent in Golang.

Features:

  • Supervisor model. Can easily and automated error handling for worker (goroutine).
  • Task. Error handling and simple way to run and get data after task is done.
  • Stream. Support for streaming style.
  • Monitor Goroutine. User can easily to manage a goroutine without boilerplate code.

Supervisor

This feature is inspired by Erlang OTP framework.

Help developer can easy to add & manage goroutines. Supervisor support three restart strategy for goroutine.

That is always_restart, error_restart & no_restart.

EasyTask

Dev can create and add task easily. Don't need to work with channel.

Support to run parallel tasks without effort.

EasyStream

Support to create a stream to process data in parallel with retry for worker in stream.

Monitor Go

Special case of Supervisor.

Dev can easy manage a goroutine.

Support re-run, check result of goroutine is error or successful.

Guide

Follow README on repo.

Repo

We published on Github repo