-
Notifications
You must be signed in to change notification settings - Fork 141
[Z Notebook] Roadmap
- Integrate with Servlet async request and WebSocket support (DONE for servlet not WebSocket)
- qbit-servlet (DONE for REST not for standard websocket)
- qbit-jetty Build on top of qbit-servlet to provide jetty support for QBit (DONE)
- Work with Spring @Context listeners
- Work with @Service, @InProcService, @RestServer
- Nice to have work with Spring AOP / Proxy support to create cglib proxies
- qbit-spring sub project
- Still brain storming
- qbit-core improvement
- Start with in-memory version
- Use it and the event bus to explain QBit (IO, replication, etc.)
- Started but no where close to done.
These are not minor importance overall. Just minor for the next few releases of QBit.
- B9 BasicQueue needs to be three queues maybe more. Too much code in once class has already caused some bugs.
- B10 BoonMethodCall handler has flags for handling dynamic methods (JSON, Maps) and strongly typed methods (Object array with actual objects to methods already pre-chewed), it needs to be refactored.
- B11 Handle events in the queue (for Service) as the methods
- Create WebSocket abstraction DONE!
onTextMessage
onBinaryMessage
onClose
onError
isOpen
isClosed
sendText
sendBinary
Plus consumers.
- B1 Have a QBit sessions for disconnected REST and WebSocket clients so on reconnect they pick up where they left off. This would be a separate system on top of what we already offer that provides a logical connection called a session. This is more to support Mobile clients than Service to Service calls
- A1 Handle callbacks on the same thread as the method calls, this is an IMPORTANT feature and critical to the QBit programming model. DONE!
- C kafka, camel, jms, and 0mq are great examples of things to integrate with
- they will aid in positioning QBit as a microservice framework
- qbit-kafka Integrate QBit event bus with kafka
- qbit-camel Integrate Camel with QBit event bus
- qbit-jms Integrate JMS with QBit event bus
- qbit-0mq Integrate 0mq with QBit event bus
- create new ring buffer base Queue
- C integrate with fast Queue from psycho blog
- C integrate with LMAX queue
- C1 qbit-ratpack I like ratpack. I want to combine QBit and ratpack.
- A uri params work in unit test but not integration server FIXED DONE!
- A embedded mode for vertx not working (works standalone but embedded broke) PULLED OUT.. Cancelled.
- B1 @RequestMapping only does single uri, to be more like Spring MVC, needs to work with groups
- Event Bus
- B Event bus no real difference between consume and publish. Not sure we can do much until we integrate with JMS or Kafka. Throwing an exception can mean we did not consume method. Needs plumbing. Might be part of the Kafka and/or JMS integration and not part of the core. This will have to wait until we integrate.
- A @EventChannel has a flag to use method name as part of event dispatch, we don't use it. Yet.
- Add EventConnector and Event replication (DONE!)
- Document how callbacks work (DONE)
- Document how you can send non-REST / WebSocket RPC calls with a ServiceEndpointServer ServiceEndpointServer ServiceEndpointServer. ???
- Document what a ServiceEndpointServer ServiceEndpointServer ServiceEndpointServer is
- Create a TOC for main wiki and man github page DONE
- Create a website for the project
- Use EventManager impl to explain QBit
- Use Metrics engine to explain QBit DONE
- Document how SystemManager works DONE
QBit Website What is Microservices Architecture?
QBit Java Micorservices lib tutorials
The Java microservice lib. QBit is a reactive programming lib for building microservices - JSON, HTTP, WebSocket, and REST. QBit uses reactive programming to build elastic REST, and WebSockets based cloud friendly, web services. SOA evolved for mobile and cloud. ServiceDiscovery, Health, reactive StatService, events, Java idiomatic reactive programming for Microservices.
Reactive Programming, Java Microservices, Rick Hightower
Java Microservices Architecture
[Microservice Service Discovery with Consul] (http:https://www.mammatustech.com/Microservice-Service-Discovery-with-Consul)
Microservices Service Discovery Tutorial with Consul
[Reactive Microservices] (http:https://www.mammatustech.com/reactive-microservices)
[High Speed Microservices] (http:https://www.mammatustech.com/high-speed-microservices)
Reactive Microservices Tutorial, using the Reactor
QBit is mentioned in the Restlet blog
All code is written using JetBrains Idea - the best IDE ever!
Kafka training, Kafka consulting, Cassandra training, Cassandra consulting, Spark training, Spark consulting
Tutorials
- QBit tutorials
- Microservices Intro
- Microservice KPI Monitoring
- Microservice Batteries Included
- RESTful APIs
- QBit and Reakt Promises
- Resourceful REST
- Microservices Reactor
- Working with JSON maps and lists
__
Docs
Getting Started
- First REST Microservice
- REST Microservice Part 2
- ServiceQueue
- ServiceBundle
- ServiceEndpointServer
- REST with URI Params
- Simple Single Page App
Basics
- What is QBit?
- Detailed Overview of QBit
- High level overview
- Low-level HTTP and WebSocket
- Low level WebSocket
- HttpClient
- HTTP Request filter
- HTTP Proxy
- Queues and flushing
- Local Proxies
- ServiceQueue remote and local
- ManagedServiceBuilder, consul, StatsD, Swagger support
- Working with Service Pools
- Callback Builders
- Error Handling
- Health System
- Stats System
- Reactor callback coordination
- Early Service Examples
Concepts
REST
Callbacks and Reactor
Event Bus
Advanced
Integration
- Using QBit in Vert.x
- Reactor-Integrating with Cassandra
- Using QBit with Spring Boot
- SolrJ and service pools
- Swagger support
- MDC Support
- Reactive Streams
- Mesos, Docker, Heroku
- DNS SRV
QBit case studies
QBit 2 Roadmap
-- Related Projects
- QBit Reactive Microservices
- Reakt Reactive Java
- Reakt Guava Bridge
- QBit Extensions
- Reactive Microservices
Kafka training, Kafka consulting, Cassandra training, Cassandra consulting, Spark training, Spark consulting