Skip to content

51568488/vertx-zero

Repository files navigation

Vertx Zero Up Framework

Maven Central Apache License 2 Build Status Gitter Maintainability Waffle.io - Columns and their card count

This project is based on Vert.x, the idea came from Spring-Boot framework. It could help developers focus on business requirements instead of more details of Vert.x. The project contains two parts "Up" and "Zero". "Up" means running up, "Zero" means no configuration provided, you could run your project with default configuration only.

Micro Service architecture is a future focused method to design and build mature system and help more companies to implement project faster, based on this idea, Vertx Zero Up Framework came out. It's micro-service oriented framework and will be verified by real projects. Also it provide a tool set to help developers to do correct things. The last point is that because of Event Driven Model, it's high performance framework.

This framework contains four sub-projects

  • vertx-co: Core Library of Zero Up Framework
  • vertx-tp: Third part integration components in Zero Up Framework
  • vertx-up: Zero Up Engine with nested vert.x web container
  • vertx-rx: Zero Up Engine with nested rxjava web container instead of web container
  • vertx-zeus: Zero Examples, it will be removed in real project implementation.

1. Envrionment

If you want to use Zero framework, you can add following dependency into you pom.xml to use Zero:

Before 0.4.5.1 ( Direct )

        <dependency>
            <groupId>cn.vertxup</groupId>
            <artifactId>vertx-up</artifactId>
            <version>0.4.5</version>
        </dependency>

From 0.4.5.1 ( Inherit )

    <parent>
        <artifactId>vertx-import</artifactId>
        <groupId>cn.vertxup</groupId>
        <version>0.4.5.1</version>
    </parent>

2. Boot Up

In your project, you can provide main entry only as following to run Zero ( Annotated with @Up ) .

import io.vertx.up.VertxApplication;
import io.vertx.up.annotations.Up;

@Up
public class Driver {

    public static void main(final String[] args) {
        VertxApplication.run(Driver.class);
    }
}

Once the Zero is up, you can see following logs in your console ( The default port is 6083 ):

[ ZERO ] ZeroHttpAgent Http Server has been started successfully. \
    Endpoint: http://0.0.0.0:6083/

3. Documentation

3.1. Zero Documents

  1. Official Document

3.2. Useful Related Documents

  1. Issue resolutions (1)

3.3. Some Notes

  1. RxJs

4. Logging in Zero

You also could use following function in your coding to get Logger component.

// Zero Logger initialized, connect to vert.x logging system directly but uniform managed by zero.
import io.vertx.up.log.Annal;

// Then in your class
public final class Statute {

    private static final Annal LOGGER = Annal.get(Statute.class);
    ......
}

About

Zero Configuration for vert.x

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published