Vert.x
Awesome Vert.x
¶
- Awesome Vert.x *是一系列令人敬畏的框架,库或其他组件,它们可以一起使用或 Vert.x 版本.
如果要在此处显示组件,请向该存储库发送拉取请求以添加它.
请注意,我们不能保证此清单上所有内容的稳定性或生产价值,除非它具有
图标
在它的旁边. 此图标表示该组件是官方的一部分
Vert.x stack.
对于Vert.x版本2,请检查 this page.
Books¶
- A gentle guide to asynchronous programming with Eclipse Vert.x for Java developers 朱利安·蓬吉(Julien Ponge),托马斯·塞吉斯蒙特(Thomas Segismont)和朱利安·越(Julien Viet)
- Building Reactive Microservices in Java 由克莱门特·埃斯科菲耶(ClémentEscoffier)
- Vert.x in Action 通过朱利安蓬吉
Build tools¶
- Vert.x Maven plugin
- Vert.x Gradle plugin
- Vert.x Codegen Gradle plugin -Gradle插件,可简化Vert.x Java项目的代码生成用法.
Web Frameworks¶
- Vert.x Jersey -创建JAX-RS Jersey Vert.x中的资源.
- Kovert -Kotlin + Vert.x Web的不可见REST框架.
- Handlers -Vert.x的开放式Web框架.
- QBit -REST和WebSocket方法调用封送处理和反应式库.
- vertx-rest-storage -文件系统或redis数据库中REST资源的持久性.
- Jubilee -建立在Vert.x 3上的机架兼容Ruby HTTP服务器.
- Knot.x -建立在Vert.x 3上的现代网站的高效,高性能集成平台.
- Irked -Vert.x 3 Web和控制器框架的基于注释的配置.
- REST.VertX -轻量级的JAX-RS(RestEasy),例如Vert.x垂直版本的注释处理器.
- Atmosphere Vert.x -用于JVM的实时客户端服务器框架,支持WebSocket和具有跨浏览器后备功能的服务器发送事件.
- Vert.x Vaadin -在Vert.x上运行View应用程序.
- Serverx -使您仅使用路由处理程序注释即可快速轻松地设置支持Vert.x的服务器.
- Cloudopt Next -Cloudopt Next是一个非常轻量级的,现代的,基于JVM的全栈kotlin框架,旨在构建具有Java,Kotlin语言支持的模块化,易于测试的JVM应用程序,该应用程序是根据最佳的Java库和标准精制而成.
- Donkey -为简化易用性和性能而构建的现代Clojure HTTP服务器和客户端.
Authentication Authorisation¶
- Vert.x-Pac4j -使用以下工具实施Vert.x身份验证/授权 pac4j.
Database Clients¶
用于连接数据库的客户端
*关系数据库
* Reactive SQL Client -高性能反应式SQL客户端.
* JDBC
-围绕JDBC数据源的异步接口.
* MySQL / PostgreSQL
-MySQL / PostgreSQL的异步客户端.
* PostgreSQL -反应性PostgreSQL客户端.
* database -面向Oracle,PostgreSQL,SQL Server,HyperSQL等的客户端,旨在确保安全性,正确性和易用性.
* jOOQ -执行类型安全的异步SQL,并使用jOOQ生成代码.
- NoSQL数据库
- MongoDB
-用于与MongoDB数据库进行交互的异步客户端.
- Redis
-与Redis进行交互的异步API.
- Cassandra
-Vert.x客户端,允许应用程序与Cassandra服务进行交互.
- Cassandra -与Cassandra和Cassandra映射进行交互的异步API.
- OrientDB -无阻塞OrientDB服务器集成.
- Bitsy -非阻塞Bitsy Graph服务器集成.
- MarkLogic -Marklogic数据库服务器的异步客户端.
- SirixDB -非阻塞SirixDB HTTP服务器.
- DGraph -有关如何构建Vert.x gRPC兼容客户端的示例. 此处定位 dgraph
- RxFirestore -以反应方式编写的非阻塞Firestore SDK.
-
MongoDB -在之上具有纯功能性和反应性的MongoDB客户端 Vert.x Effect . 全面支持重试,后备和恢复操作.
-
vertx-pojo-mapper -MySQL和MongoDB的非阻塞POJO映射.
- vertx-mysql-binlog-client -一个Vert.x客户端,用于接入MySQL复制流.
Integration¶
*服务器发送的事件 * jEaSSE -Java Easy SSE. SSE的简单,轻量级实现. * vertx-sse -Vert.x SSE实现+事件总线SSE桥.
- 邮件
- SMTP
-异步SMTP客户端.
-
vertx-smtp-server -桥接到EventBus的SMTP服务器.
-
休息
- Vert.x REST Client -Vert.x的REST客户端,支持RxJava和请求缓存.
- Retrofit adapter for Vert.x -用于Vert.x改造的高度可扩展适配器.
- openapi4j adapter for Vert.x -OpenAPI 3请求验证器和路由器工厂替代品.
- Vert.x Effect HTTP client -使用的纯功能和反应式HTTP客户端 Vert.x Effect 具有OAuth支持以及重试,后备和恢复操作.
文件服务器
* Vert.x TFTP Client -Vert.x的TFTP客户端支持下载/上传文件.
消息
* AMQP 1.0 -使用Vert.x Producer和Consumer API与AMQP 1.0服务器进行交互.
* MQTT
-提供两个不同的组件:用于处理与客户端的所有MQTT通信和消息交换的MQTT服务器,以及用于针对MQTT代理发送和接收消息的MQTT客户端.
* RabbitMQ
-RabbitMQ客户端(AMQP 0.9.1).
* Kafka Client
-Kafka客户.
* kafka -Kafka客户端,用于消费和产生消息.
* Kafka Service -具有重试逻辑的Kafka生产者和消费者.
* STOMP
-Kafka客户端和服务器.
* ZeroMQ -ZeroMQ事件总线桥.
* MQTT Broker -MQTT Broker(符合MQTT 3.1.1和3.1版).
* Azure ServiceBus -天蓝色 ServiceBus 生产者和使用者(完全异步,不使用Microsoft Azure SDK).
* AMQP 1.0 - Kafka bridge -使用AMQP 1.0协议向Apache Kafka发送消息/从Apache Kafka接收消息的桥.
* Vert.x Kafka Client
-Apache Kafka客户端,用于从Apache Kafka集群读取消息或向Apache Kafka集群发送消息.
* The White Rabbit -基于Kotlin协程的异步RabbitMQ(AMQP)客户端.
* WAMP Broker -您可以嵌入到Vert.x应用程序中的WAMP代理.
- JavaEE
- JCA adaptor
-用于Vert.x事件总线的Java连接器体系结构适配器.
- Weld -将CDI编程模型引入Vert.x生态系统(将CDI观察者方法注册为Vert.x消息使用者,CDI支持的Verticles,以声明的方式定义路由等).
*流星 * Meteor -通过Vert.x事件总线的流星集成支持.
*指标
* Hawkular metrics - Hawkular Vert.x Metrics SPI的实现.
* DropWizard metrics -使用DropWizard指标的指标实现.
* Micrometer metrics
-使用千分尺指标的指标实施.
* OpenTsDb Metrics - OpenTsDb Vert.x的指标客户端.
* Bosun Monitoring - Bosun Vert.x的客户端库.
- Netflix-Hystrix
- Hystrix Metrics Stream -通过Vert.x应用程序发出Hystrix仪表板的指标 Hystrix.
*飞镖 * Vert.x Dart SockJS - Dart 整合为 Vert.x SockJS bridge 以及使用dart:js的普通SockJS.
- 推送通知
-
Onesignal -通过以下方式从您的Vert.x应用程序向(移动/网络)应用程序发送推送通知: OneSignal.
-
CNCF CloudEvents
- CloudEvents.io Java SDK -发送和接收 CloudEvents 使用 Vert.x HTTP Transport 用于CloudEvents.
Middleware¶
- Apache Camel - Apache Camel 使用Vert.x事件总线桥接Camel的组件.
- Gateleen -基于Vert.x的中间件库,用于构建高级JSON / REST通信服务器.
- Gravitee.io -OSS API平台,包括基于Vert.x Core / Vert.x Web和其他模块的API网关和OAuth2 / OIDC授权服务器.
- API Framework -基于Vert.x和Glue的微服务框架,消除了独立应用程序和无服务应用程序之间的区别. 所有服务都可以在独立服务器中运行,但是,如果需要,可以将相同的代码库用作无服务器应用程序来运行任何服务.
Language Support¶
对Vert.x的编程语言支持
- Python -Python支持.
- EcmaScript -EcmaScript> = 6(JavaScript)支持.
- Php -PHP支持.
语言扩展
- Grooveex -语法糖+实用程序(DSL构建器等)之上 vertx-lang-groovy.
Reactive¶
- vertx-util -轻质的承诺和闩锁Vert.x.
- QBit -异步类型的类似于actor的库,可以在Vert.x异步回调中轻松运行. 回调管理.
- VxRifa -Vert.X的实用程序库,该库允许在通过EventBus进行通信时使用强类型接口.
- Vert.x Effect -基于IO Monad的纯功能和反应式库,可实现任何复杂的流程. 全面支持重试,后备和恢复操作.
Sync Thread Non Block¶
- Sync -同步但非OS线程阻塞的顶点.
Vert.x Event Bus Clients¶
将应用程序连接到Vert.x事件总线的客户端
- C++11 -C ++ 11事件总线客户端.
- Java -vertxbus.js的Java实现.
- Java -Java和Android事件总线客户端.
- Java -使用纯TCP套接字I / O的简单Java Event Bus Client.
- CLI -Vert.x事件总线的命令行二进制客户端-JSON管道,发出JSON.
- Swift -的事件总线客户端 Apple's Swift 使用 TCP-based protocol.
- Python -使用Python的事件总线客户端 TCP-based protocol.
- C# - Event bus client for C# using the TCP-based protocol.
- C -使用 TCP-based protocol.
- Go-Go语言的事件总线客户端,使用 TCP-based protocol.
- Smalltalk-的事件总线客户端 Pharo Smalltalk 使用 TCP-based protocol.
- Java -通过Java代码在JavaScript中支持事件总线.
- Elixir -使用TCP套接字的Elixir应用程序的事件总线支持.
- Rust -通过TCP的Rust应用程序的事件总线客户端.
Cluster Managers¶
-
Vert.x集群管理器SPI的实现*
-
JGroups Cluster Manager -JGroups集群管理器.
- Atomix Cluster Manager - 一个 Atomix 基于Vert.x 3的群集管理器实现.
- Consul Cluster Manager -领事群集管理器.
Cloud Support¶
Docker¶
Microservices¶
- Vert.x GraphQL Service Discovery - GraphQL 服务发现和查询您的Vert.x微服务.
- Resilience4j -Resilience4j是为Java8和功能编程设计的容错库. Resilience4j提供用于断路,速率限制,隔离,自动重试,响应缓存和度量标准测量的模块.
- Autonomous Services -用于创建自主服务的工具包. 利用vert.x和nannoq工具的体系结构可提供基于事件的反应式体系结构,而无需用于通信或数据的集中式组件,从而在整个体系结构上提供了理论上的线性可伸缩性.
- Apache ServiceComb Java Chassis -ServiceComb Java Chassis是一个软件开发套件(SDK),用于在Java中快速开发微服务,提供服务注册,服务发现,动态路由和服务管理功能.
Search Engines¶
- Vert.x Elasticsearch Service -绿色x 3 Elasticsearch 事件总线代理的服务.
- Vert.x Elasticsearch Service (redesign) -绿色x 3 Elasticsearch 事件总线代理的服务. 重新设计 Vert.x Elasticsearch Service . 通过事件总线大量使用DTO,而不再使用JsonObjects. 添加了对ES插件的支持.
- Vert.x Solr Service -具有事件总线代理的Vert.x 3 Solr服务.
Template Engines¶
- KorTE Template Engine -与Twig / Django / Liquid类似的Kotlin模板引擎,支持调用Kotlin暂停方法.
Service Factory¶
- Node.js Service Factory -Vert.x Node.js服务工厂.
- Eclipse SISU Service Factories -与Vert.x集成 Eclipse SISU DI容器为“ vertx-service-factory”和“ vertx-maven-service-factory”提供替代方案.
Config¶
- Vert.x Config AWS SSM Store - 一种 config store 用于从中检索配置值的实现 AWS EC2 SSM Parameter Store.
- Vert.x Boot -从HOCON配置中部署垂直.
Dependency Injection¶
- Vert.x Guice -用于Guice依赖项注入的Vert.x顶点工厂.
- Vert.x HK2 -Vert.x垂直工厂用于HK2依赖项注入.
- Spring Vert.x Extension -Vert.x垂直工厂用于弹簧DI注入.
- Vert.x Beans -将Vert.x对象作为bean注入到Spring应用程序中.
- QBit -QBit可用于Spring DI和Spring Boot(当然还有Vert.x). 允许您在同一应用程序中使用QBit,Vert.x,Spring DI和Spring Boot.
- Vert.x Eclipse SISU -与Vert.x集成 Eclipse SISU DI container.
- Vert.x Spring Verticle Factory - A Vert.x Verticle Factory that makes use of Spring to obtain and configure Verticles.
- Glue -久经考验的编程和基于Java和Vert.x的应用程序的配置模型. 受到ATG Nucleus的启发,它使用简单的属性文件提供了强大的基于层的配置管理.
Testing¶
- Vert.x WireMongo -Vert.x的轻量级MongoDB模拟
Development Tools¶
- Vert.x health check -允许在Vert.x项目中进行远程运行状况检查.
- Vert.x Hot -一个用于Maven Vert.x项目热部署的Maven插件.
- slush-vertx -模板驱动的Vert.x项目生成器,用于不同的语言和构建工具.
- Vert.x for Visual Studio Code -用于Vert.x的Visual Studio代码(多语言)插件. 也可以从 Marketplace.
- Vert.x Starter -基于浏览器的Vert.x应用程序的项目启动器和项目模板.
- Vert.x LiveReload -用于Vert.x应用程序的简单livereload服务器.
- openapi-generator -OpenAPI Generator可以根据给定的OpenAPI规范(v2,v3)自动生成API客户端库(SDK生成),服务器存根,文档和配置.
Miscellaneous¶
- Vert.x Child Process -从Vert.x生成子进程.
- vertx-redisques -用于Vert.x的高度可扩展的Redis持久队列系统.
- Simple File Server -与OpenStack Swift兼容的分布式对象存储服务器,可以使用Vert.x实现的最少资源来服务和安全地存储数十亿个大小文件.
- Vert.x Boot -从HOCON配置中部署垂直.
- GDH -建立在Vert.x之上的通用Diffie-Hellman密钥交换Java库.
Distribution¶
Examples¶
- Vert.x feeds -使用Vert.x,Gradle,MongoDB,Redis,Handlebars模板,AngularJS,事件总线和SockJS构建的RSS聚合器的示例.
- Vert.x Markdown service -使用方法示例 service-proxy 与摇篮.
- Example using event bus and service proxies to connect vertx and node -带有Wiki描述的分步示例,显示了如何使用事件总线和服务代理连接Vert.x和Node.
- Vert.x Todo-Backend implementation -Todo MVC后端的纯Java 8实现. 使用Vert.x LocalMap进行存储.
- Kotlin Todo-Backend implementation -Tot MVC后端的Kotlin实现.
- Scala Todo-Backend implementation -Todo MVC后端的Scala实现.
- Grooveex Todo-Backend implementation -使用Vert.x + Groovy +一些语法糖+ DSL路由工具的Todo MVC后端实现.
- Vert.x Gradle Starter -Java 8入门应用程序,并带有在Gradle构建系统,配置文件配置和SLF4J中使用Vert.x的示例.
- Vert.x Gentics Mesh Example -有关如何使用Gentics Mesh和车把构建基于模板的Web服务器的示例.
- HTTP/2 showcase -一个简单的演示,展示了当涉及大量延迟时HTTP / 2如何极大地改善用户体验.
- Vert.x Music Store -有关如何使用RxJava构建Vert.x应用程序的示例应用程序.
- Crabzilla -另一个事件来源实验. 一个探索Vert.x的项目,以开发Event Sourcing / CQRS应用程序.
- Vert.x PostgreSQL Starter -使用Vert.x堆栈和PostgreSQL构建整体CRUD RESTful Web服务的入门者.
- Cloud Foundry -示例Vert.x,用于部署到 Cloud Foundry 服务提供者.
- Knative -有关如何使用的示例应用程序 Reactive Extensions Vert.x 和 Knative.
- Starter Single Verticle API -REST API Starter和Project模板准备就绪,可以使用大量管道代码,示例和文档进行部署,从而几乎无需vert.x即可快速开发API,并且不会浪费任何时间.
Deployment¶
- Vert.x Deploy Application -(无缝)部署到基于AWS的Vert.x应用程序集群.
Utilities¶
- Chime -在Vert.x事件总线上工作的时间计划程序,允许使用_cron-style_和_interval_定时器进行计划.
- Vert.x Cron -安排cron规格的事件. 具有事件总线和可观察的版本.
- Vert.x CronUtils -用于vertx调度程序的cron-utils的抽象. 支持Unix,Cron4j和Quartz样式表达式.
- Vert.x Scheduler -基于纯Vert.x内核的轻量级可插入调度程序,无需任何外部库,即可使用_cron-style_和_interval_计时器进行调度,并在同步和异步任务上都具有详细的_monitor_.
- Vert.x POJO config -允许在标准JSON配置和(类型安全的)配置Java bean之间进行映射. 还允许通过JSR 303验证配置bean.
- Vert.x Async -将caolan / async nodejs模块移植到Vert.x框架,该框架为常见的异步模式提供了辅助方法.
- Vert.x JOLT -基于原始bazaarvoice JOLT项目的JSON到JSON转换工具. 有助于将不同的json结构转换为预期的json格式.
- Vert.x Dependent Verticle Deployer -Vert.x顶点,旨在部署顶点及其从属顶点.
- Vert.x Dataloader -适用于Vert.x的Facebook Dataloader的Java端口. 数据层的高效批处理和缓存.
- Vert.x Util -Vert.x实用程序方法的集合.
- Vert.x Web Accesslog -只需在Vert.x Web中使用一个简单的处理程序即可生成访问日志.
- Vert.x GraphQL Utils -路由处理程序和Vert.x兼容的接口,用于处理Vert.x和Vert.x Web中的GraphQL查询.
- Nannoq-Tools -Nannoq-Tools是用于利用Vert.x构建健壮,可扩展和分布式应用程序的工具包,其中包括用于身份验证,集群管理,Firebase Cloud Messaging,DynamoDB,完全通用查询,REST等的模块.
- Contextual logging -与Vert.x事件循环模型一起使用的映射诊断上下文(MDC).
Presentations¶
Community¶
- User Group -讨论与使用 Vert.x相关的所有用户问题.
- Developer Group -Vert.x核心开发人员和贡献者的小组.
- Gitter chat Vert.x相关聊天的常规聊天.
- Issues -Vert.x核心问题跟踪器.
- Wiki -包含有关Vert.x的有用信息.
- Blog -官方的Vert.x博客,其中包含许多教程和其他信息.
- 2017 Events - A list of 2017 Vert.x talks and presentations.
Articles¶
- Going reactive with Eclipse Vert.x and RX Java
- First Steps With Vert.x and Infinispan - Part 2: PUSH API
- First Steps With Vert.x and Infinispan - Part 1: REST API
- Location Transparency With Vert.x
- Reactive Microservices and Service Discovery with Vert.x
- https://dzone.com/articles/vertx-330-development-automation
- Vert.x 3.3.0 Features Enhanced Networking Microservices, Testing and More
- Launching Vert.x Dynamically
- Secure Your Vertx 3 App With Pac4j
- Interview with Tim Fox About Vert.x 3, the Original Reactive, Microservice Toolkit for the JVM
Tutorials¶
Social events / Meetups¶
Front-End¶
- VertxUI -一个纯Java前端工具包,具有描述性的流利的模型视图,POJO流量,虚拟DOM上的JUnit测试或真实DOM上的混合语言等.
Contribute¶
欢迎捐款! 阅读 contribution guidelines 第一的.