<div dir="ltr">Not yet, but Riak is something I want to test out to see if it would be a good fit for what I am doing</div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jan 17, 2015 at 9:23 PM,  <span dir="ltr"><<a href="mailto:lloyd@writersglen.com" target="_blank">lloyd@writersglen.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><font face="arial"><p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word">Hi Mark,</p>
<p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word"> </p>
<p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word">Are you by chance running riak or riak CS on any of your machines?</p>
<p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word"> </p>
<p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word">Thanks,</p>
<p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word"> </p>
<p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word">LRP</p><div><div class="h5">
<p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word"> </p>
<p style="margin:0;padding:0;font-family:arial;font-size:10pt;word-wrap:break-word">-----Original Message-----<br>From: "Mark Nijhof" <<a href="mailto:mark.nijhof@cre8ivethought.com" target="_blank">mark.nijhof@cre8ivethought.com</a>><br>Sent: Saturday, January 17, 2015 2:53pm<br>To: "Christopher Meiklejohn" <<a href="mailto:cmeiklejohn@basho.com" target="_blank">cmeiklejohn@basho.com</a>><br>Cc: "erlang questions" <<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a>><br>Subject: Re: [erlang-questions] Ideas on Distributed Programming on single machine<br><br></p>
<div>
<div dir="ltr">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. 
<div>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.</div>
<div>
<div>-Mark</div>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Sat, Jan 17, 2015 at 8:46 PM, Christopher Meiklejohn <span dir="ltr"><<a href="mailto:cmeiklejohn@basho.com" target="_blank">cmeiklejohn@basho.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><span><span><br></span></span>
<div>
<blockquote>
<div>On Jan 17, 2015, at 8:23 PM, Harit Himanshu <<a href="mailto:harit.subscriptions@gmail.com" target="_blank">harit.subscriptions@gmail.com</a>> wrote:</div>
<br>
<div>
<div dir="ltr"><br>
<div class="gmail_extra">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).<br>
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div>I am reading through Programming Erlang, Chapter 14, Distributed Programming where Joe talk about how to run Name Server in distributed mode as </div>
<div>
<div>
<ol>
<li> 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.</li>
<li> I test my program on two different Erlang nodes running on the same computer.</li>
<li> 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.</li>
</ol>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<div>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.</div>
<br>
<div>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.</div>
<div>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.</div>
<div>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.</div>
<div>- Chris</div>
<div>
<div>
<div>Christopher Meiklejohn</div>
<div>Senior Software Engineer</div>
<div>Basho Technologies, Inc.</div>
<div><a href="mailto:cmeiklejohn@basho.com" target="_blank">cmeiklejohn@basho.com</a></div>
</div>
</div>
</div>
<br>_______________________________________________<br> erlang-questions mailing list<br><a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br><a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br><br></blockquote>
</div>
<br><br>-- <br>
<div>
<div dir="ltr">Mark Nijhof<br>
<div>
<div>t:   <a href="https://twitter.com/MarkNijhof" target="_blank">@MarkNijhof</a><br>s:  marknijhof</div>
</div>
</div>
</div>
</div>
</div></div></div></font></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Mark Nijhof<br><div><div>t:   <a href="https://twitter.com/MarkNijhof" target="_blank">@MarkNijhof</a><br>s:  marknijhof</div></div><div><br></div></div></div>
</div>