| 原作者 | ティム・フォックス |
|---|---|
| 開発者 | Tim Fox、Julien Viet、VMWare、Red Hat、Eclipse Foundation |
| 安定リリース | 4.3.7 / 2022年12月20日[1] |
| リポジトリ |
|
| 書かれた | Java、JavaScript、Apache Groovy、Ruby、Scala、Kotlin |
| オペレーティング·システム | クロスプラットフォーム |
| プラットフォーム | Java仮想マシン |
| タイプ | イベント駆動型 ネットワーク |
| ライセンス | Apache ライセンス バージョン 2.0、Eclipse パブリック ライセンス バージョン 2.0 |
| Webサイト | vertx.io |
Eclipse Vert.xは、 Java仮想マシン上で動作する多言語 イベント駆動型 アプリケーションフレームワークです。 [2] [3]
他のプログラミング言語で書かれた同様の環境には、JavaScriptのNode.js、PythonのTwisted、PerlのPerl Object Environment、Cのlibevent 、 PHPの reactPHP と amphp 、RubyのEventMachineなどがあります。
歴史
Vert.x は、 VMwareに勤務していた Tim Fox 氏によって 2011 年に設立されました。
フォックスは当初、このプロジェクトを「Node.x」と名付けた。これはNode.jsの名称をもじったもので、「x」は新しいプロジェクトが本質的に多言語であり、単にJavaScriptをサポートするだけではないということを示している。その後、このプロジェクトは「Node」がJoyent Inc.の商標であったため、潜在的な法的問題を回避するために「Vert.x」に改名された。 [4]この新しい名前は、頂点が数学におけるノードの同義語であることから、ノードという名前をもじったものでもある。
2012年12月、VMwareはティム・フォックスが退職した後、Vert.xの商標、ドメイン名、ブログ、GitHubアカウント、Googleグループの管理をVert.xコミュニティから奪うよう法的文書を送付した[5] [6]。
他の関係者との多くの議論を経て、2013年1月にVMwareは、プロジェクトと関連IPを中立的な法人であるEclipse Foundationに移管することがVert.xコミュニティにとって最善であると確信しました。[7]
2013 年 8 月、コア Vert.x プロジェクトは Eclipse Foundation への移行を完了しました。Vert.x スタックを構成するその他のプロジェクトは Eclipse に移行しませんでしたが、Eclipse Foundation の暗黙の承認を得て「Vert.x」商標を引き続き使用しました。
2014年5月、Vert.xはJAXイノベーション賞で「最も革新的なJavaテクノロジー」賞を受賞しました。[8]
2016年1月12日、Tim FoxはVert.xプロジェクトのリーダーを退任しました。[9]そして、長年の貢献者であるJulien Vietが彼の後任となりました。
言語サポート
- バージョン 2.1.4 以降、Vert.x はJava、JavaScript、Groovy、Ruby、Python、Scala、Clojure、Ceylonで API を公開しています。
- バージョン 3.7.0 以降、Vert.x は Java、JavaScript、Groovy、Ruby、Scala、Kotlin、Ceylon で API を公開しています。
- バージョン 3.9.1 以降、Vert.x は Java、JavaScript、Groovy、Ruby、Scala、Kotlin で API を公開しています。
- バージョン 4.0.0 以降、Vert.x は Java、Groovy、Kotlin で API を公開します。
建築
Vert.xは低レベルIOライブラリNettyを使用します。[10]
アプリケーション フレームワークには次の機能が含まれています。
- 多言語。アプリケーション コンポーネントは、Java、JavaScript、Groovy、Ruby、Scala、Kotlin、Ceylon で記述できます。
- シンプルな並行性モデル。すべてのコードはシングルスレッドなので、マルチスレッド プログラミングの煩わしさから解放されます。
- 真にスケーラブルな非ブロッキング アプリケーションを作成するためのシンプルな非同期プログラミング モデル。
- クライアント側とサーバー側にまたがる分散イベント バス。イベント バスはブラウザー内の JavaScript にも浸透し、いわゆるリアルタイム Web アプリケーションの作成を可能にします。
- コンポーネントを再利用および共有するためのアクター モデルとパブリック リポジトリ。
例
「Hello from Vert.x!」を提供する Web サーバーは、Java で記述できます。
io.vertx.core.AbstractVerticleをインポートします。
パブリッククラスServer はAbstractVerticleを拡張します{ public void start () { vertx . createHttpServer () . requestHandler ( req -> { req . response () . putHeader ( "content-type" , "text/plain" ) . end ( "Hello from Vert.x!" ); }). listen ( 8080 ); } }
JavaScriptでは次のようになります:
vertx.createHttpServer () . requestHandler ( function ( req ) { req.response ( ) . putHeader ( "content-type" , " text/plain" ) . end ( " Hello from Vert.x!" ); }). listen ( 8080 ) ;
どちらの場合も、Web サーバーは高度にスケーラブルな方法でコンテンツを提供することになります。
参考文献
- ^ 「Eclipse Vert.x 4.3.7」。GitHub 。 2021年12月13日閲覧。
- ^ 待ってください、vert.x – Node.js の JVM ポリグロット代替、Dio Synodinos 著、2012 年 5 月 4 日、infoq
- ^ Vert.x – 非同期のイベント駆動型 Java Web フレームワーク、Eberhard Wolff 著、2012 年 6 月 20 日、hDeveloper
- ^ 「名前の変更」。
- ^ 「VMware と Vert.x の創設者との取引は警告となるはずだ。」
- ^ 「Vert.x をコントロールしているのは誰か: Red Hat、VMware、それともどちらでもないのか?」
- ^ 「Vert.x が Eclipse Foundation に参加」
- ^ 「Vert.x が JAX イノベーション賞を受賞」
- ^ 「Google グループへのリダイレクト」。
- ^ vert.x – Node.js の JVM ポリグロット代替、Dio Synodinos 著、2012 年 5 月 4 日、InfoQ
外部リンク
- 公式サイト
