Vert.x-node.jsの影響下で作成された非同期のイベント駆動型フレームワーク。 パート1

みなさんこんにちは!
現在、node.jsを使用するのは非常に流行しています。 しかし、誰もが彼を好きではありません。 このレビューでは、node.jsの影響下で作成された競合他社について少しお話ししたいと思います
Vert.xは非同期のイベント駆動型フレームワークであり、その目標は一般的なnode.jsと交差しています。 高性能、シンプルな非同期性、設定はすべてvert.xにあります。
フレームワークの最初のバージョンは2012年にリリースされ、node.jsは2009年にリリースされました。ただし、VMwareはすでにサポートされており、CloudFoundryで実行できます。
カット下の製品の主な特徴:


面白い? scalaでのhelloworldの残りの例:

class SampleResticle extends Resticle { override def handles = { GET("/hello") :> OK( _ => "world ") } } 


または、webrootディレクトリを提供するより単純なサーバーの例。 Groovyの例:
 vertx.createHttpServer().requestHandler { req -> def file = req.uri == "/" ? "index.html" : req.uri req.response.sendFile "webroot/$file" }.listen(8080) 

たとえば、最後のhelovorldを実行するには、以下を行う必要があります。
 vertx run Server.groovy -instances 32 

ご覧のとおり、すべてが非常にシンプルで明確です。

コードの例を見て、原則を読んだ後、私は当然、スーパーパフォーマンスに関する著者の声明を確認することにし、node.jsとの比較を探しました。
最初のグラフは、200 のみが与えられた場合のテスト結果を示します/ OK応答

2番目のテストは、72バイトのhtmlページを返します。

ここから取ったテスト。 これらのテストは比較的昔に行われました。 より詳細なテスト資料を用意しています。 彼については第3部で説明します。
残念ながら、これらのテストにはscalaテストは含まれていません。 ご存知のように、多くの場合scalaはjavaよりも高速です。
おそらく金曜日の投稿では、これで十分です。 次のパートでは、vert.xで使用される基本的な原理とパターンについて説明します。
プロジェクトウェブサイト 。 リンクは優れたドキュメントです。

Source: https://habr.com/ru/post/J181686/


All Articles