Po vylodení s projektom Ruby som bol skeptický voči rozhodnutiu používať Ruby kvôli výkonu.
Bola som nadšená objavovaním JRuby s integráciou Java. To ma urobilo pre mňa značne jednoduchšie. A teraz som sa úplne pohoršil ešte viac, aby som zistil, že JRuby môže byť skompilovaný do Java bytecode .
S referenčnými hodnotami:
fib (30) Ruby: 1,67s
fib (30) JRuby interp (klient VM): 3,93s
fib (30) JRuby interp (server VM): 2,28s až 2,08s
fib (30) JRuby kompilovaný (klient VM): 1,89s až 1,79s
fib (30) JRuby kompilované (server VM): 1,66s až 0,86s
Som teraz veľmi nadšený z našej voľby JRuby tu. Existujú nejaké nevýhody alebo dôvody, prečo by ste nevytvorili produkčné vydanie?
odpovede:
1 pre odpoveď č. 1Distribúcia a inštalácie by to urobilitoto rozhodnutie je pre mňa jednoduchšie: ako sysadmin som radšej distribuoval len súbor .JAR, ktorý môže bežať na mnohých JRE, ako je potrebné distribuovať pracovnú inštanciu JRuby (ktorá sa líši napríklad pre rôzne OS) a môj zdrojový kód. Navyše ste už preukázali, že AOT-kompilovaný kód je rýchlejší ako interpretovaný / JIT, takže ešte viac dôvod na distribúciu kompilovanej verzie.
0 pre odpoveď č. 2
Ruby sa veľmi rýchlo rozvíja (ak ste to oboznámení s jeho štýlom).
Jeho nie je tak rýchlo, aby bežal, ale to zvyčajne nie je veľké mínus. Jeho dosť rýchlo dosť pre väčšinu pracovných zaťažení, a to aj veľké webové stránky.
Rozhodnutie by nemalo byť založené na rýchlosti za behu - ak nemáte štatistické údaje, podľa ktorých sa očakáva, že ľudia budú spokojní s výkonom, ale skôr jednoduché nasadenie.
Ak aplikácie Ruby boli dosiahnuté vašimi predchodcami, potom si ich ponechajte Ruby.
Ak je nasadenie do JVM jednoduchšie, prejdite s tým.