Rick

Rick
Rick

Monday, March 9, 2015

Another project using Boon on Github... MudElephant

MudElephant

https://github.com/serayuzgur/mudelephant

MudElephant

A performance oriented, shaved, light-weight Java Web framework which is at alpha state.

Motivation

  • Having a fast and flexible resource server.
  • Using bleeding-edge technologies.
  • Fun.
It is
  • easy to use
  • client-server separated
  • RESTful service and static asset server with extra spices.

What we got

  • Undertow as server
  • Boon for Json Parsing.
  • Athlete A JAX-RS (like) implementation with lots of missing features. It is working on top of HTTP Handlers-Undertow.



MudElephant sounds a lot like QBit. Except of course, MudElephant is a much cooler name. 

QBit works with Jetty and Vertx (and also embedded in any servlet engine or inside of Spring Boot). 

MudElephant works with Undertow, which on my list of things to make QBit work with.



Java Microservice Lib

QBit has inproc services, REST microservices and WebSocket microservices as well as an in-proc service event bus (which can be per module or per app). It supports workers and in-memory services.
Before we describe more, here are two sample services:

Todo Service

@RequestMapping("/todo-service")
public class TodoService {

    @RequestMapping("/todo/count")
    public int size() {...

    @RequestMapping("/todo/")
    public List<TodoItem> list() {...

Adder Service using URI params

    @RequestMapping("/adder-service")
    public class AdderService {

        @RequestMapping("/add/{0}/{1}")
        public int add(@PathVariable int a, @PathVariable int b) {...
    }

QBit philosophy:

At the end of the day QBit is a simple library not a framework. Your app is not a QBit app but a Java app that uses the QBit lib. QBit allows you to work with Java UTIL concurrent, and does not endeavor to hide it from you. Just trying to take the sting out of it.

--Rick
Kafka and Cassandra support, training for AWS EC2 Cassandra 3.0 Training