I was hoping for some expert opinions on some high level questions about
a new architecture, and if Synapse could fit.
Much thanks in advance for any type of feedback.
High level overview
- Complete re architecture of existing system from the ground up.
- Need to be able to "tie" web services together in steps to achieve the
overall system requirements.
- System processes video content for delivery to destinations.
- Nodal system (4 to 5 global nodes initially)
- Need failover on both a nodal level and individual service level.
- Load balancing on a web service level.
-Many web services (sync and async) (.NET and Java) (WSDL and REST)
95% internal web services written by us, under our control.
- 70% long running processes.
- Steps in the process are driven by work being completed by services,
not a user completing a step in a UI.
Things we have considered:
BPEL process engines
Positives - provides the "glue" to tie web services together.
- products / os projects provide a console for
managing processes and instances
out of the box
Concerns - Feels like "square peg in a round hole" seems very
specific to user centric processes.
- If we need something outside of what BPEL
supports, seems difficult.
BPMN process engine
Positives - provides the "glue" to tie web services together.
- products / os projects provide a console for
managing processes and instances
out of the box
- BPMN seems more fully featured with some
mediation / orchestration abilities.
Concerns - Feels like "oval peg in round hole" still seems user
centric, but less than BPEL.
- If we need something outside of what BPMN
supports, seems difficult.
Synapse
Positives - Synapse seems very lightweight.
- Seems to meet our high level requirements
without the overhead of a process engine.
- Appears failover and load balancing is built
in.
Concerns / Questions
- We have long running processes. (ie: a web
service is called from synapse and the work that
web service does may not be done for hours)
Does synapse have the ability to "wait" on that
response? Is there a callback mechanism?
- Can synapse "replace" the functionality of a
BPEL or BPMN engine, just in a different way?
- No console application built in for
monitoring?
Danny
Danny Gallagher | Software Engineer
T. 678.556.5674 | F. 770.619.0802
DG | 245 Hembree Park Drive, Suite 100, Roswell, GA 30076
[email protected] | www.dgit.com
[Description: DG]