GithubHelp home page GithubHelp logo

driver's Introduction

Driver

The services composing this application are found in subdirectories:

  • gateway an elixir service, that either forward or transform requests to be processed synchronously or asynchronously.
  • location a go service, that consumes location update events and store them.
  • zombie a go service, that allows to check if a driver matches the zombie predicate or not.

Each service has it's own readme with instructions for getting them up and ruuning

Assumptions

This project has been built on OSX and the instructions assume a unix environment with some mac specific references.

Prerequisites

You will need to have the following tools installed to run locally:

Development

As some of these services are go packages, you'll need to have set your $GOPATH this repo cloned to $GOPATH/src/driver.

Please ensure you have the following language versions installed:

$ go version
go version go1.9.4 darwin/amd64
$ elixir -v
Erlang/OTP 20 [erts-9.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false]

Elixir 1.6.1 (compiled with OTP 19)

Running the cluster

To get the compose cluster up an running use:

$ ./start.sh
...

Too bring the cluster down use:

$ ./stop.sh
...

To see the list of running containers user:

$ docker-compose ps
...

To see the container logs use:

$ docker-compose logs
...

The gateway service will be available locally via: localhost:3000 The location service will be available locally via: localhost:3001 The zombie service will be available locally via: localhost:3002 The NSQ admin page will be available locally via: localhost:4171

Verification

I've encluded a postman collection file Driver.postman_collection.json with some test requests set up. This can be used to test the endpoints.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.