Adakah Ruby on Rails berbilang benang?
Adakah Ruby on Rails berbilang benang?

Video: Adakah Ruby on Rails berbilang benang?

Video: Adakah Ruby on Rails berbilang benang?
Video: Is Ruby on Rails fast? 2024, November
Anonim

Phusion Passenger menggunakan konkurensi berasaskan proses untuk mengendalikan beberapa permintaan secara serentak, jadi, secara tegasnya, bukanlah " berbilang benang , " tetapi masih serentak. Ceramah ini daripada Ruby MidWest 2011 mempunyai beberapa pemikiran yang baik untuk mendapatkannya Ruby on Rails berbilang benang pergi.

Dengan cara ini, adakah Ruby menyokong multithreading?

A berbilang benang program mempunyai lebih daripada satu urutan pelaksanaan. Ruby memudahkan untuk menulis program berbilang benang dengan kelas Thread. Ruby benang ialah cara yang ringan dan cekap untuk mencapai keselarasan dalam kod anda.

Kedua, adakah Ruby serentak? khususnya, Ruby concurrency ialah apabila dua tugasan boleh dimulakan, dijalankan dan diselesaikan dalam tempoh masa yang bertindih. Walau bagaimanapun, ini tidak semestinya bermakna bahawa kedua-duanya akan berjalan pada masa yang sama (cth., berbilang benang pada mesin teras tunggal).

Begitu juga, adakah Ruby berulir tunggal?

Jawapan ringkasnya ialah ya, memang begitu berulir tunggal . Jawapan panjang adalah ia bergantung. JRuby ialah berbilang benang dan boleh dijalankan dalam tomcat seperti kod java lain. MRI (lalai delima ) dan Python kedua-duanya mempunyai GIL (Global Interpreter Lock) dan oleh itu berulir tunggal.

Adakah Ruby mempunyai Gil?

MRI mempunyai sesuatu yang dipanggil kunci jurubahasa global ( GIL ). Ia adalah kunci di sekeliling pelaksanaan Ruby kod. Ini bermakna bahawa dalam konteks berbilang utas, hanya satu utas boleh dilaksanakan Ruby kod pada satu-satu masa. The GIL wujud untuk melindungi Ruby dalaman daripada keadaan kaum yang boleh merosakkan data.

Disyorkan: