/ / Ruby concurrency, Revactor vs Process Forking - ruby, concurrency, вилица, актьор

Ruby concurrency, Revactor vs Proces Forking - рубин, конкуренция, вилица, актьор

Обмислям два различни метода за въвеждане на паралелност в програма Ruby. В момента раздвижвам процеса и вилиците комуникират чрез базата данни.

Наскоро разбрах за Revactor, койтообработва паралелността чрез Fibers. В миналото съм използвал влакна и съм напълно сигурен, че не можеха да работят паралелно, но те твърдят, че библиотеката позволява това.

О: Ревактор наистина ли е едновременно?

Б: Ако е така, някой има ли фигури или мнения относно последиците за скоростта от преминаване към Revactor от a Process.fork подход?

Отговори:

0 за отговор № 1

Revactor е "единична резба с влакна" (такасамо едно влакно в даден момент). Това е теоретично по-добро от "многопоточната", тъй като тя осигурява едновременност, но изисква само една нишка, така че може да мащабира до много "конци" (влакна).