项目作者: jantoniucci

项目描述 :
编排和编排模式的概念证明,用于建模业务流程
高级语言: Java
项目地址: git://github.com/jantoniucci/poc-on-orchestration-and-choreography.git
创建时间: 2018-01-04T18:27:59Z
项目社区:https://github.com/jantoniucci/poc-on-orchestration-and-choreography

开源协议:Apache License 2.0

下载


poc-on-orchestration-and-choreography

Proof of Concept on orchestration and choreography patterns to model business processes based on the example posted in this very inspirational article “orchestration and choreography BPM design patterns”

Main concepts

Context Map

The Context Map for the example described in this article is:

  • Finance
    • Payments
  • Sales
    • Order
    • Checkout
  • Products
    • Inventory
    • Shipment

Each secod level element is actually implemented as a microservice.

Technology stack

  • Spring Boot (Microservices)
  • Camunda BPM (Busines Process Orchestation)
  • Apache Kafka (Business Process Choreography)

Run the PoC

Pre-requisites:

Clone the repo

  1. git clone https://github.com/jantoniucci/poc-on-orchestration-and-choreography.git
  2. cd poc-on-orchestration-and-choreography

Run a full build

  1. mvn install

At your Kafka’s home directory, start zookeeper

  1. bin/zookeeper-server-start.sh config/zookeeper.properties

start kafka

  1. bin/kafka-server-start.sh config/server.properties

create a topic “retail”

  1. bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic retail

Check existing topics

  1. bin/kafka-topics.sh --list --zookeeper localhost:2181

Start the microservices components one by one

  1. mvn -f checkout exec:java
  2. mvn -f inventory exec:java
  3. mvn -f monitor exec:java
  4. mvn -f order exec:java
  5. mvn -f payment exec:java
  6. mvn -f shipping exec:java

Now you can place an order via http://localhost:8090
You can inspect Order via http://localhost:8091
You can inspect Payment via http://localhost:8092
You can inspect all events going on via http://localhost:8095