私はVert.xを初めて使いました。私は、BoneCPを使ってデータベースクエリを作成するワーカーバーチクルのプールを実装したいと思います。しかし、私は彼らの仕事を呼び出す方法と、それらの間でBoneCP接続プールを共有する方法について少し混乱しています。jdbcのVertxワーカーバーチクルプール
Vertx DeploymentManager sourceでは、start(Future)
メソッドが同期的に呼び出され、その後、展開されない限り、verticleはメモリ内に保持されることがわかりました。 start
メソッドが完了したら、作業者の頂点でメソッドを呼び出す正しい方法は何ですか? (DeploymentOptions.setInstances()
を使用して)頂点のインスタンスを多数配置すると、Vertxはそれらの間で負荷分散を行いますか?
Vert.xにはJDBCクライアントとワーカープールが付属していますが、EventBusを使用し、データベースから返されたすべてのデータをシリアル化するため、使用できるデータ型が限られています。私は多くの異なるデータ型(日付、BigDecimals、バイナリオブジェクトを含む)を扱う必要があります。できるだけシリアライゼーションを避けたいのではなく、ワーカーの頂点でクエリを実行し、結果を処理し、FutureまたはAsyncResult (私はこれがヒープ上で行われると信じているので、シリアル化は必要ありません;これは正しいですか?)
これらすべての質問を整理するのを手伝ってください:)あなたが私にこの作品を作る方法の例を教えていただければ、私は多くを感謝します!
ありがとうございます!
感謝。リクエストを処理するためにイベントバスにリスナーを持つ私のverticleをセットアップしますが、それらの間でjdbc接続プールを共有する方法についてはまだ研究しなければなりません。私はVert.xでこれを実装してフレームワークを学び、より少ないリソースで多くのリクエストを処理するための非同期I/Oを利用したいと思っていました:) – rober710