SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Javaプログラマーのための実践「Vert.x」

モダンアプリケーションのための軽量・高性能プラットフォーム「Vert.x」の概要と導入手順

Javaプログラマーのための実践「Vert.x」 第1回

  • X ポスト
  • このエントリーをはてなブックマークに追加


 DMM.comVert.x JVMNode.jsDMMVert.x使Vert.x使HTTPJDBC
  • X ポスト
  • このエントリーをはてなブックマークに追加

対象読者


 JavaStrutsServletMVC

 Node.jsJavaVert.x

 2.1.5

Vert.x


 Vert.x201251.020132.03.0

 


(一) 2.1.5  

(二) tar.gzzipwgetcurl  

(三) WindowsC:\tools\vert.x-2.1.5VERTX_HOME  

(四) PATH${VERTX_HOME}/binvertx  

Vert.x


 Vert.x
特徴 説明
Polyglot 多言語対応と訳せばよいでしょうか。
Vert.xのアーキテクチャは独立した各モジュールがイベントバスを経由してメッセージを送りあう形で処理を行います。
このモジュールを作成するのにJavaである必要はありません。JVM上で動く言語であればほとんどのプログラミング言語で開発が可能となっています。
現在、Java以外にサポートされている言語として、JavaScript、CoffeeScript、Ruby(JRuby)、Python(Jython)、Scala、Groovy、Clojure、PHP(Quercus)、Ceylonなどがあります。
Simplicity nettyをベースにしたノンブロッキングI/O対応のアプリケーションが、複雑な記述をせずによりシンプルに作成できます。
Scalability NettyのノンブロッキングI/Oを使用しているため、大量の接続を最小限のスレッド数で処理できます。
メッセージを仲介するEventBusは内部でHazelcastの機能を利用して分散EventBusとすることができ、Clusterによる冗長構成(負荷分散)が可能になっています。
Concurrency 同時並行性。
各モジュールはシングルスレッドで動作し、モジュール間はメッセージパッシングによるアクターモデルに似たシンプルなプログラミングで作成できます。
シングルスレッドで動作する前提になるため、synchronizedやvolatileも不要になります。

 非常に魅力的な特徴かと思いますが、もちろん何も考えずに作成すればいいわけではなく、一定のルールに従って開発することで実現できます。

開発前の準備

 Vert.xは単なるJavaのライブラリーではなく、独立したプラットフォームとして扱う必要があるため、最初の開発環境作りにはテンプレートプロジェクトを利用するのが簡単です。gitでこのプロジェクトをcloneすれば最初の準備は完了です(名前は適宜変えましょう)。後は任意に使いやすいIDEで取り込んでみましょう。

 Eclipseで取り込んだ場合、下の図のようになります。

 注意事項として、このテンプレートはGradleを使用しているため、使ったことがない方には抵抗があるかもしれません。また、IDEによってGradle用のプラグインがありますので活用してください。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
Gradleの簡単な紹介

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Javaプログラマーのための実践「Vert.x」連載記事一覧

もっと読む

この記事の著者

リョウジ(株式会社DMM.comラボ)(リョウジ)

DMM.comのプラットフォームにおける主要アーキテクチャに関しての技術研究開発を担当。 非同期のメッセージ&キューの導入、Vert.xフレームワークを採用し社内の基盤を整備等、 高負荷対策・可用性の高いアーキテクチャの開発・設計など幅広く活躍。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)

https://codezine.jp/article/detail/8353 2015/01/16 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング