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

spike: service redundancy #178

Open
rayjlinden opened this issue Jul 12, 2019 · 1 comment
Open

spike: service redundancy #178

rayjlinden opened this issue Jul 12, 2019 · 1 comment
Labels
help wanted Extra attention is needed question Further information is requested

Comments

@rayjlinden
Copy link
Contributor

This is more of a question I suppose than a bug report. But it is about the current architecture of paygate that appears like it could be a problem for us.

Currently, paygate "holds" generated ACH files in a directory in the container. It would then write that out to FTP site closer to the given cutoff time.

For this design - how would things work if I want to run multiple paygate services for redundancy and (eventually!) volume/scale reasons? One service would not know about the staged files of the other? And related to that - what if a service unexpectedly dies?

Obviously, we could use a mount a volume to store the "interim" files that can be remounted to deal with a service getting restarted. However, sharing that volume amongst multiple services becomes a problem.

Maybe you already have a plan to address this issue. Can you share that plan if so? I want to make sure it is going to work with our current infrastructure capabilities. If not, can we talk about some options? :)

@adamdecaf adamdecaf changed the title service redundancy spike: service redundancy Jul 12, 2019
@adamdecaf adamdecaf added help wanted Extra attention is needed question Further information is requested labels Jul 12, 2019
@adamdecaf
Copy link
Member

I've thought about how we could accomplish this. An initial thought would be using a store like etcd to hold a lock over a filename and store the file contents there.

As a separate issue I know improving paygate's flexibility to upload would help. I'm not sure if an admin endpoint to upload or just doing so more frequently would help.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
help wanted Extra attention is needed question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants