1.io berorientasikan aliran, iaitu, apabila membaca data, ia dibaca dari aliran satu demi satu, jadi data tidak boleh diproses secara keseluruhan dan tiada penimbal nio, dan data disimpan dalam penimbal , membaca data dilakukan dalam penimbal, jadi lebih mudah untuk melakukan operasi mengimbangi data 2 Jika pada masa ini tiada data untuk dibaca apabila proses beroperasi io, benang disekat Memandangkan nio mengendalikan io pada saluran, ia tidak menyekat Apabila tiada data untuk dibaca dalam saluran, saluran boleh ditukar kepada proses io lain 3. Nio mempunyai pemilih untuk dipilih. Urutan boleh memilih berbilang saluran melalui pemilih, manakala io hanya boleh mengendalikan satu
Dibuat dengan tangan semata-mata, harap ia membantu anda
Anggapkan senario berikut: Pada mesin 4 teras, terima permintaan rangkaian, proses logik perniagaan, dan kembalikan hasil pemprosesan kepada pelanggan adalah 10,000/s Semasa pemprosesan logik perniagaan, Terdapat operasi menulis fail, yang perlu disekat selama 5 saat, dengan mengandaikan bahawa penghantaran tidak memakan masa.
1. Gunakan pemprosesan BIO:
Disebabkan masa IO yang lama dalam pemprosesan logik perniagaan, utas pemprosesan akan disekat Dalam kes berbilang permintaan, satu permintaan akan menjana urutan untuk memproses perniagaan, jadi dalam masa 5 saat, 50,000 utas perlu wujud dalam. sistem , digunakan untuk mengendalikan logik perniagaan. CPU akan menggunakan kebanyakan sumbernya untuk mengendalikan penjadualan benang.
2. Gunakan pemprosesan NIO: Operasi IO dalam NIO adalah tidak segerak dan tidak akan menyekat rangkaian logik perniagaan Dalam kes berbilang permintaan, 4 utas perniagaan dibuka dan satu utas menggunakan satu teras CPU boleh memproses logik perniagaan dengan kelajuan penuh. Untuk operasi IO dalam perniagaan, ia boleh diproses secara tak segerak dalam perkakasan, dan mesej dihantar ke CPU untuk pemprosesan perniagaan seterusnya apabila data sudah siap Kemudian hanya 4 utas diperlukan untuk memproses perniagaan dengan cekap, dan CPU hampir tidak terbiar. Tidak perlu menggunakan sumber dalam penjadualan benang.
1.nio melakukan pemetaan memori, menghapuskan satu salinan antara ruang pengguna dan ruang sistem 2.nio adalah tak segerak, tindak balas tercetus, tindak balas tidak menyekat, menggunakan sepenuhnya sumber sistem, terutamanya Ia adalah cpu

0zhangzhun132·Tadi
1.io berorientasikan aliran, iaitu, apabila membaca data, ia dibaca dari aliran satu demi satu, jadi data tidak boleh diproses secara keseluruhan dan tiada penimbal nio, dan data disimpan dalam penimbal , membaca data dilakukan dalam penimbal, jadi lebih mudah untuk melakukan operasi mengimbangi data
2 Jika pada masa ini tiada data untuk dibaca apabila proses beroperasi io, benang disekat Memandangkan nio mengendalikan io pada saluran, ia tidak menyekat Apabila tiada data untuk dibaca dalam saluran, saluran boleh ditukar kepada proses io lain
3. Nio mempunyai pemilih untuk dipilih. Urutan boleh memilih berbilang saluran melalui pemilih, manakala io hanya boleh mengendalikan satu
Dibuat dengan tangan semata-mata, harap ia membantu anda
EOF
Anggapkan senario berikut: Pada mesin 4 teras, terima permintaan rangkaian, proses logik perniagaan, dan kembalikan hasil pemprosesan kepada pelanggan adalah 10,000/s Semasa pemprosesan logik perniagaan, Terdapat operasi menulis fail, yang perlu disekat selama 5 saat, dengan mengandaikan bahawa penghantaran tidak memakan masa.
1. Gunakan pemprosesan BIO:
Disebabkan masa IO yang lama dalam pemprosesan logik perniagaan, utas pemprosesan akan disekat Dalam kes berbilang permintaan, satu permintaan akan menjana urutan untuk memproses perniagaan, jadi dalam masa 5 saat, 50,000 utas perlu wujud dalam. sistem , digunakan untuk mengendalikan logik perniagaan. CPU akan menggunakan kebanyakan sumbernya untuk mengendalikan penjadualan benang.
2. Gunakan pemprosesan NIO:
Operasi IO dalam NIO adalah tidak segerak dan tidak akan menyekat rangkaian logik perniagaan Dalam kes berbilang permintaan, 4 utas perniagaan dibuka dan satu utas menggunakan satu teras CPU boleh memproses logik perniagaan dengan kelajuan penuh. Untuk operasi IO dalam perniagaan, ia boleh diproses secara tak segerak dalam perkakasan, dan mesej dihantar ke CPU untuk pemprosesan perniagaan seterusnya apabila data sudah siap Kemudian hanya 4 utas diperlukan untuk memproses perniagaan dengan cekap, dan CPU hampir tidak terbiar. Tidak perlu menggunakan sumber dalam penjadualan benang.
Sama ada IO atau NIO, ia adalah manifestasi model I/O rangkaian Linux. Adalah disyorkan untuk mempelajari model rangkaian Linux.
1.nio melakukan pemetaan memori, menghapuskan satu salinan antara ruang pengguna dan ruang sistem
2.nio adalah tak segerak, tindak balas tercetus, tindak balas tidak menyekat, menggunakan sepenuhnya sumber sistem, terutamanya Ia adalah cpu
<h1>Hey hei</h1>