MySQLPool используется в Vert.x (Kotlin) - PullRequest
0 голосов
/ 03 марта 2020

В настоящее время я работаю над сборкой проекта на основе Vert.x (Kotlin), и мне нужно подключиться к MySQL серверу. Vert.x предоставляет это как решение для соединения MySQL - https://vertx.io/docs/vertx-mysql-client/kotlin

Я заметил, что есть два подхода для реализации этого.

// Connect options
var connectOptions = MySQLConnectOptions(
  port = 3306,
  host = "the-host",
  database = "the-db",
  user = "user",
  password = "secret")

// Pool options
var poolOptions = PoolOptions(
  maxSize = 5)

// Create the pooled client
var client = MySQLPool.pool(connectOptions, poolOptions)

И в дозе

// Connect options
var connectOptions = MySQLConnectOptions(
  port = 3306,
  host = "the-host",
  database = "the-db",
  user = "user",
  password = "secret")

 // Pool options
 var poolOptions = PoolOptions(
     maxSize = 5)
 // Create the pooled client
 var client = MySQLPool.pool(vertx, connectOptions, poolOptions)

Vert.x не упоминается, что при какой ситуации мы должны проходить через vertx, кто-нибудь знает об этом? когда нам следует использовать вторую реализацию?

1 Ответ

1 голос
/ 03 марта 2020

Вам следует использовать вторую реализацию, если вы создаете клиент MySQL в потоке, отличном от Vert.x (например, из вертикали).

Первая реализация будет использовать привязанный экземпляр Vert.x в текущий поток Vert.x (или потерпеть неудачу, если это не поток Vert.x)

...