Giter Site home page Giter Site logo

microservices's Introduction

Refactor monolith to microservices

This workspace will show how to refactor a Java EE monolith to a microservices-based application. This will be accomplished in multiple phases:

  1. Phase 1: Functional decomposition of a WAR into multiple `WAR`s. Use hardcoded service URIs.

  2. Phase 2: Use service registration and discovery

  3. Phase 3: Continuous integration

  4. Phase 4: Continuous deployment

  5. Phase 5: Proactive monitoring and scale in/out

  6. Phase 6: Change the implementation stack of a service

Run the application

  1. Start ZooKeeper

    docker run -d -p 2181:2181 fabric8/zookeeper
  2. Download and unzip WildFly 9.0.0.Final

  3. Run WildFly

    ./bin/standalone.sh
  4. Deploy the application

    mvn -f microservice/pom.xml install -DskipTests

NoOps

Operational concerns are addressed in the following documents:

  1. Service Discovery

  2. Continuous Integration

  3. Continuous Deployment

  4. Service Monitoring

microservices's People

Contributors

arun-gupta avatar ivargrimstad avatar lordofthejars avatar metmajer avatar paulbakker avatar rhuss avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

microservices's Issues

Add shipping functionality

  • OrderBean publish a message to a JMS queue
  • New ShippingBean consumes the message and starts the shipping process
  • Updates the status in Order table (add a new column?)

ZooKeeper configuration

ZooKeeper IP address and port are hardcoded in org.javaee7.wildfly.samples.services.zookeeper.ZooKeeper. This need to be done using a configuration file or some other means.

Add support OpenShift

will be grateful to see how to configure microservice App git repository with OpenShift git repository and run them in WildFly AS 8 on OpenShift

Move the UI pages to each application

For the microservices-based application, all UI pages are in the everest module. These should be refactored to each individual component and then used instead.

Connectivity problems between zookeeper and other services in the dockerized version

Hi all,
I don't know if this is in fact a problem, because I might be doing something wrong.
What I have is:

  • zookeeper running in its own docker container
  • each service (order, catalog, user and everest) running in its own docker container
    With this in place I can not get any registry/discover of the services as the zookeeper service is not seen by other services.

Don't we miss the links tag in the pom file for the docker images to be built as in:

<image>
  ...
  <run>
	<ports>
		...
	</ports>
	<links>
		<link>zookeper-service:zoo</link>
	</links>
  </run>
</image>

Thank you for your support.
Kind Regards
Bruno Almeida

Distrubuted transaction

Hi arun. Thanks a lot for that example. I have the same issue here. I think about to migrate our warehouse managemnt system ( based on JEE7 ) to microservice architecture for industry 4.0 approach. The problem I have is how to solve the distrubuted transactions. I'm sure you have some ideas ;-)

Automatic registration of REST endpoints with @ZooKeeper

@ZooKeeper qualifier can be specified over any REST endpoint. The endpoint will then register with ZooKeeper as a service.

Additionally, if @ZooKeeper is specified on an Application class then all endpoints in that application are automatically registered in ZooKeeper using a default name.

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.