Skip to content

LucasPluta/distPi

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

145 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

distPi

Proof-of-concept distributed microservice architecture. Utilizing Redis Pub/Sub for data-distribution, and Protobuf for modeling data-flow. This stack was chosen for easy remote-monitoring, and portability between Windows and Linux. Tested in Windows 10, and the Raspberry Pi OS.

Screenshot

Requirements for Windows 10

  • Visual Studio 2019 (with .NET 4.7, MSVC v142, and CMake)

Requirements for Linux

  • autoconf
  • automake
  • libtool
  • make
  • g++
  • unzip

Which, on Raspberry Pi OS, can be installed with:

sudo apt-get install autoconf automake libtool curl make g++ unzip

Usage

  1. Depending on the OS, run the corresponding Pull script to obtain the dependencies.
  2. Run the corresponding Build script. You will need to append the CheckEnv script if you have installed VS2019 in a custom location.
  3. Run the Start scripts to spin up the various components.
    • StartRedis: Runs the Redis service
    • StartViewer: Runs the ChronologicalMessageWindow to observe the messages flowing back-and-forth
    • StartMicroService: Runs the "Ping-Pong" messaging example
  • Note: By default, the start scripts are configured to connect to a Redis service that is running on localhost. If Redis is running remotely, ensure that port 6379 is open, and replace 'localhost' with the destination IP address.
  1. Run the Deploy script to collect the binaries and Start scripts.

About

Proof-of-concept for a distributed microservice architecture, running on embedded systems

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C# 44.0%
  • C++ 32.3%
  • Batchfile 15.9%
  • Shell 5.1%
  • CMake 2.7%