What is Faktory?

Basic review of Go background job server, developed by Contributed Systems
26 October 2017   1834

What is Faktory?

At a high level, Faktory is a work server. It is the repository for background jobs within your application. Jobs have a type and a set of arguments and are placed into queues for workers to fetch and execute.

You can use this server to distribute jobs to one or hundreds of machines. Jobs can be executed with any language by clients using the Faktory API to fetch a job from a queue.

Faktory web UI
Faktory web UI

Features

According to the developers, basic features of Faktory are:

  • Jobs are represented as JSON hashes.
  • Jobs are pushed to and fetched from queues.
  • Jobs are reserved with a timeout, 30 min by default.
  • JobsĀ FAIL'd or notĀ ACK'd within the reservation timeout are requeued.
  • FAIL'd jobs trigger a retry workflow with exponential backoff.
  • Contains a comprehensive Web UI for management and monitoring.

Links

If you are interested, these links will be useful:

  • Wiki
  • GitHub
  • Support
  • Developers' website

Go 1.12 to be Available

Great news for all Go enthuisiast and developers; let's check what's new
28 February 2019   440

Go 1.12 programming language released, which is being developed by Google with the participation of the community as a hybrid solution combining high performance of compiled languages with such advantages of scripting languages as ease of writing code, speed of development and protection from errors. The project code is distributed under the BSD license.

These are main updates:

  • Native TLS 1.3 support. It is not enabled by default, it is necessary to set the option tls13=1 in the environment variable GODEBUG (package crypto / tls).
  • Improved module system support. Developers are preparing to include it by default in version 1.13.
  • Windows support on ARM architecture systems. For example, Go can now be used with Windows 10 IoT Core on Raspberry Pi 3 boards.
  • Improved compatibility with upcoming versions of macOS and iOS. The layer for making specific system calls is the libSystem library.

Get more information at official documents.

Starting with Go 1.13, support for macOS 10.10 "Yosemite" will be discontinued, as the minimum supported version of macOS will be 10.11 "El Capitan". The next release also plans to end support for the FreeBSD 10.x branch.