[erlang-questions] Ideas on Distributed Programming on single machine
Mark Nijhof
mark.nijhof@REDACTED
Sat Jan 17 21:43:55 CET 2015
This is my Dockerfile that can build Erlang:
https://github.com/MarkNijhof/erlang_docker let me know if you have
questions
On Sat, Jan 17, 2015 at 9:06 PM, Harit Himanshu <
harit.subscriptions@REDACTED> wrote:
> Thanks Mark, this sounds like a very good approach to learn about
> distributed programming. Since I am new in this arena, do you mind sharing
> resources on how to achieve something you do? That ways I can get some
> direction on what to Google and take it forward
>
> Thanks a lot!
> + Harit Himanshu
>
> On Sat, Jan 17, 2015 at 11:53 AM, Mark Nijhof <
> mark.nijhof@REDACTED> wrote:
>
>> I have had 14 different machines running on my 2 year old MacBook Air
>> (granted they where not doing a whole lot) by just using docker. Each
>> docker instance has its own IP and name ect. Worked really well. Make sure
>> that in each docker you run tmux so yo can check both the output and do
>> things with the machine.
>>
>> What I do is put the Dockerfile in a sub folder of the project (because
>> docker copies all things in the folder the Dockerfile is hosted in into the
>> container and that is slow) and then map ../ to a mountpoint inside the
>> docker container. If your host is the same as the docker container then you
>> can build locally and just restart the process in the containers.
>>
>> -Mark
>>
>>
>> On Sat, Jan 17, 2015 at 8:46 PM, Christopher Meiklejohn <
>> cmeiklejohn@REDACTED> wrote:
>>
>>>
>>> On Jan 17, 2015, at 8:23 PM, Harit Himanshu <
>>> harit.subscriptions@REDACTED> wrote:
>>>
>>>
>>> This is really dumb question and I am pretty sure that there is limit to
>>> how much distributed programming could be learnt using single machine(I am
>>> using Mac in this case).
>>>
>>>>
>>>> I am reading through Programming Erlang, Chapter 14, Distributed
>>>> Programming where Joe talk about how to run Name Server in distributed mode
>>>> as
>>>>
>>>>
>>>> 1. I write and test my program in a regular nondistributed Erlang
>>>> session. This is what we’ve been doing up to now, so it presents no new
>>>> challenges.
>>>> 2. I test my program on two different Erlang nodes running on the
>>>> same computer.
>>>> 3. I test my program on two different Erlang nodes running on two
>>>> physically separated computers either in the same local area network or
>>>> anywhere on the Internet.
>>>>
>>>> You can get pretty far using all of the networking tools provided with
>>> your operating system to simulate various network conditions. I do all of
>>> my daily distributed programming and research using a stock MacBook.
>>>
>>> Consider Kyle Kingsbury’s work on Jepsen where he’s able to find bug in
>>> several major distributed databases. There are also tools such as ‘tc’
>>> which can be used to add arbitrary latency between processes.
>>>
>>> For what it’s worth, Basho does a significant amount of fault testing on
>>> a single machine by using fault-injection tools, or by facilities like
>>> ‘intercepts’ provided by Riak Test.
>>>
>>> My advice is this: do everything locally on your machine until you have
>>> a reason to move to separate infrastructure; it will be easier to develop
>>> and debug.
>>>
>>> - Chris
>>>
>>> Christopher Meiklejohn
>>> Senior Software Engineer
>>> Basho Technologies, Inc.
>>> cmeiklejohn@REDACTED
>>>
>>>
>>>
>>> _______________________________________________
>>> erlang-questions mailing list
>>> erlang-questions@REDACTED
>>> http://erlang.org/mailman/listinfo/erlang-questions
>>>
>>>
>>
>>
>> --
>> Mark Nijhof
>> t: @MarkNijhof <https://twitter.com/MarkNijhof>
>> s: marknijhof
>>
>>
>
--
Mark Nijhof
t: @MarkNijhof <https://twitter.com/MarkNijhof>
s: marknijhof
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20150117/5ac74c41/attachment.htm>
More information about the erlang-questions
mailing list