我正在尝试决定部署 Verticles 时应该遵循哪条路径。我得出的结论是,我应该将 Vert.x 视为我的运行时环境,而不是自己创建自己的 Vertx 实例并开始从 main 方法部署我的应用程序。不过,我更喜欢在每个应用程序中都有一个 main 方法,这让我可以更好地控制我的服务,进行服务发现和其他操作。
我在 Vertx
中找不到讨论这一点的文档。或优点和缺点。有人可以帮我吗?
外壳启动:
cd /verticles # the location of the verticle jar
vertx run io.vertx.sample.RandomGeneratorVerticle
-cp /verticles/MY_VERTICLE.jar
主要方法:
public static void main(String[] args) {
Vertx vertx = Vertx.vertx();
vertx.deployVerticle(
new DatabaseVerticle(),
new DeploymentOptions().setConfig(conf)
)
}
最佳答案
还有另一种选择:使用 Vert.x Launcher
类作为应用程序入口点。
如果您使用 Java/Kotlin/Groovy 进行开发,它具有 CLI 的优势(您可以获得 -cluster
、-instances
、 等选项的支持>-conf
),但您不必到处下载/安装它。
如果您使用 JS/Ruby 进行开发,那么使用 Vert.x 3 CLI 很有意义。
在 Vert.x 4 中,不再生成 JS 和 Ruby 绑定(bind),因此尽管仍受支持,但使用 CLI 的意义不大。
从长远来看(Vert.x 5 之后,所以不是明天!)CLI 可能不受支持。
关于java - Vert.x 启动应用程序的最佳方式(Vert.x 命令行与 Main 方法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66666104/