[erlang-questions] Multiple BEAM nodes on one Linux node — a thought experiment

Lloyd R. Prentice lloyd@REDACTED
Wed May 15 01:59:12 CEST 2019


Hi Chinedu,

So operationally, would one install a release for each user in separate directories?

My musings, uninformed by experience, have progressed more or less along this line:

— Data loss is totally unacceptable to the users I have in mind.

— There could be many users, each with his/her own corpus of data; no intersection.

— Traffic per user would be quite low. 

— Data corpus per user would be fairly small. 

— Users come and go. When they go, they want to take their data. Some may want to return and pickup where they left off.

— The traditional solution would be a capacious, maybe even distributed, database behind a single, well maybe load balanced, front end. 

— But this means that there could potentially be an increasing volume of “dead,” e.g. unused data, or one would need a way to archive data when a user leaves. In this second case, archiving and restoring data over many users could tie up a great deal of db’s bandwidth.

— Fanciful solution I: Give each user his/her own independent website. 

— Linux containers might make this possible.

— Transactions are not an issue.

— A small Mnesia db or even dets db per user would suffice.

— Linux containers could be deployed over multiple hardware or VPS nodes, lowering hardware failure risk and making it relatively easy to scale from just a few users to many many.

— LXD provides tools that would make it relatively easy to induct new users and replicate user sites.

— But would it be economically feasible?

— Fanciful solution II:  Multiple BEAM nodes per Linux node.

— Hmmm... might have to functionally replicate tools that LXD already provides.

— But it might be more resource efficient.

— Can it even work?

And so, my head spins for lack of experience.

And so, I’d much appreciate insight and guidance from experienced hands.

All the best,

Lloyd

Sent from my iPad

> On May 14, 2019, at 5:36 PM, Chinedu Okonkwo <codmajik@REDACTED> wrote:
> 
> That is pretty much what erlang release is.
> 
> I think its one of the reason docker/containers didn't catch on in the erlang community. The major problem you may face running it especially in distributed erlang mode may be name collusion in empd
> 
>> On Tue, May 14, 2019 at 9:13 PM Lloyd R. Prentice <lloyd@REDACTED> wrote:
>> Hello,
>> 
>> My Mickey-the-Dunce ignorance and curiosity has led me to explore Linux containers. Very cool. Then, a recent conversation with Oliver Korpilla tweaked my wonder nerve:
>> 
>> Is it possible/practical to run multiple BEAM nodes on a single Linux node?
>> 
>> Assume each BEAM node supports an identical web application with a Mnesia backend serving a set of CRUD services— each for a different client.
>> 
>> Has anyone ever done anything along this line?
>> 
>> Best wishes,
>> 
>> LRP
>> 
>> Sent from my iPad
>> _______________________________________________
>> erlang-questions mailing list
>> erlang-questions@REDACTED
>> http://erlang.org/mailman/listinfo/erlang-questions
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20190514/e951cb51/attachment.htm>


More information about the erlang-questions mailing list