<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="24154" data-post-id="24154">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="axler8tor" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/axler8tor/120/17814_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  axler8tor
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Thanks for the advice so far. I will propose a PoC along the following lines:</p>
<ol>
<li>Use gen_coap for the data plane.</li>
<li>GenStage to do event processing.</li>
<li>Store raw data an Azure Data Lake for Advanced Analytics. It is a strategy of the organisation to do all big data this way going forward. This is a ReST call to store information in the data lake.</li>
<li>Simulate telemetry from 10,000 trucks/haulers/lorries that report GPS co-ordinates, speed, engine temperature, engine RPM, pneumatic system pressure and electrical system data at 1 second intervals — that is, we do 10,000 tps.</li>
</ol>
<p><em>The primary goal is to use only technologies one gets with the standard install, and only packages from hex.pm</em>. That is, I want to install stock Elixir and use only it and whatever I stick in my mix deps function to make it work, no need to install a database and a queuing system — <strong>unless it is absolutely necessary</strong>.</p>
<p>One question I have is which OS is better suited to the PoC? Linux or FreeBSD? I am an old Solaris kernel developer and are very familiar with Zones (Jails), DTrace and ZFS, but is that a good fit for “the masses”?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="24154" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/iot-vehicle-tracking-poc-elixir-erlang-on-freebsd-linux-in-azure/3644/12">Post #11</a>
	                </div>
	            </div>
              <div id="likers-container-24154" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="24154"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #11"></div>
  </section>
</div>
    <div class="postbit" id="24156" data-post-id="24156">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="arpunk" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/arpunk/120/1439_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  arpunk
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I come from Solaris as well and you’ll feel at home using FreeBSD instead of GNU/Linux. You can compile Erlang on FreeBSD with DTrace support enabled. In GNU/Linux you’ll need to enable SystemTap tracing instead. Also, kernel polling (kpoll) is faster in FreeBSD and you can use it with Erlang (<code>--erl "+K true"</code>)</p>
<p>PD: I work on transportation and logistics (regular cars) and we use Elixir to index all GPS reports (among other things) on FreeBSD.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="24156" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/iot-vehicle-tracking-poc-elixir-erlang-on-freebsd-linux-in-azure/3644/13">Post #12</a>
	                </div>
	            </div>
              <div id="likers-container-24156" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="24156"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #12"></div>
  </section>
</div>
    <div class="postbit" id="24214" data-post-id="24214">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="DianaOlympos" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/DianaOlympos/120/4353_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  DianaOlympos
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>SmartOS works great. FreeBSD works too</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="24214" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/iot-vehicle-tracking-poc-elixir-erlang-on-freebsd-linux-in-azure/3644/14">Post #13</a>
	                </div>
	            </div>
              <div id="likers-container-24214" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="24214"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #13"></div>
  </section>
</div>
    <div class="postbit" id="25289" data-post-id="25289">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="dch" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dch/120/2682_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  dch
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Sounds awesome Just chiming in here, another happy FreeBSD user and also CouchDB user. It may not be immediately obvious but you can run Elixir apps <em>directly</em> inside the CouchDB VM, which gives superb performance. All you need to do is add <code>-s &lt;app&gt;</code> to your <code>/etc/rc.conf.d/couchdb</code> file per <a href="https://github.com/freebsd/freebsd-ports/blob/master/databases/couchdb/files/couchdb.in#L23" rel="noopener nofollow ugc">https://github.com/freebsd/freebsd-ports/blob/master/databases/couchdb/files/couchdb.in#L23</a> and it will be started &amp; maintained along with CouchDB. I ship the code today as a custom package that deploys its code into <code>/usr/local/lib/couchdb/plugins/</code> which is a delightfully simple solution.</p>
<p>I would consider your database setup early on, as the need for handling network partitions from Africa to Azure is really important. CouchDB on a rPi would make an excellent local store until the network is available again to sync through to the main repo. rabbitmq has some nice IoT flavoured transports like MQTT but you would then need to create a local store first, before sync.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="25289" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/iot-vehicle-tracking-poc-elixir-erlang-on-freebsd-linux-in-azure/3644/15">Post #14</a>
	                </div>
	            </div>
              <div id="likers-container-25289" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="25289"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #14"></div>
  </section>
</div>
    <div class="postbit" id="28328" data-post-id="28328">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="tomazbracic" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/tomazbracic/120/1861_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  tomazbracic
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Hi,</p>
<p>I would just like to say that I think you pick the right technologies. I work for a startaup where we deal with data from cars (connected car platform). The load you mention is similar to mine. Elixir/erlang/OTP is great and really capable technology. Though I am using MQTT (broker written in erlang) for 3/4g traffic part. On devicec in cars…we use C based sw. Then we use 2-way TLS, there is some Golang code for small services, Kafka for keeping everything together, currently still Postgres, but we have things prepared for Cassandra. Elixir is great. The whole ecosystem is great. Just believe in yourself.</p>
<p>Best<br>
Tomaz B.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="28328" data-batch-url="/posts/batch_likers">
                        3
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/iot-vehicle-tracking-poc-elixir-erlang-on-freebsd-linux-in-azure/3644/16">Post #15</a>
	                </div>
	            </div>
              <div id="likers-container-28328" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="28328"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #15"></div>
  </section>
</div>
    <div class="postbit" id="53217" data-post-id="53217">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="GregMefford" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/GregMefford/120/4875_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  GregMefford
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Sorry to necro-bump this thread, but I just stumbled on it and thought you might be interested in this presentation from <a class="mention" href="/u/st23am" rel="nofollow">@st23am</a> about doing the embedded device aspect of this project using Nerves: <a href="https://www.youtube.com/watch?v=aLnSO6FQpHs" rel="noopener nofollow ugc">https://www.youtube.com/watch?v=aLnSO6FQpHs</a></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="53217" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/iot-vehicle-tracking-poc-elixir-erlang-on-freebsd-linux-in-azure/3644/17">Post #16</a>
	                </div>
	            </div>
              <div id="likers-container-53217" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="53217"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-last-post cat-last-post" title="Last post!"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <span class="all-loaded">— All posts loaded —</span>
</div></template></turbo-stream>