[erlang-questions] Erlang and Akka

Darach Ennis <>
Wed Aug 27 17:13:30 CEST 2014


An aside on proper isolation:

This is actually available in the Waratek implementation of the JVM and
should be standardized
in the JDK9 timeframe. Essentially this adds an interpretation of process
isolation not dissimilar
to that found in Erlang but on the JVM. IBM's J9 has a preview of
multi-tenant java as well:

http://www.ibm.com/developerworks/java/library/j-multitenant-java/index.html?ca=drs-

For folk on the JVM, say you have nice 48 core machine and you have 48
clients running
tomcat. What you do not want is 48 JVM instances running tomcat on that
machine. Multi-tenant
Java adds virtualization and process isolation such that you can run one
JVM instance and essentially
'share' a single tomcat instance to 48 tenants, each pinned to a core, or
perhaps fixed to some cores and
time sharing other cores during burst periods etc..

This is great for things like corralling legacy JVM-based environments onto
a single box to save
operational cost or for consolidating resource usage to maximise
utilisation and so on. The virtualization
is basically transparent to the tenants and the hosts can meter based on
kWh or bandwidth sent/received
etc..

It is possible to monitor (supervise) and to control tenants in much the
same way as in OTP based
applications with multi-tenant JVM implementations. In Waratek's case this
can be done via a JMX
based API.

But, multi-tenant JVMs with proper process isolation are new and easy to
use APIs for monitoring,
supervision and control are yet to be defined and standardised. I would add
to this that the Erlang
model is far simpler, just works and feels natural. It feels like voodoo on
the JVM, frankly...

But 'proper isolation' as a feature is coming to the JVM and the Erlang
model is providing
a source of inspiration here as it has already solved this particular
problem within its own ecosystem.
It has been successful enough that it is influencing innovation within the
JVM ecosystem, specifically
w.r.t. multi-tenancy which is becoming increasingly important in JVM
deployments as Java loses ground
to dynamic languages in cloud-based *aaS environments.

Cheers,

Darach.


On Tue, Aug 26, 2014 at 10:20 PM, Jesper Louis Andersen <
> wrote:

>
> On Tue, Aug 26, 2014 at 9:34 PM, Youngkin, Rich <
> > wrote:
>
>> Akka has been proposed as an alternative to Erlang.
>
>
> What are the arguments for Akka, as opposed to the arguments for Erlang?
>
> Library availability is definitely a valid concern. Yet, any library in
> any language will have errors and mistakes. A good point about Erlang is
> that the occasionally bad library tend to hurt your program less for the
> simple fact that proper isolation saves the day.
>
>
> --
> J.
>
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20140827/49813ae3/attachment.htm>


More information about the erlang-questions mailing list