You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

472 lines
14 KiB

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>project structure and technologies used :: Swarmlab faq</title>
<link rel="canonical" href="http://docs.swarmlab.io/SwarmLab-HowTos/swarmlab/docs/swarmlab_poc-datacollector/docs/index-structure.html">
<meta name="generator" content="Antora 2.3.4">
<link rel="stylesheet" href="../../_/css/site.css">
<link rel="stylesheet" href="../../_/css/search.css">
<script>var uiRootPath = '../../_'</script>
</head>
<body class="article">
<header class="header">
<nav class="navbar">
<div class="navbar-brand">
<a class="navbar-item" href="http://docs.swarmlab.io/SwarmLab-HowTos/swarmlab/docs">Swarmlab faq</a>
<button class="navbar-burger" data-target="topbar-nav">
<span></span>
<span></span>
<span></span>
</button>
</div>
<div id="topbar-nav" class="navbar-menu">
<div class="navbar-end">
<a class="navbar-item" href="#">Home</a>
<div class="navbar-item has-dropdown is-hoverable">
<a class="navbar-link" href="#">Products</a>
<div class="navbar-dropdown">
<a class="navbar-item" target ="hybridgit" href="https://git.swarmlab.io:3000/zeus/swarmlab-hybrid">Hybrid</a>
<a class="navbar-item" target ="venusgit" href="https://git.swarmlab.io:3000/swarmlab/venus-client">Venus</a>
</div>
</div>
<div class="navbar-item has-dropdown is-hoverable">
<a class="navbar-link" href="#">Services</a>
<div class="navbar-dropdown">
<a class="navbar-item" target ="hybrid" href="https://api-client.swarmlab.io:8088/">Hybrid</a>
<a class="navbar-item" target ="venus" href="https://api-client.swarmlab.io:8088/">Venus</a>
</div>
</div>
<div class="navbar-item">
<input id="search-input" type="text" placeholder="Search docs">
</div>
</div>
</div>
</nav>
</header>
<div class="body">
<div class="nav-container" data-component="swarmlab_poc-datacollector" data-version="docs">
<aside class="nav">
<div class="panels">
<div class="nav-panel-menu is-active" data-panel="menu">
<nav class="nav-menu">
<h3 class="title"><a href="index.html">swarmlab_poc-datacollector</a></h3>
<ul class="nav-list">
<li class="nav-item" data-depth="0">
<ul class="nav-list">
<li class="nav-item" data-depth="1">
<a class="nav-link" href="index.html">datacollector</a>
</li>
<li class="nav-item is-current-page" data-depth="1">
<button class="nav-item-toggle"></button>
<a class="nav-link" href="index-structure.html">project structure</a>
<ul class="nav-list">
<li class="nav-item" data-depth="2">
<a class="nav-link" href="index-vuejs.html">Vue.JS</a>
</li>
<li class="nav-item" data-depth="2">
<a class="nav-link" href="index-nodejs.html">Node JS</a>
</li>
<li class="nav-item" data-depth="2">
<a class="nav-link" href="index-mongo.html">Mongo</a>
</li>
<li class="nav-item" data-depth="2">
<a class="nav-link" href="index-redis.html">Redis</a>
</li>
</ul>
</li>
<li class="nav-item" data-depth="1">
<button class="nav-item-toggle"></button>
<a class="nav-link" href="index-src.html">src-files</a>
<ul class="nav-list">
<li class="nav-item" data-depth="2">
<a class="nav-link" href="doc-dummy_service.html">dummy_service</a>
</li>
<li class="nav-item" data-depth="2">
<a class="nav-link" href="doc-readmongo_service.html">readmongo_service</a>
</li>
</ul>
</li>
<li class="nav-item" data-depth="1">
<button class="nav-item-toggle"></button>
<a class="nav-link" href="index-usage.html">Usage</a>
<ul class="nav-list">
<li class="nav-item" data-depth="2">
<a class="nav-link" href="index-dummy_service.html">dummy_service</a>
</li>
</ul>
</li>
<li class="nav-item" data-depth="1">
<a class="nav-link" href="index-microservice.html">Add Microservice</a>
</li>
</ul>
</li>
</ul>
</nav>
</div>
<div class="nav-panel-explore" data-panel="explore">
<div class="context">
<span class="title">swarmlab_poc-datacollector</span>
<span class="version">docs</span>
</div>
<ul class="components">
<li class="component">
<a class="title" href="../../CloudComputing_Lab/docs/index.html">CloudComputing_Lab</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../CloudComputing_Lab/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_faq/docs/index.html">swarmlab_faq</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_faq/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_how-to-build-a-Swarmlab-service/docs/index.html">swarmlab_how-to-build-a-Swarmlab-service</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_how-to-build-a-Swarmlab-service/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_infrastructure-as-code/docs/index.html">swarmlab_infrastructure-as-code</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_infrastructure-as-code/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_iot-sensor-node/docs/index.html">swarmlab_iot-sensor-node</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_iot-sensor-node/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_network-adhoc/docs/index.html">swarmlab_network-adhoc</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_network-adhoc/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component is-current">
<a class="title" href="index.html">swarmlab_poc-datacollector</a>
<ul class="versions">
<li class="version is-current is-latest">
<a href="index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_raspi-docker/docs/index.html">swarmlab_raspi-docker</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_raspi-docker/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_sec-intro/docs/index.html">swarmlab_sec-intro</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_sec-intro/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_sec-iptables/docs/index.html">swarmlab_sec-iptables</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_sec-iptables/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_sec-ssh-tunneling/docs/index.html">swarmlab_sec-ssh-tunneling</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_sec-ssh-tunneling/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_sidecar-firefox/docs/index.html">swarmlab_sidecar-firefox</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_sidecar-firefox/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_tech-list/docs/index.html">swarmlab_tech-list</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_tech-list/docs/index.html">docs</a>
</li>
</ul>
</li>
<li class="component">
<a class="title" href="../../swarmlab_xelatex-thesis/docs/index.html">swarmlab_xelatex-thesis</a>
<ul class="versions">
<li class="version is-latest">
<a href="../../swarmlab_xelatex-thesis/docs/index.html">docs</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</aside>
</div>
<main class="article">
<div class="toolbar" role="navigation">
<button class="nav-toggle"></button>
<a href="../../swarmlab_faq/docs/index.html" class="home-link"></a>
<nav class="breadcrumbs" aria-label="breadcrumbs">
<ul>
<li><a href="index.html">swarmlab_poc-datacollector</a></li>
<li><a href="index-structure.html">project structure</a></li>
</ul>
</nav>
</div>
<div class="content">
<aside class="toc sidebar" data-title="Contents" data-levels="2">
<div class="toc-menu"></div>
</aside>
<article class="doc">
<h1 class="page">project structure and technologies used</h1>
<div class="sect1">
<h2 id="_dynamic_structure"><a class="anchor" href="#_dynamic_structure"></a>Dynamic Structure</h2>
<div class="sectionbody">
<div class="openblock float-group">
<div class="content">
<div class="imageblock right right">
<div class="content">
<img src="_images/swarm-poc.png" alt="swarm poc">
</div>
</div>
<div class="paragraph">
<p><br>
</p>
</div>
<div class="ulist checklist">
<div class="title">From &#8594; To</div>
<ul class="checklist">
<li>
<p><i class="fa fa-check-square-o"></i> monolithic &#8594; networking architecture</p>
</li>
<li>
<p><i class="fa fa-check-square-o"></i> static &#8594; Dynamic</p>
</li>
<li>
<p><i class="fa fa-check-square-o"></i> host based &#8594; Service based</p>
</li>
<li>
<p><i class="fa fa-check-square-o"></i> linear &#8594; agile</p>
</li>
</ul>
</div>
</div>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
You will learn to code, coordinate and orchestrate a swarm of self-acting nodes.
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_dynamic_instaces"><a class="anchor" href="#_dynamic_instaces"></a>Dynamic Instaces</h2>
<div class="sectionbody">
<div class="openblock float-group">
<div class="content">
<div class="imageblock right right">
<div class="content">
<img src="_images/docker-images.png" alt="210" width="260">
</div>
</div>
<div class="paragraph">
<p><br>
</p>
</div>
<div class="paragraph">
<p>Server instances are <strong>platform agnostic container-based applications.</strong></p>
</div>
<div class="paragraph">
<p>To build a large - scale distributed application we take advantage of standardized code deployments using Docker containers.</p>
</div>
<div class="paragraph">
<p>Docker-based applications can be seamlessly moved from local development machines to production deployments</p>
</div>
<div class="paragraph">
<p><br></p>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_dynamic_networks_swarm"><a class="anchor" href="#_dynamic_networks_swarm"></a>Dynamic networks - Swarm</h2>
<div class="sectionbody">
<div class="openblock float-group">
<div class="content">
<div class="imageblock right left">
<div class="content">
<img src="_images/gynamic-swarm.png" alt="320" width="540">
</div>
</div>
<div class="paragraph">
<p><br></p>
</div>
<div class="paragraph">
<p><strong>From Code to full-blown systems</strong></p>
</div>
<div class="ulist">
<ul>
<li>
<p>from a single container on your local machine</p>
</li>
<li>
<p>to a running cloud native - container-based environment</p>
</li>
<li>
<p>in the simplest and most logical format as possible.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p><br>
<br>
<br>
<br>
</p>
</div>
<div class="literalblock">
<div class="content">
<pre>Services in a dynamic and Scalable Distributed Architecture</pre>
</div>
</div>
<div class="paragraph">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_datacollector_structure"><a class="anchor" href="#_datacollector_structure"></a>Datacollector structure</h2>
<div class="sectionbody">
<div class="openblock float-group">
<div class="content">
<div class="imageblock right right">
<div class="content">
<img src="_images/swarm-poc1.png" alt="230" width="280">
</div>
</div>
<div class="paragraph">
<p></p>
</div>
<div class="ulist">
<ul>
<li>
<p>(red) Redisserver</p>
<div class="ulist">
<ul>
<li>
<p>redis sync for readmongo_service and dummy_service</p>
</li>
</ul>
</div>
</li>
<li>
<p>(blue) readmongo_service</p>
<div class="ulist">
<ul>
<li>
<p>reads data from mongodb (Rest api)</p>
<div class="ulist">
<ul>
<li>
<p>1. Webclient &#8594; readmongo_service</p>
</li>
<li>
<p>2. readmongo_service &#8592; mongo</p>
</li>
<li>
<p>3. webclient &#8592; readmongo_service</p>
</li>
</ul>
</div>
</li>
<li>
<p>reads data from mongodb (socket)</p>
<div class="ulist">
<ul>
<li>
<p>Webclient &#8592;&#8594; readmongo_service &#8592;&#8594; redis &#8592;&#8594; readmongo_service &#8592;&#8594; mongo</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</li>
<li>
<p>(green) dummy_service</p>
<div class="ulist">
<ul>
<li>
<p>IoT devive or App &#8594; mongo</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
<strong>(red), (blue) and (green) are scalable microservices</strong>
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
</article>
</div>
</main>
</div>
<footer class="footer">
<p>This page was built using the Antora <a href="https://gitlab.com/antora/antora-ui-default" target="antora">default UI</a> </p>
</footer>
<script src="../../_/js/site.js"></script>
<script src="../../_/js/vendor/lunr.js"></script>
<script src="../../_/js/vendor/search.js" id="search-script" data-base-path="../.." data-page-path="/swarmlab_poc-datacollector/docs/index-structure.html"></script>
<script async src="../../_/../search-index.js"></script>
<script async src="../../_/js/vendor/highlight.js"></script>
</body>
</html>