Skip to content
This repository has been archived by the owner on Aug 7, 2024. It is now read-only.

g-re-g/outlock

Repository files navigation

tests

What?

Synchronization locks as a service.

Check it out here: https://outlock.greg.work

Why?

  • Maybe you want someone else to manage your syncronization primitives?
  • Maybe you want make mutexes that have to make a network call to work?
  • Maybe you have some distributed services that need to share a resource atomically?

Development

This is designed to run on Dreamhost's shared hosting and it is assumed to use:

  • ruby 2.5.1
  • Bundler version 1.16.1

Assuming you have those installed:

  • bundle install to install all the deps.
  • ruby create_database.rb to create the database.
  • bundle exec rerun 'ruby outlock.rb' for an auto-reloading dev server.

Testing

  • ruby tests/basic_functionality.rb

Todo

  • Locks that expire after a timeout.
  • Notify consumers when a lock has been unlocked or timedout.
  • UDP / Websockets for faster communication with less overhead.

About

Synchronization locks as a service

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published