seamless - Seamless restart / zero-downtime deploy for Go servers

  •        5

Package seamless implements a seamless restart strategy for daemons monitored by a service supervisor expecting non-forking daemons like daemontools, runit, systemd etc.The seamless strategy is to fully rely on the service supervisor to restart the daemon, while providing to the daemon the full control of the restart process. To achieve this, seamless duplicates the daemon at startup in order to establish a supervisor -> launcher -> daemon relationship. The launcher is the first generation of the daemon hijacked by seamless to act as a circuit breaker between the supervisor and the supervised process.

https://github.com/rs/seamless

Tags
Implementation
License
Platform

   




Related Projects

consul-alerts - A simple daemon to send notifications based on Consul health checks

  •    Go

A highly available daemon for sending notifications and reminders based on Consul health checks. Under the covers, consul-alerts leverages Consul's own leadership election and KV store to provide automatic failover and seamless operation in the case of a consul-alerts node failure and ensures that your notifications are still sent.

FreeRDP-WebConnect - A gateway for seamless access to your RDP-Sessions in any HTML5-compliant browser

  •    C++

The server side WebSockets implementation handles current RFC6455 (http://tools.ietf.org/html/rfc6455) only, so browsers that implement the older drafts do not work. With RFC6455 being raised to the "Proposed Standard" level, this should change now really soon. On the server side, a standalone daemon - written in C++ - provides a Web page via HTTPS (or HTTP, if configured) and uses FreeRDP libs to connect as a client to any RDP session.

seamless-talk - GothamJS 2012 talk on HTML5's seamless iframe attribute

  •    Javascript

GothamJS 2012 talk on HTML5's seamless iframe attribute

portals - A proposal for enabling seamless navigations between sites or pages

  •    Shell

Portals is a very early proposal for enabling seamless navigations between sites or pages. In particular, this proposal enables a page to show another page as an inset and perform a seamless transition between an inset state and a navigated state. See the explainer.


uLan protocol for RS-485 9-bit network

  •    C

uLan is message oriented multi-master communication protocol for microcontrollers. It uses 9-bit character format for addressing and link control and RS-485 physical layer. More RS-485 cards, converters for PC RS-232 ports and embedded MCUs are supported

RESTEasy - Rest Framework for Java

  •    Java

RESTEasy is a JBoss project that provides various frameworks to help you build RESTful Web Services and RESTful Java applications. It is a portable implementation of the JAX-RS specification. JAX-RS is a JCP specification that provides a Java API for RESTful Web Services over the HTTP protocol. It is portable to Tomcat and many other app-server. It has rich set of providers for: XML, JSON, YAML, Fastinfoset, Multipart, XOP, Atom, etc.

redis-rs - Redis library for rust

  •    Rust

Redis-rs is a high level redis library for Rust. It provides convenient access to all Redis functionality through a very flexible but low-level API. It uses a customizable type conversion trait so that any operation can return results in just the type you are expecting. This makes for a very pleasant development experience.Documentation on the library can be found at mitsuhiko.github.io/redis-rs.

Jersey - RESTful Web Services in Java.

  •    Java

Jersey is a REST framework that provides JAX-RS Reference Implementation and more. Jersey provides its own APIs that extend the JAX-RS toolkit with additional features and utilities to further simplify RESTful service and client development. Jersey also exposes numerous extension SPIs so that developers may extend Jersey to best suit their needs.

raml-for-jax-rs - This project is all about two way transformation of JAX-RS-annotated Java code to RAML API description and back

  •    Java

This project is all about two way transformation of JAX-RS-annotated Java code to RAML API description and back.

VorbisPlayer

  •    Silverlight

VorbisPlayer is the audio user control for Silverlight games. It plays loop-sets seamless, it solves the short sound problem, and it can play sound effects with low latency.

gtm - Simple, seamless, lightweight time tracking for Git

  •    Go

GTM is automatic, seamless and lightweight. There is no need to remember to start and stop timers. It runs on occasion to capture activity triggered by your editor. The time metrics are stored locally with the git repository as Git notes and can be pushed to the remote repository.Simply install a plugin for your favorite editor and the GTM command line utility to start tracking your time now.

rollup-plugin-babel - Seamless integration between Rollup and Babel

  •    Javascript

Seamless integration between Rollup and Babel.Both approaches have disadvantages – in the first case, on top of the additional configuration complexity, you may end up with Babel's helpers (like classCallCheck) repeated throughout your code (once for each module where the helpers are used). In the second case, transpiling is likely to be slower, because transpiling a large bundle is much more work for Babel than transpiling a set of small files.

vue-vscode-snippets - These snippets were built to supercharge my workflow in the most seamless manner possible

  •    Javascript

These snippets were built to supercharge my workflow in the most seamless manner possible. This repo was built particularly for real world use. It doesn't catalogue the API definitions, and it's not a kitchen sink approach. Rather, it focuses on developer ergonomics from the point of Vue of real world use. Included are the pieces I personally get sick of typing, have to keep looking up, or forget to consider while developing that I make more use of when they're at my fingertips.

IMYWebView - UIWebView seamless switching to WKWebView

  •    Objective-C

UIWebView seamless switching to WKWebView

react-server - :rocket: Blazing fast page load and seamless navigation.

  •    Javascript

React framework with server render for blazing fast page load and seamless transitions between pages in the browser. That hooks you up with react-server-cli, which will take care of the server part and get you up and running right away.

Apache Commons Daemon - Helps to make Daemon Application in Java

  •    Java

Most operating systems already have a way in which server applications are started and stopped. In Unix it is called daemon and in Windows it is called as Service. This project helps Java application to run as Service / Daemon.

openbazaar-go - OpenBazaar 2.0 Server Daemon in Go

  •    Go

This repository contains the OpenBazaar server daemon which handles the heavy lifting for the OpenBazaar desktop application. The server combines several technologies: A modified IPFS node, which itself combines ideas from Git, BitTorrent, and Kademlia. A lightweight SPV Bitcoin wallet for interacting with the Bitcoin network. And a JSON API which can be used by a user interface to control the node and browse the network. If you are looking for the OpenBazaar user interface code see here.A typical install of OpenBazaar contains a bundle of the server daemon and user interface. If this is what you are looking for you can find an installer at https://openbazaar.org/download.html. If you are looking to run the server daemon by itself or to contribute to developement see below for instructions.

Symbion Daemon Tool

  •    C

Symbion Daemon Tool is a daemon master tool. It runs and monitors other daemons, restart it when necessary. If a daemon supports SDT then it can communicate with it and it can be controlled through it.

Open Office Server Daemon

  •    Java

Open Office Server Daemon based on older daemon written in python (oood). Open Office is unstable as a server (memory leaks, not multithreaded, ...), this daemon makes it working in long-term without having to change anything in your code.