2017-07-20 5 views
3

Vert.xとNettyの違いは何ですか? Vert.xよりNettyを好むべき理由は何ですか?Vert.xとNettyの違いは何ですか?

両方とも、イベント駆動型の高負荷I/O用に設計された非ブロック型および非同期型のフレームワークです。

Vert.xはマルチリアクタパターン(マルチスレッドJVMのノードのスタイルイベントループ)に基づいていますが、Nettyではインターセプタチェーンパターンを使用します。 インターセプターチェーンパターンがマルチリアクターパターンよりも利点がある場合は?

Nettyのドキュメントを簡単に見ていますが、Vert.xはNettyよりもいくつかの機能があります。私。 Vertxはスタンドアロンのサーバであり、多言語であり、HAを提供し、すぐにクラスタリングすることができます。

また、Vert.xはNettyよりも少し良いベンチマークを持っています。

P.S.免責事項 - 私はVert.xに非常に感謝し、Nettyに精通していません。ですから、Why should one ever prefer Netty over Vert.x?に私はそれらの両方を比較しようとしています。

+1

関連する質問には、tech.kinja.com/ http://tech.kinja.com/interview-with-norman-maurer-netty-netty-technology.htmlのnettyとvertxの細かい詳細についての興味深い記事へのリンクがあります。 vert-x-1119968136 ref https://stackoverflow.com/questions/23780059/how-does-vert-x-achieve-superior-performance-compared-to-netty – MikeRoger

答えて

13

違いは、Vertxは Nettyに基づいてです。あなたはvertx-corepom.xmlでのぞき見を取る場合、あなたは見つけることができます:

<!-- We depend on the specific Netty dependencies not netty-all to reduce the size of fatjars --> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-common</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-buffer</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-transport</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-handler</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-handler-proxy</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-codec-http</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-codec-http2</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-resolver</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>io.netty</groupId> 
    <artifactId>netty-resolver-dns</artifactId> 
    <version>${netty.version}</version> 
</dependency> 
<dependency> 
    <groupId>com.fasterxml.jackson.core</groupId> 
    <artifactId>jackson-core</artifactId> 
    <version>${jackson.version}</version> 
</dependency> 

そしてVert.x 3.5.0-SNAPSHOTためネッティーバージョンは次のとおりです。4.1.8.Final

Vert.xは上にプラグイン可能モジュールの全体のツールキットと生態系でありますJVMの上に反応的なアプリケーションを構築するためのNettyの

関連する問題