<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 1, 2017 at 10:31 AM, Sujit K M <span dir="ltr"><<a href="mailto:kmsujit@gmail.com" target="_blank">kmsujit@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I am in the process of evaluating solutions that perform better with<br>
failover when<br>
used with Distributed Computing, Similar to Hadoop in Distributed Computing and<br>
K8/Docker in Failover. Is there any specific way to check this, Would<br>
for example<br>
using an C++ Server[1,2] cause this betterment.<br>
<br>
Also GOlang which is an very new language I would love to check for<br>
something that<br>
helps in similar Garbage Collection[3], Polymorphism[a.k.a hack with<br>
C++] to help in<br>
performance improvements.<br>
<br>
<br>
1.<a href="https://github.com/eidheim/Simple-Web-Server" rel="noreferrer" target="_blank">https://github.com/eidheim/<wbr>Simple-Web-Server</a><br>
2.<a href="https://github.com/ipkn/crow" rel="noreferrer" target="_blank">https://github.com/ipkn/crow</a><br>
3.<a href="https://blog.golang.org/go15gc" rel="noreferrer" target="_blank">https://blog.golang.org/<wbr>go15gc</a><br>
<br>
______________________________<wbr>_________________<br>
talk mailing list<br>
<a href="mailto:talk@lists.nycbug.org">talk@lists.nycbug.org</a><br>
<a href="http://lists.nycbug.org/mailman/listinfo/talk" rel="noreferrer" target="_blank">http://lists.nycbug.org/<wbr>mailman/listinfo/talk</a><br>
</blockquote></div><br></div><div class="gmail_extra">Hadoop/Spark and similar tools typically divide long running processes minutes/hours into set of tasks. There failure model is typically that a failure of task only sets the process back small amounts. For example if I am filtering a 12GB file and I divide it into 12x 1GB sized tasks, the failure of task 10 can be retried without forcing the other tasks to retry.</div><div class="gmail_extra"><br></div><div class="gmail_extra">For the three projects you are mentioning two of them look like web based micro-service architectures. These are typically for short processes that have small state and no failover.</div><div class="gmail_extra"><br></div><div class="gmail_extra">I think in those cases you are looking for something closer to erlang's actor model.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Java- Akka</div><div class="gmail_extra">C++- c-actor framework <a href="https://actor-framework.org/">https://actor-framework.org/</a></div><div class="gmail_extra"><br></div><div class="gmail_extra">In c-actor framework you can create services on different nodes and those services are transparently connected. Data passed between the services and if components die they can be re-spawned and then the framework will wire the service back together. </div><div class="gmail_extra"><br></div><div class="gmail_extra">Note: c-actor framework is not a web-server, or http based micro-service framework.</div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div></div>