Ruby on Rails çok iş parçacıklı mı?
Ruby on Rails çok iş parçacıklı mı?

Video: Ruby on Rails çok iş parçacıklı mı?

Video: Ruby on Rails çok iş parçacıklı mı?
Video: Why you Should NOT use Ruby on Rails 2024, Mayıs
Anonim

Phusion Passenger, birkaç isteği aynı anda işlemek için süreç tabanlı eşzamanlılık kullanır, bu nedenle, kesinlikle konuşmak gerekirse, " çok iş parçacıklı , " ama yine de eşzamanlı. yakut MidWest 2011'in almak için bazı iyi düşünceleri var çok iş parçacıklı Ruby on Rails gidiyor.

Bu şekilde, Ruby çoklu iş parçacığını destekliyor mu?

A çok iş parçacıklı programın birden fazla yürütme iş parçacığı var. yakut Thread sınıfı ile çok iş parçacıklı programlar yazmayı kolaylaştırır. yakut iş parçacıkları, kodunuzda eşzamanlılık elde etmenin hafif ve etkili bir yoludur.

İkincisi, Ruby eşzamanlı mı? Özellikle, Ruby eşzamanlılığı iki görevin çakışan zaman dilimlerinde başlayabileceği, çalışabileceği ve tamamlanabileceği zamandır. Yine de, her ikisinin de aynı anda çalışacakları anlamına gelmez (örneğin, tek çekirdekli bir makinede birden çok iş parçacığı).

Aynı şekilde, Ruby tek dişli mi?

Kısa cevap evet, onlar tek dişli . Uzun cevap buna bağlı. JRuby çok iş parçacıklı ve diğer Java kodları gibi Tomcat'te çalıştırılabilir. MRI (varsayılan yakut ) ve Python'un her ikisinin de bir GIL'si (Global Interpreter Lock) vardır ve bu nedenle tek dişli.

Ruby'nin Gil'i var mı?

MR vardır genel yorumlayıcı kilidi adı verilen bir şey ( GIL ). Bu, yürütmenin etrafındaki bir kilit yakut kod. Bu, çok iş parçacıklı bir bağlamda yalnızca bir iş parçacığının yürütülebileceği anlamına gelir. yakut herhangi bir zamanda kod. NS GIL korumak için var yakut verileri bozabilecek yarış koşullarından dahililer.

Önerilen: