Jadual Kandungan
1.1 Konsep Keselarasan Tinggi
2.1 Pengembangan menegak
3.1 iptables berkaitan
Rumah Operasi dan penyelenggaraan operasi dan penyelenggaraan linux Apakah maksud konkurensi tinggi dalam linux

Apakah maksud konkurensi tinggi dalam linux

Nov 11, 2022 pm 03:25 PM
linux

Di Linux, konkurensi tinggi ialah situasi "menghadapi sejumlah besar permintaan operasi dalam tempoh masa yang singkat" yang dihadapi semasa operasi sistem Ia berlaku terutamanya apabila sistem web secara intensif mengakses sejumlah besar permintaan dan menerima sejumlah besar permintaan; keadaan ini Kejadian akan menyebabkan sistem melakukan sejumlah besar operasi dalam tempoh ini, seperti permintaan untuk sumber, operasi pangkalan data, dll.

Apakah maksud konkurensi tinggi dalam linux

Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.

Konsep Keseragaman Tinggi

1.1 Konsep Keselarasan Tinggi

Konsep Mata Wang Tinggi Ia adalah salah satu daripada faktor-faktor yang mesti dipertimbangkan dalam reka bentuk seni bina sistem teragih Internet Ia biasanya merujuk kepada memastikan sistem dapat mengendalikan banyak permintaan secara selari pada masa yang sama melalui reka bentuk.

Konkurensi tinggi (High Concurrency) ialah situasi di mana "sebilangan besar permintaan operasi ditemui dalam tempoh masa yang singkat" yang dihadapi semasa operasi sistem Ia berlaku terutamanya apabila sistem web menumpukan sejumlah besar akses dan menerima sejumlah besar permintaan ( Contohnya: situasi rampasan tiket 12306; acara Tmall Double Eleven). Berlakunya situasi ini akan menyebabkan sistem melakukan sejumlah besar operasi dalam tempoh ini, seperti permintaan untuk sumber, operasi pangkalan data, dll.

1.2 Penunjuk berkaitan konkurensi tinggi

    Masa Tindak Balas (Masa Tindak Balas)
    • Sistem bertindak balas terhadap permintaan masa. Sebagai contoh, sistem mengambil masa 200ms untuk memproses permintaan HTTP 200ms ini ialah masa tindak balas sistem
  • Throughput (Throughput)
    • Bilangan permintaan yang diproses setiap. unit masa
  • Query Per Second QPS (Query Per Second)
    • Bilangan permintaan respons sesaat. Dalam medan Internet, perbezaan antara penunjuk dan daya pemprosesan ini tidak begitu jelas
  • Bilangan pengguna serentak (Kesepakatan Pengguna)
    • Bilangan pengguna yang menggunakan biasa secara serentak fungsi sistem. Contohnya, dalam sistem pemesejan segera, volum dalam talian mewakili bilangan pengguna serentak sistem pada tahap tertentu

1.3 Pengoptimuman konkurensi yang tinggi

  • Hadkan bilangan maksimum fail terbuka dalam satu proses

  • Parameter TCP Kernel

  • Mekanisme peruntukan acara IO

2. Meningkatkan keupayaan penyelarasan sistem

2.1 Pengembangan menegak

    Meningkatkan keupayaan pemprosesan bersendirian
    • Tingkatkan prestasi perkakasan bersendirian, contohnya: meningkatkan bilangan teras CPU seperti sebagai 32 teras, naik taraf kepada kad rangkaian yang lebih baik seperti 10G, dan naik taraf kepada pemacu keras yang lebih baik seperti SSD , kembangkan kapasiti cakera keras seperti 2T, kembangkan memori sistem seperti 128G

    • Tingkatkan prestasi seni bina mesin tunggal, contohnya: gunakan Cache untuk mengurangkan masa IO, gunakan tak segerak untuk meningkatkan daya pemprosesan tunggal, gunakan struktur Data tanpa kunci untuk mengurangkan masa tindak balas

2.2 Pengembangan mendatar

    Tambah kuantiti pelayan, prestasi sistem boleh dikembangkan secara linear

2.3 Seni bina berlapis Internet biasa

(1) Lapisan pelanggan: panggilan biasa Pihak ialah pelayar atau aplikasi mudah alih APP

(2) Songsang lapisan proksi: pintu masuk sistem, proksi terbalik

(3) Lapisan aplikasi tapak: laksanakan logik aplikasi teras, kembalikan html atau json

(4) Lapisan perkhidmatan: Jika penservitan dilaksanakan, akan ada lapisan ini

(5) Lapisan cache data: Cache mempercepatkan akses kepada storan

(6 ) Lapisan pangkalan data: Storan data diperkukuh pangkalan data

2.4 Seni bina pengembangan mendatar

  • Tahap pengembangan lapisan proksi terbalik

  • Apabila nginx menjadi hambatan, anda hanya perlu menambah bilangan pelayan, menggunakan perkhidmatan nginx baharu dan menambah IP rangkaian luaran untuk mengembangkan prestasi lapisan proksi terbalik Secara teorinya, konkurensi tinggi tak terhingga

  • dicapai melalui "DNS. polling": dns-server dikonfigurasikan dengan berbilang IP resolusi untuk nama domain dan setiap permintaan resolusi DNS mengakses dns-server , IP ini akan ditinjau dan dikembalikan

  • Pengembangan mendatar bagi lapisan tapak

    • dilaksanakan melalui "nginx". Dengan mengubah suai nginx.conf, anda boleh menyediakan berbilang hujung belakang web

    • Apabila hujung belakang web menjadi halangan, cuma tambah bilangan pelayan dan tambahkan penggunaan perkhidmatan web dalam konfigurasi nginx Mengkonfigurasi bahagian belakang web baharu boleh mengembangkan prestasi lapisan tapak dan mencapai keselarasan tinggi yang tidak terhingga secara teorinya

  • Peluasan mendatar lapisan perkhidmatan

    • Dilaksanakan melalui "Kolam Sambungan Perkhidmatan"

    • Apabila lapisan tapak memanggil pelayan RPC lapisan perkhidmatan hiliran melalui klien RPC, kumpulan sambungan akan mewujudkan berbilang sambungan dengan perkhidmatan hiliran apabila perkhidmatan menjadi hambatan, cuma tambah bilangan pelayan, gunakan perkhidmatan baharu dan wujudkan sambungan perkhidmatan hiliran baharu di RPC-klien untuk mengembangkan prestasi lapisan perkhidmatan dan mencapai hasil teori yang sangat tinggi pada

  • Pengembangan mendatar lapisan data

    • Lapisan data (cache, pangkalan data) melibatkan data Pengembangan mendatar membahagikan data secara mendatar (cache , pangkalan data) pada asalnya disimpan pada satu pelayan ke pelayan yang berbeza untuk mencapai tujuan mengembangkan prestasi sistem.

    • Simpan julat data tertentu

      • pustaka pengguna0, julat uid storan 1-1kw

      • pustaka pengguna1 , Simpan julat uid 1kw-2kw

    • Pisah secara mendatar mengikut tahap cincang

      • pustaka pengguna0, simpan data uid genap

      • pustaka pengguna1, menyimpan data uid ganjil

Tiga pelayan Linux tunggal meningkatkan keselarasan

3.1 iptables berkaitan

  • Tutup firewall iptables dan halang kernel daripada memuatkan iptables modul

  • Hadkan bilangan maksimum fail terbuka untuk satu proses (bilangan maksimum lalai fail terbuka untuk satu proses ialah 1024)

    ulimit –n 65535
    Salin selepas log masuk
  • Ubah suai bilangan fail terbuka untuk pengguna dalam sistem Linux Had lembut dan had keras

    vim /etc/security/limits.conf
    * soft nofile 65535   #'*'表示修改所有用户的限制
    * hard nofile 65535
    Salin selepas log masuk
    #用户完成系统登录后读取/etc/security/limits.conf文件
    vim /etc/pam.d/login
    sessionrequired /lib/security/pam_limits.so
    Salin selepas log masuk

3.2 Parameter TCP kernel

Status TIME_WAIT

  • Selepas sambungan TCP diputuskan sambungan, ia akan kekal dalam keadaan TIME_WAIT untuk tempoh masa tertentu sebelum melepaskan port . Apabila terdapat terlalu banyak permintaan serentak, sejumlah besar sambungan dalam keadaan TIME_WAIT akan dijana Jika ia tidak dapat diputuskan dalam masa, sejumlah besar sumber port dan sumber pelayan akan diduduki

.
#查看TIME_WAIT状态连接
netstat -n | grep tcp | grep TIME_WAIT |wc -l
Salin selepas log masuk
# vim /etc/sysctl.conf
net.ipv4.tcp_syncookies= 1 #表示开启SYNCookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_tw_reuse= 1 #表示开启重用。允许将TIME-WAITsockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_tw_recycle= 1 #表示开启TCP连接中TIME-WAITsockets的快速回收,默认为0,表示关闭;
net.ipv4.tcp_fin_timeout= 30  #修改系統默认的TIMEOUT 时间。
Salin selepas log masuk

Cadangan berkaitan: "Tutorial Video Linux"

Atas ialah kandungan terperinci Apakah maksud konkurensi tinggi dalam linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk menyelesaikan masalah kebenaran yang dihadapi semasa melihat versi Python di Terminal Linux? Bagaimana untuk menyelesaikan masalah kebenaran yang dihadapi semasa melihat versi Python di Terminal Linux? Apr 01, 2025 pm 05:09 PM

Penyelesaian kepada Isu Kebenaran Semasa Melihat Versi Python di Terminal Linux Apabila anda cuba melihat versi Python di Terminal Linux, masukkan Python ...

Mengapa ralat berlaku semasa memasang pelanjutan menggunakan PECL dalam persekitaran Docker? Bagaimana menyelesaikannya? Mengapa ralat berlaku semasa memasang pelanjutan menggunakan PECL dalam persekitaran Docker? Bagaimana menyelesaikannya? Apr 01, 2025 pm 03:06 PM

Punca dan penyelesaian untuk kesilapan Apabila menggunakan PECL untuk memasang sambungan dalam persekitaran Docker Apabila menggunakan persekitaran Docker, kami sering menemui beberapa sakit kepala ...

Bagaimana untuk mengintegrasikan perkhidmatan Node.js atau Python dengan cekap di bawah seni bina lampu? Bagaimana untuk mengintegrasikan perkhidmatan Node.js atau Python dengan cekap di bawah seni bina lampu? Apr 01, 2025 pm 02:48 PM

Ramai pemaju laman web menghadapi masalah mengintegrasikan perkhidmatan node.js atau python di bawah seni bina lampu: lampu sedia ada (Linux Apache MySQL PHP) Laman web seni bina memerlukan ...

Bagaimana untuk mengkonfigurasi tugas masa apscheduler sebagai perkhidmatan di macOS? Bagaimana untuk mengkonfigurasi tugas masa apscheduler sebagai perkhidmatan di macOS? Apr 01, 2025 pm 06:09 PM

Konfigurasikan tugas masa Apscheduler sebagai perkhidmatan di platform macOS, jika anda ingin mengkonfigurasi tugas masa Apscheduler sebagai perkhidmatan, sama dengan Ngin ...

Empat cara untuk melaksanakan multithreading dalam bahasa c Empat cara untuk melaksanakan multithreading dalam bahasa c Apr 03, 2025 pm 03:00 PM

Multithreading dalam bahasa dapat meningkatkan kecekapan program. Terdapat empat cara utama untuk melaksanakan multithreading dalam bahasa C: Buat proses bebas: Buat pelbagai proses berjalan secara bebas, setiap proses mempunyai ruang ingatan sendiri. Pseudo-Multithreading: Buat pelbagai aliran pelaksanaan dalam proses yang berkongsi ruang memori yang sama dan laksanakan secara bergantian. Perpustakaan multi-threaded: Gunakan perpustakaan berbilang threaded seperti PTHREADS untuk membuat dan mengurus benang, menyediakan fungsi operasi benang yang kaya. Coroutine: Pelaksanaan pelbagai threaded ringan yang membahagikan tugas menjadi subtask kecil dan melaksanakannya pada gilirannya.

Bolehkah penterjemah Python dipadam dalam sistem Linux? Bolehkah penterjemah Python dipadam dalam sistem Linux? Apr 02, 2025 am 07:00 AM

Mengenai masalah menghapuskan penterjemah python yang dilengkapi dengan sistem Linux, banyak pengagihan Linux akan memasang semula penterjemah python apabila dipasang, dan ia tidak menggunakan pengurus pakej ...

Cara Membuka Web.xml Cara Membuka Web.xml Apr 03, 2025 am 06:51 AM

Untuk membuka fail web.xml, anda boleh menggunakan kaedah berikut: Gunakan editor teks (seperti Notepad atau TextEdit) untuk mengedit arahan menggunakan persekitaran pembangunan bersepadu (seperti Eclipse atau NetBeans) (Windows: Notepad Web.xml; Mac/Linux: Open -A -A TextEdit Web.xml)

See all articles