Skip to content

mannion007/long-running-process

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Long Running Process

Build Status

This project is an example of one means of implementing a Long Running Process (sometimes referred to as a "saga") in PHP using a basic event driven architecture. The concept is taken from Vaughn Vernon's book "Implementing Domain Driven Design" and has been built purely as a learning exercise and to use for future reference should I need to apply this pattern elsewhere.

The project uses the typical hexagonal architecture and while it currently dispatches and handles events synchronously (using Symfony's Event Dispatcher component), it could easily be changed to publish events to a queue to enable an asynchronous and enable horizontal scaling.

If you can make any use of this code for learning purposes, please feel free to do so.

Setup

make init

Running tests

make test

About

An example of an approach to implementing a long running parallelised process in PHP using a basic event driven architecture

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published