ΠΡΠΎΠ΅ΠΊΡΡΡ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΠ±ΠΈΡΠΈΡ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Storm ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΡΠΎΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅, ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° Π·Π°Π΄Π°ΡΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ, Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° RPC, ETL ΠΈ Π΄Ρ. Π‘ΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΊΠ»ΡΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΡ, ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Π½ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈ ΠΈΠΌΠ° Π²ΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ, Π΄ΠΎΡΡΠ°ΡΡΡΠ½Π° Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ ΠΌΠΈΠ»ΠΈΠΎΠ½ Π·Π°ΡΠ²ΠΊΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π° Π½Π° Π΅Π΄ΠΈΠ½ ΠΊΠ»ΡΡΡΠ΅ΡΠ΅Π½ Π²ΡΠ·Π΅Π».
ΠΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΎΠΏΠ°ΡΠΊΠΈ ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ. ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Storm Π²ΠΊΠ»ΡΡΠ²Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π½Π΅ΡΡΡΡΠΊΡΡΡΠΈΡΠ°Π½ΠΈ, ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΠΎΡΠΎΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ, ΠΊΠ°ΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΅ΡΠ°ΠΏΠΈ Π½Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ. ΠΡΠΎΠ΅ΠΊΡΡΡ Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π΄Π°Π΄Π΅Π½ Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ° Π½Π° Apache, ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ Twitter ΠΏΡΠΈΠ΄ΠΎΠ±ΠΈ BackType, ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡΠ°, ΠΊΠΎΡΡΠΎ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΈ ΡΠ°ΠΌΠΊΠ°ΡΠ°. ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Storm Π±Π΅ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π² BackType Π·Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΡΠ°Π·ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ±ΠΈΡΠΈΡ Π² ΠΌΠΈΠΊΡΠΎΠ±Π»ΠΎΠ³ΠΎΠ²Π΅, ΡΡΠ΅Π· ΡΡΠ°Π²Π½ΡΠ²Π°Π½Π΅ Π² Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π½ΠΎΠ²ΠΈ ΡΡΠΈΡΠΎΠ²Π΅ ΠΈ Π²ΡΡΠ·ΠΊΠΈΡΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² ΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π±Π΅ΡΠ΅ ΠΎΡΠ΅Π½Π΅Π½ΠΎ ΠΊΠ°ΠΊ Π²ΡΠ½ΡΠ½ΠΈΡΠ΅ Π²ΡΡΠ·ΠΊΠΈ ΠΈΠ»ΠΈ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΈ Π² Twitter, ΡΠ΅ ΠΏΡΠ΅ΠΈΠ·Π»ΡΡΠ²Π°Ρ ΠΎΡ Π΄ΡΡΠ³ΠΈ ΡΡΠ°ΡΡΠ½ΠΈΡΠΈ ).
Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π½Π° Storm ΡΠ΅ ΡΡΠ°Π²Π½ΡΠ²Π° Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Hadoop, ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° Π΅, ΡΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅ Π½Π΅ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π² ΡΠΊΠ»Π°Π΄, Π° ΡΠ΅ ΠΏΠΎΠ³Π»ΡΡΠ°Ρ ΠΎΡΠ²ΡΠ½ ΠΈ ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°Ρ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅. Storm Π½ΡΠΌΠ° Π²Π³ΡΠ°Π΄Π΅Π½ ΡΠ»ΠΎΠΉ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ Π°Π½Π°Π»ΠΈΡΠΈΡΠ½Π°ΡΠ° Π·Π°ΡΠ²ΠΊΠ° Π·Π°ΠΏΠΎΡΠ²Π° Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° ΠΊΡΠΌ Π²Ρ ΠΎΠ΄ΡΡΠΈ Π΄Π°Π½Π½ΠΈ, Π΄ΠΎΠΊΠ°ΡΠΎ Π½Π΅ Π±ΡΠ΄Π΅ ΠΎΡΠΌΠ΅Π½Π΅Π½Π° (Π΄ΠΎΠΊΠ°ΡΠΎ Hadoop ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π°Π΄Π°Π½ΠΈΡ MapReduce Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅, Storm ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ΄Π΅ΡΡΠ° Π·Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΡΠΈ ΡΠ΅ βΡΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΠΈβ). ΠΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΡΡΠ²ΡΡΠ° - Storm Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΠ°ΡΠ°Π»Π΅Π»ΠΈΠ·ΠΈΡΠ° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ Π½ΠΈΡΠΊΠΈ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠ»ΡΡΡΠ΅ΡΠ½ΠΈ Π²ΡΠ·Π»ΠΈ.
Π‘ΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° Clojure ΠΈ ΡΠ°Π±ΠΎΡΠΈ Π²ΡΠ² Π²ΠΈΡΡΡΠ°Π»Π½Π°ΡΠ° JVM ΠΌΠ°ΡΠΈΠ½Π°. Π€ΠΎΠ½Π΄Π°ΡΠΈΡΡΠ° Apache ΡΡΠ°ΡΡΠΈΡΠ° ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΈΠ²Π° Π·Π° ΠΌΠΈΠ³ΡΠΈΡΠ°Π½Π΅ Π½Π° Storm ΠΊΡΠΌ Π½ΠΎΠ²ΠΎ ΡΠ΄ΡΠΎ, Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π½Π° Java, ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΡ ΠΊΠΎΠ΅ΡΠΎ ΡΠ° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈ Π² ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ Π½Π° Apache Storm 2.0. ΠΡΠΈΡΠΊΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° ΡΠ° ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π½Π° Java. ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° ΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ Π² Clojure Π΅ Π·Π°ΠΏΠ°Π·Π΅Π½Π°, Π½ΠΎ ΡΠ΅Π³Π° ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ. Storm 2.0.0 ΠΈΠ·ΠΈΡΠΊΠ²Π° Java 8. ΠΠΎΠ΄Π΅Π»ΡΡ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠ½ΠΈΡΠΊΠΎΠ²Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠ΅Π½, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΠΉΠΊΠΈ
ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ ΡΡΡΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π½ΠΎΠ² Π²ΡΠ²Π΅Π΄Π΅Π½ API Streams, ΠΊΠΎΠΉΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°ΡΠ΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π² ΡΡΠΈΠ»Π° Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅. ΠΠΎΠ²ΠΈΡΡ API Π΅ Π²Π½Π΅Π΄ΡΠ΅Π½ Π²ΡΡΡ Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡ Π±Π°Π·ΠΎΠ² API ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΎΠ±Π΅Π΄ΠΈΠ½ΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡ Π½Π°ΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°. Windowing API Π·Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ ΠΈ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ Π² Π±Π΅ΠΊΠ΅Π½Π΄Π°.
ΠΠΎΠ΄ΠΊΡΠ΅ΠΏΠ° Π·Π° ΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅ΡΡΡΡΠΈ ΠΏΡΠΈ Π²Π·Π΅ΠΌΠ°Π½Π΅ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΡ, Π½ΠΎ Π½Π΅ ΡΠ°ΠΌΠΎ
CPU ΠΈ ΠΏΠ°ΠΌΠ΅Ρ, ΠΊΠ°ΡΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΈ Π³ΡΠ°ΡΠΈΡΠ½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ. ΠΠ°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΡΠ° Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π·Π° Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ°
ΠΠ±Π»Π°ΡΡΠΈ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Storm:
- ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠΎΡΠΎΡΠΈ ΠΎΡ Π½ΠΎΠ²ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅;
- ΠΠ΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΎ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅: Storm ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΈ Π·Π°ΡΠ²ΠΊΠΈ ΠΈ Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΈ ΠΏΠΎΡΠΎΡΠΈ, Π΄ΠΎΡΡΠ°Π²ΡΠΉΠΊΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ ΠΎΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅.
- Π Π°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½Π° ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° (RPC): Storm ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°ΡΠΈ ΡΠ΅ΡΡΡΡΠΈ Π·Π°ΡΠ²ΠΊΠΈ. ΠΠ°Π΄Π°Π½ΠΈΠ΅ (βΡΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΡβ) Π² Storm Π΅ ΡΡΠ½ΠΊΡΠΈΡ, ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ·Π»ΠΈ, ΠΊΠΎΡΡΠΎ ΡΠ°ΠΊΠ° Π΄Π° ΠΏΡΠΈΡΡΠΈΠ³Π½Π°Ρ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΈ. Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ ΠΏΠΎΠ»ΡΡΠΈ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΡΠ½ΠΊΡΠΈΡΡΠ° Π³ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° Π² Π»ΠΎΠΊΠ°Π»Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΠΈ Π²ΡΡΡΠ° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ°. ΠΡΠΈΠΌΠ΅Ρ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ RPC Π±ΠΈ Π±ΠΈΠ» Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ Π·Π° ΡΡΡΡΠ΅Π½Π΅ ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΈΠ»ΠΈ Π΄Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΡΡΡ Ρ Π³ΠΎΠ»ΡΠΌ Π½Π°Π±ΠΎΡ ΠΎΡ Π½Π°Π±ΠΎΡΠΈ.
Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π½Π° Storm:
- ΠΠΏΡΠΎΡΡΠ΅Π½ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅Π½ ΠΌΠΎΠ΄Π΅Π», ΠΊΠΎΠΉΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΎΠΏΡΠΎΡΡΡΠ²Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅;
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ Π΅Π·ΠΈΡΠΈ Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅. ΠΠ°Π»ΠΈΡΠ½ΠΈ ΡΠ° ΠΌΠΎΠ΄ΡΠ»ΠΈ Π·Π° Java, Ruby ΠΈ Python, Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½Π΅ΡΠΎ Π·Π° Π΄ΡΡΠ³ΠΈ Π΅Π·ΠΈΡΠΈ Π΅ Π»Π΅ΡΠ½ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡ ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π΅Π½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ», ΠΊΠΎΠΉΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΎΠΊΠΎΠ»ΠΎ 100 ΡΠ΅Π΄Π° ΠΊΠΎΠ΄ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°;
- Π£ΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ: Π·Π° Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅ Π·Π°Π΄Π°ΡΠ° Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ, ΡΡΡΠ±Π²Π° Π΄Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ jar ΡΠ°ΠΉΠ» Ρ ΠΊΠΎΠ΄. Storm Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΠΈ ΡΠΎΠ·ΠΈ jar ΡΠ°ΠΉΠ» Π² ΠΊΠ»ΡΡΡΠ΅ΡΠ½ΠΈΡΠ΅ Π²ΡΠ·Π»ΠΈ, ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ ΡΠ²ΡΡΠ·Π°Π½ΠΈΡΠ΅ Ρ Π½Π΅Π³ΠΎ ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ ΠΈ ΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅. ΠΠΎΠ³Π°ΡΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅ΡΠΎ ΠΏΡΠΈΠΊΠ»ΡΡΠΈ, ΠΊΠΎΠ΄ΡΡ ΡΠ΅ Π±ΡΠ΄Π΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π²ΡΠ·Π»ΠΈ;
- Π₯ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»Π½Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡ. ΠΡΠΈΡΠΊΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ Π² ΠΏΠ°ΡΠ°Π»Π΅Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ; Ρ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π΄Π° ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ Π½ΠΎΠ²ΠΈ Π²ΡΠ·Π»ΠΈ ΠΊΡΠΌ ΠΊΠ»ΡΡΡΠ΅ΡΠ°;
- ΠΠ°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡ. Storm Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ Π²ΡΡΠΊΠΎ Π²Ρ ΠΎΠ΄ΡΡΠΎ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΠΎΠ½Π΅ Π²Π΅Π΄Π½ΡΠΆ. Π‘ΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΎ ΡΠ°ΠΌΠΎ Π²Π΅Π΄Π½ΡΠΆ, Π°ΠΊΠΎ Π½ΡΠΌΠ° Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ ΠΏΡΠ΅Π· Π²ΡΠΈΡΠΊΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ; Π°ΠΊΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, Π½Π΅ΡΡΠΏΠ΅ΡΠ½ΠΈΡΠ΅ ΠΎΠΏΠΈΡΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈ.
- Π‘ΠΊΠΎΡΠΎΡΡ. ΠΠΎΠ΄ΡΡ Π½Π° Storm Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Ρ ΠΌΠΈΡΡΠ» Π·Π° Π²ΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° Π±ΡΡΠ·ΠΈ Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΠΈ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ
ZeroMQ .
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru