Vertx
Vert.x is a tool-kit for building reactive applications on the JVM.(Vertx是运行在JVM上用来构建reactive application的工具集)
Vertx Design
响应式的(Responsive):一个响应式系统需要在合理的时间内处理请求。
弹性的(Resilient):一个响应式系统必须在遇到异常(崩溃,超时, 500 错误等等)的时候保持响应的能力,所以它必须要为异常处理 而设计。
可伸缩的(Elastic):一个响应式系统必须在不同的负载情况下都要保持响应能力,所以它必须能伸能缩,并且可以利用最少的资源来处理负载。
消息驱动(Message driven):一个响应式系统的各个组件之间通过 异步消息传递 来进行交互。
支持多种语言:只要能运行在JVM上的语言,基本都支持。
简单的并发模型:就像写单线程代码一样简单,多线程并发由Vertx控制。
支持Event Bus:在同一个vertx集群,各个verticle 实例间可以通过event bus通信。同时也支持跨进程的TCP Event Bus (tcp-eventbus-bridge)
Vertx与Netty的关系:Vertx使用Netty处理所有的IO。
Vertx 术语
Verticle
Vertx部署和运行的代码。Verticles可以使用多种语言实现。
Vert.x Instance
Vert.x instance运行在JVM里,Verticle运行在Vert.x instance里。多个Verticles在一个Vert.x instanc