Налична Π΅ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° изчислитСлна систСма Apache Storm 2.0

видях свСтлината Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° систСма Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ Apache Storm 2.0, Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡ‚Π΅Π»Π΅Π½ с ΠΏΡ€Π΅Ρ…ΠΎΠ΄Π° си към Π½ΠΎΠ²Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°, Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π² Java, вмСсто използвания ΠΏΡ€Π΅Π΄ΠΈ Ρ‚ΠΎΠ²Π° Π΅Π·ΠΈΠΊ Clojure.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ Π²ΠΈ позволява Π΄Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΡΡŠΠ±ΠΈΡ‚ΠΈΡ Π² Ρ€Π΅Π°Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅. НапримСр, 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. ΠœΠΎΠ΄Π΅Π»ΡŠΡ‚ Π½Π° многонишкова ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΅ напълно ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚Π΅Π½, позволявайки Π΄Π° постигнС Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° производитСлността (Π·Π° някои Ρ‚ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΠΈ забавянията бяха Π½Π°ΠΌΠ°Π»Π΅Π½ΠΈ с 50-80%).

Налична Π΅ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° изчислитСлна систСма Apache Storm 2.0

Новата вСрсия ΡΡŠΡ‰ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Π½ΠΎΠ² въвСдСн API Streams, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ позволява Π΄Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Ρ‚Π΅ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ‚ΠΎΡ€ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² стила Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅. Новият API Π΅ Π²Π½Π΅Π΄Ρ€Π΅Π½ Π²ΡŠΡ€Ρ…Ρƒ стандартния Π±Π°Π·ΠΎΠ² API ΠΈ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ обСдиняванС Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° тяхната ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. Windowing API Π·Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΏΡ€ΠΎΠ·ΠΎΡ€Ρ†ΠΈ Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ ΠΈ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π² Π±Π΅ΠΊΠ΅Π½Π΄Π°.

ΠŸΠΎΠ΄ΠΊΡ€Π΅ΠΏΠ° Π·Π° ΠΎΡ‚Ρ‡ΠΈΡ‚Π°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ рСсурси ΠΏΡ€ΠΈ Π²Π·Π΅ΠΌΠ°Π½Π΅ Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Π½ΠΎ Π½Π΅ само
CPU ΠΈ ΠΏΠ°ΠΌΠ΅Ρ‚, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ ΠΈ Π³Ρ€Π°Ρ„ΠΈΡ‡Π½ΠΈ настройки. НаправСни са голям Π±Ρ€ΠΎΠΉ подобрСния, Π·Π° Π΄Π° сС осигури интСграция с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΠšΠ°Ρ„ΠΊΠ°. БистСмата Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ° Π΅ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½Π°, Π·Π° Π΄Π° Π²ΠΊΠ»ΡŽΡ‡Π²Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° създаванС Π½Π° администраторски Π³Ρ€ΡƒΠΏΠΈ ΠΈ Π΄Π΅Π»Π΅Π³ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ‚ΠΎΠΊΠ΅Π½ΠΈ. Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са подобрСния, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° SQL ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Π’ администраторския интСрфСйс сС появиха Π½ΠΎΠ²ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π·Π° отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π² ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°.

ΠžΠ±Π»Π°ΡΡ‚ΠΈ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Storm:

  • ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΏΠΎΡ‚ΠΎΡ†ΠΈ ΠΎΡ‚ Π½ΠΎΠ²ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² Ρ€Π΅Π°Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅;
  • ΠΠ΅ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΎ изчислСниС: Storm ΠΌΠΎΠΆΠ΅ Π΄Π° изпълнява Π½Π΅ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΈ заявки ΠΈ Π΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° Π½Π΅ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΈ ΠΏΠΎΡ‚ΠΎΡ†ΠΈ, доставяйки Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ ΠΎΡ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π² Ρ€Π΅Π°Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅.
  • Π Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΠΎΡ‚Π΄Π°Π»Π΅Ρ‡Π΅Π½Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° (RPC): Storm ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° осигуряванС Π½Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ изпълнСниС Π½Π° изискващи рСсурси заявки. Π—Π°Π΄Π°Π½ΠΈΠ΅ (β€žΡ‚ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΡβ€œ) Π² Storm Π΅ функция, Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° ΠΌΠ΅ΠΆΠ΄Ρƒ възли, която Ρ‡Π°ΠΊΠ° Π΄Π° пристигнат ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, ΠΊΠΎΠΈΡ‚ΠΎ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ. Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅, функцията Π³ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° Π² локалния контСкст ΠΈ Π²Ρ€ΡŠΡ‰Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π°. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ RPC Π±ΠΈ Π±ΠΈΠ» Π΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚Π΅ заявки Π·Π° Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ ΠΈΠ»ΠΈ Π΄Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²ΡŠΡ€Ρ…Ρƒ голям Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π½Π°Π±ΠΎΡ€ΠΈ.

Π₯арактСристики Π½Π° Storm:

  • ΠžΠΏΡ€ΠΎΡΡ‚Π΅Π½ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ ΠΌΠΎΠ΄Π΅Π», ΠΊΠΎΠΉΡ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ опростява ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° Π΄Π°Π½Π½ΠΈ Π² Ρ€Π΅Π°Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅;
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° всякакви Π΅Π·ΠΈΡ†ΠΈ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅. Налични са ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π·Π° Java, Ruby ΠΈ Python, Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈ Π΅Π·ΠΈΡ†ΠΈ Π΅ лСсно Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ прост ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π΅Π½ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», ΠΊΠΎΠΉΡ‚ΠΎ изисква ΠΎΠΊΠΎΠ»ΠΎ 100 Ρ€Π΅Π΄Π° ΠΊΠΎΠ΄ Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°;
  • Устойчивост Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ: Π·Π° Π΄Π° ΠΈΠ·ΠΏΡŠΠ»Π½ΠΈΡ‚Π΅ Π·Π°Π΄Π°Ρ‡Π° Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ, трябва Π΄Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Ρ‚Π΅ jar Ρ„Π°ΠΉΠ» с ΠΊΠΎΠ΄. Storm нСзависимо Ρ‰Π΅ разпространи Ρ‚ΠΎΠ·ΠΈ jar Ρ„Π°ΠΉΠ» Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π½ΠΈΡ‚Π΅ възли, Ρ‰Π΅ ΡΠ²ΡŠΡ€ΠΆΠ΅ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈΡ‚Π΅ с Π½Π΅Π³ΠΎ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ‚ΠΎΡ€ΠΈ ΠΈ Ρ‰Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π° наблюдСниС. ΠšΠΎΠ³Π°Ρ‚ΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈΠΊΠ»ΡŽΡ‡ΠΈ, ΠΊΠΎΠ΄ΡŠΡ‚ Ρ‰Π΅ бъдС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ Π½Π° всички възли;
  • Π₯ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»Π½Π° мащабируСмост. Всички изчислСния сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ Π² ΠΏΠ°Ρ€Π°Π»Π΅Π»Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ; с ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ просто Π΄Π° ΡΠ²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ Π½ΠΎΠ²ΠΈ възли към ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°;
  • НадСТдност. Storm Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°, Ρ‡Π΅ всяко входящо ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ сС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° напълно ΠΏΠΎΠ½Π΅ вСднъТ. Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Ρ‰Π΅ бъдС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΎ само вСднъТ, Π°ΠΊΠΎ няма Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ ΠΏΡ€Π΅Π· всички ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ‚ΠΎΡ€ΠΈ; Π°ΠΊΠΎ Π²ΡŠΠ·Π½ΠΈΠΊΠ½Π°Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, Π½Π΅ΡƒΡΠΏΠ΅ΡˆΠ½ΠΈΡ‚Π΅ ΠΎΠΏΠΈΡ‚ΠΈ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈ.
  • Бкорост. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° Storm Π΅ написан с мисъл Π·Π° висока производитСлност ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° систСмата Π·Π° Π±ΡŠΡ€Π·ΠΈ асинхронни ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ZeroMQ.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€