Ruby on Rails көп ағынды ма?
Ruby on Rails көп ағынды ма?

Бейне: Ruby on Rails көп ағынды ма?

Бейне: Ruby on Rails көп ағынды ма?
Бейне: Ясен конь тут триллером фонит ► 1 Прохождение SOMA 2024, Мамыр
Anonim

Phusion Passenger бір уақытта бірнеше сұрауларды өңдеу үшін процеске негізделген параллельділікті пайдаланады, сондықтан, қатаң айтқанда, олай емес " көп ағынды , " бірақ әлі де бір мезгілде. Бұл әңгіме Ruby MidWest 2011 алу туралы жақсы ойлар бар көп ағынды Ruby on Rails барады.

Осылайша, Ruby көп ағынды қолдайды ма?

А көп ағынды бағдарламаның бірнеше орындалу ағыны бар. Ruby Thread класымен көп ағынды бағдарламаларды жазуды жеңілдетеді. Ruby ағындар кодыңыздағы параллельділікке қол жеткізудің жеңіл және тиімді әдісі болып табылады.

Екіншіден, Ruby бір мезгілде ме? Соның ішінде, Ruby параллельділігі екі тапсырманың бір-біріне сәйкес келетін уақыт кезеңдерінде басталуы, іске қосылуы және аяқталуы. Бұл олардың екеуі де бір мезетте жұмыс істейтін болады дегенді білдірмейді (мысалы, бір ядролы машинада бірнеше ағындар).

Сол сияқты, Ruby жалғыз бұрандалы ма?

Қысқа жауап - иә, олар жалғыз жіпті . Ұзақ жауап - бұл байланысты. JRuby - бұл көп ағынды және басқа java коды сияқты tomcat бағдарламасында іске қосуға болады. MRI (әдепкі рубин ) және Python екеуінде де GIL (Global Interpreter Lock) бар және солай жалғыз жіпті.

Рубиде Гил бар ма?

МРТ бар ғаламдық аудармашы құлпы деп аталатын нәрсе ( GIL ). Бұл орындалудың айналасындағы құлып Ruby код. Бұл көп ағынды контексте тек бір ағын орындай алатынын білдіреді Ruby кез келген уақытта код. The GIL қорғау үшін бар Ruby деректерді бүлдіруі мүмкін жарыс жағдайларының ішкі бөліктері.

Ұсынылған: