3 ms·
It's unfortunate that it's the first Java example provided for anything to do with SWF. I got dumped into that from the "what is SWF" page. There's no simple Ja
by AReallyGoodName 11y ago
It's unfortunate that it's the first Java example provided for anything to do with SWF. I got dumped into that from the "what is SWF" page. There's no simple Java SWF example like there is for C#. The docs dump you straight into the Flow Framework.
I'd argue based on Occams Razor that a more simplistic start is what most people want. Unfortunately to get that you have to look at the documentation of another language.
- deanCommie 11y agoThe counter argument is Flow IS what you want. Why poll for decision tasks and try to schedule the work execution between different servers when SWF Flow can do it for you? All the things you found irritating are a one-time setup, and once you are chugging along you can write incredibly quickly powerful distributed systems without worrying about scaling or scheduling of any kind. But I agree the documentation could do a better job of SELLING you on that point up-front. Truth is, I don't know of any other framework or service that allows you to simply write java code like this: A = getA(); B = getB(); C = getC(A, B); D = getD(C); E = getE(B); Assuming all these getCalls are complex, time-consuming, and stateful, Flow automatically sets it up so that at the start getA() and getB() start executing in parallel (and on different servers!), getE() i immediately started once B is realized, getC() is immediately executed once both A and B are both realized, and so on. For complex workflow with undetermined execution time where the whole thing may take days to execute, the fact that you can just tweak a simple Java file to update your business logic, and add some servers to your fleet whenever you want to improve throughput is MAGICAL. Not all problems in software are simple to abstract away. I think Flow does the best it can do
- deleted 11y ago[deleted]