Vert.x的核心是一系列的JavaAPI,称之为Vert.x Core
Vert.x Core提供丰富的功能,诸如:
- 编写TCP Clients和Servers
- 编写HTTP Clients和Servers,包括支持WebSockets
- Event bus
- 共享缓存数据 - 本地Maps和集群分布的Maps
- 阶段性和延时性的actions
- 部署和下架Verticles
- Datagram sockets (数据包sockets)
- DNS clients
- 操作文件系统
- 高可用
- 集群管理
Core包中的内容基本上都是原子级别的,相反的如果想要一些高级的功能封装,比如连接数据库,web授权等,可以参考Vert.x ext(extensions)。
Vert.x core很小并且也很轻量级,所以使用时按需所取。它可以很好地融合进现有的程序而不用担心兼容问题,并且Vert.x也不强迫编程人员严格遵守Vert.x的编程风格,完全可以按照自己的想法和理解来。
Core包可以在任支持的语言中引入使用,并且更加NB的是,Java并不是唯一的出路;也许你不是很熟徐Java但是你是JS或者Ruby亦或者其他语言的大神,只要根据需要引用Core包,Vert.x会自动的帮助你建立一个符合你使用语言习惯的,和JavaAPIs相同的APIs,并且效果和功能是相同的。
下文中,Core将会代指Vert.x Core。
如果你使用Maven或者Gradle来管理你的项目,引入以下依赖便可以直接从代码仓库中拉取到Core的依赖。
- Maven引用(pom.xml):
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-core</artifactId>
<version>3.4.1</version>
</dependency>
- Gradle引用(build.gradle):
compile io.vertx:vertx-core:3.4.1
让我们开始了解Core中包含的各种理念和功能吧!