Git Product home page Git Product logo

rxinvent's Introduction

rxinvent

spring reactor implementation for case inventory management.

intro

rxinvent aims to implement the latest technology that integrated using

  • Spring Boot
  • Reactor-MongoDB-Redis-Kafka
  • GraalVM
  • Docker
  • Kubernetes (context-dekstop)
  • Prometheus and
  • Grafana

It is mandatory for you to have maven, docker and kubernetes installed on your machine.

usage

  1. git clone github.com/lloistborn/rxinvent.git
  2. run mvn clean package dockerfile:build to build the docker images from this repo on top of GraalVM
  3. run docker-compose up to run them all if everyhting was alright then you should see Nettyrunning on port 8080
spring-boot    | 2018-11-10 13:15:34.113  INFO 1 --- [           main] o.s.i.endpoint.EventDrivenConsumer       : started _org.springframework.integration.errorLogger
spring-boot    | 2018-11-10 13:15:34.113  INFO 1 --- [           main] o.s.c.support.DefaultLifecycleProcessor  : Starting beans in phase 2147483547
spring-boot    | 2018-11-10 13:15:34.317  INFO 1 --- [-server-epoll-5] r.ipc.netty.tcp.BlockingNettyContext     : Started HttpServer on /0.0.0.0:8080
spring-boot    | 2018-11-10 13:15:34.319  INFO 1 --- [           main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port(s): 8080

testing

docker ps

in separate terminal, make sure all the container running well by using command docker ps. we should see Prometheus, Grafana springio/inventory-management and mongo container are running.


actuator

in essence, Actuator brings production-ready features to our application. Monitoring our app, gathering metrics, understanding traffic or the state of our database becomes trivial with this dependency. The main benefit of this library is that we can get production grade tools without having to actually implement these features ourselves.

to run actuator, go to localhost:8080/actuator

mongodb

by default, whenever we successfully run this project, there are some data inserted to mongo documents.

to check them, run our favorite client and add connection localhost:27017.

prometheus together with grafana

Prometheus, a Cloud Native Computing Foundation project, is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true.

Grafana is an open source visualization tool that can be used on top of a variety of different data stores.

go check prometheus on locahost:9090 and grafana localhost:3000

changelog

rxinvent 1.1.0-1.SNAPSHOT

  • all dependencies are upgraded using spring-boot-starter-parent-2.1.8.RELEASE
  • add integration test for reactive mongodb

rxinvent's People

Contributors

lloistborn avatar

Watchers

 avatar  avatar

rxinvent's Issues

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.