Jadual Kandungan
Apakah itu swap?
Mengapa kita memerlukan pertukaran?
Keburukan swap?
Adakah anda mahu bertukar?
Memori tidak mencukupi
Memori hampir tidak mencukupi
Memori yang mencukupi
Kemudian mengapa pertukaran berlaku dalam pelayan mysql kami?
Apakah kumpulan penimbal InnoDB. cache? Apa gunanya? Apakah tetapan yang sesuai?
Rumah Operasi dan penyelenggaraan operasi dan penyelenggaraan linux Bagaimana untuk menyelesaikan masalah penggunaan ruang Linux Swap yang tinggi

Bagaimana untuk menyelesaikan masalah penggunaan ruang Linux Swap yang tinggi

May 27, 2023 pm 12:37 PM
linux swap

    Apakah itu swap?

    Ruang swap ialah kawasan pada cakera, yang boleh menjadi partition, fail atau gabungan daripadanya .

    Ringkasnya, apabila memori fizikal sistem ketat, Linux akan menyimpan data yang jarang diakses dalam memori untuk bertukar, supaya sistem mempunyai lebih banyak memori fizikal untuk melayani setiap proses, dan apabila sistem memerlukan Apabila mengakses kandungan yang disimpan pada swap, data pada swap dimuatkan ke dalam memori Inilah yang sering kita panggil swap out dan swap in.

    Mengapa kita memerlukan pertukaran?

    Untuk menjawab soalan ini, kita perlu menjawab apakah faedah yang dibawa oleh pertukaran kepada kita.

    Untuk beberapa aplikasi besar (seperti LibreOffice, editor video, dll.), sejumlah besar memori akan digunakan semasa proses permulaan, tetapi memori ini selalunya hanya digunakan semasa permulaan, dan tidak akan digunakan semasa operasi seterusnya Memori ini jarang digunakan lagi. Dengan swap, sistem boleh menyimpan bahagian data memori yang tidak digunakan dengan cara ini ke swap, dengan itu melepaskan lebih banyak memori fizikal untuk digunakan oleh sistem.

    Fungsi hibernasi bagi banyak pengedaran (seperti ubuntu) bergantung pada partition swap Apabila sistem hibernasi, data dalam memori akan disimpan ke partition swap, dan kemudian data akan disimpan apabila. sistem bermula pada kali seterusnya Memuatkan ke dalam memori boleh mempercepatkan permulaan sistem, jadi jika anda ingin menggunakan fungsi hibernasi, anda mesti mengkonfigurasi partition swap, dan saiznya mestilah lebih besar daripada atau sama dengan memori fizikal.

    Dalam sesetengah kes, ingatan fizikal adalah terhad, tetapi apakah yang perlu saya lakukan jika saya ingin menjalankan program yang memakan memori? Pada masa ini, anda boleh mencapai matlamat dengan mengkonfigurasi ruang swap yang mencukupi Walaupun ia agak perlahan, ia sekurang-kurangnya boleh berjalan.

    Walaupun ingatan fizikal mencukupi dalam kebanyakan kes, selalu terdapat beberapa situasi yang tidak dijangka, seperti proses yang memerlukan lebih banyak memori daripada yang dijangkakan, atau proses yang mengalami kebocoran memori, dsb. Apabila ingatan Apabila ia tidak mencukupi , pembunuh OOM kernel akan dicetuskan Menurut konfigurasi pembunuh OOM, beberapa proses akan dimatikan atau sistem akan dimulakan semula secara langsung (lalai adalah untuk mematikan proses yang menggunakan paling banyak memori terlebih dahulu , anda boleh Menggunakan swap sebagai ingatan, walaupun ia agak perlahan, sekurang-kurangnya memberi kami peluang untuk menyahpepijat, mematikan proses atau menyimpan kemajuan kerja semasa.

    Jika anda telah melihat pengurusan memori Linux, anda akan tahu bahawa sistem akan menggunakan sebanyak mungkin memori percuma untuk cache mempercepatkan kelajuan I/O sistem, jadi jika anda boleh bergerak kurang biasa digunakan data memori ke Pada swap, lebih banyak memori fizikal akan digunakan untuk cache, dengan itu meningkatkan prestasi keseluruhan sistem.

    Keburukan swap?

    Kebaikan swap telah diperkenalkan di atas, tetapi bagaimana pula dengan keburukan swap? Swap disimpan pada cakera Kelajuan cakera adalah beberapa urutan magnitud lebih perlahan daripada memori Jika anda terus membaca dan menulis swap, ia pasti akan memberi kesan kepada prestasi sistem, terutamanya apabila sistem memori adalah sangat ketat. Kekerapan ruang swap akan menjadi sangat tinggi, menyebabkan sistem berjalan dengan sangat perlahan, seolah-olah mati Pada masa ini, menambah memori fizikal adalah satu-satunya penyelesaian.

    Memandangkan sistem akan mengalihkan data memori yang jarang digunakan secara automatik ke swap, untuk program desktop, ia mungkin menyebabkan jeda kecil apabila anda meminimumkan program dan kemudian membukanya semula, kerana anda perlu mengalihkan data memori pada swap Data dimuat semula ke dalam memori.

    Adakah anda mahu bertukar?

    Perkara di atas memperkenalkan apa itu swap serta kelebihan dan kekurangannya, jadi patutkah kita mengkonfigurasi swap? Jawapannya ialah: ia bergantung.

    Perkara berikut membincangkan pilihan swap untuk pelayan dan persekitaran desktop dalam tiga situasi: memori tidak mencukupi, memori hampir tidak mencukupi dan memori yang mencukupi.

    Memori tidak mencukupi

    Sama ada desktop atau pelayan, apabila ingatan fizikal jelas tidak mencukupi dan anda ingin menjalankan program, menambah swap adalah satu-satunya pilihan yang Lebih perlahan adalah lebih baik daripada tidak bekerja sama sekali.

    Memori hampir tidak mencukupi

    Adalah disyorkan untuk mengkonfigurasi swap, supaya kernel akan mengalihkan data luar biasa dari memori ke swap, supaya lebih banyak memori fizikal tersedia untuk panggilan sistem dan meningkatkan sistem prestasi. Pada masa yang sama, ia juga mengelakkan proses keluar yang tidak normal disebabkan oleh memori fizikal yang tidak mencukupi dan meningkatkan kestabilan sistem Walau bagaimanapun, untuk pelayan, adalah perlu untuk mengehadkan atau memantau penggunaan ruang swap melebihi jangkaan pertukaran masuk/keluar adalah kerap, , langkah mesti diambil tepat pada masanya, jika tidak prestasi akan sangat terjejas

    Memori yang mencukupi

    Secara teorinya, jika ingatan fizikal mencukupi dan tiada fungsi hibernasi diperlukan , maka swap tidak berguna, tetapi isu utama ialah Sukar bagi kami untuk memastikan bahawa memori fizikal mencukupi dalam apa jua keadaan, kerana sentiasa ada situasi yang tidak dijangka, seperti beberapa proses yang menggunakan lebih banyak memori daripada jangkaan, tekanan pelayan melebihi jangkaan, kebocoran ingatan, dsb.

    Pada masa ini, kita jelas kehabisan ingatan. Mengapa mysql secara langsung menyebabkan pelayan kehabisan memori

    Kemudian mengapa pertukaran berlaku dalam pelayan mysql kami?

    Andaikan ingatan fizikal kita ialah 16G dan swap ialah 4G. Jika MySQL sendiri sudah menduduki 12G memori fizikal, dan pada masa yang sama program atau modul sistem lain memerlukan memori 6G, maka sistem pengendalian mungkin memetakan sebahagian daripada ruang alamat yang dimiliki oleh MySQL untuk bertukar.

    Secara terang-terangan, sistem berpendapat bahawa ruang yang diduduki oleh mysql anda adalah terlalu besar dan tidak membenarkan anda melakukan perkara-perkara istimewa. Ia mesti memberi ruang kepada kawasan proses saya yang lain untuk menggunakan memori, jadi anda pergi ke pertukaran yang lebih perlahan untuk bermain.

    Penghuni memori terbesar dalam mysql ialah innodb_buffer_pool_size, jadi anda harus mempertimbangkan sama ada nilai ini ditetapkan secara tidak munasabah pada kali pertama?

    Penggunaan memori MySQL dibahagikan kepada:

    • 1 Penggunaan memori peringkat sesi: seperti sort_buffer_size, dsb., setiap sesi akan dibuka a sort_buffer_size Untuk melaksanakan operasi pengisihan

    • 2. Penggunaan memori global: contohnya: innodb_buffer_pool_size, dsb., segmen memori kongsi global

    Ini ialah apa yang saya fikir kita Bahagian yang tidak profesional dalam DBA ialah dia tidak mempertimbangkan situasi pertama dan menyemak penggunaan memori pada tahap sesi Sebaliknya, dia secara langsung memberitahu saya untuk mengurangkan saiz innodb_buffer_pool

    Apakah kumpulan penimbal InnoDB. cache? Apa gunanya? Apakah tetapan yang sesuai?

    Cache data jadual dan data indeks, muatkan data pada cakera ke dalam kumpulan penimbal, elakkan cakera IO untuk setiap akses dan percepatkan akses.

    Prestasi konkurensi MySQL adalah berkadar terus dengan saiz memori yang diperuntukkan oleh Buffer Pool Lebih besar memori yang diperuntukkan, lebih baik prestasi konkurensinya. Patutkah kesemua 99% memori mesin diperuntukkan kepada Kolam Penampan?

    Sudah tentu tidak! Apatah lagi bahawa kernel sistem pengendalian juga memerlukan beberapa gigabait memori Sebagai tambahan kepada Buffer Pool, MySQL juga mempunyai banyak struktur data memori yang lain ini semua memerlukan memori, jadi idea di atas pastinya tidak boleh dilaksanakan.

    Nisbah yang lebih munasabah ialah saiz memori Buffer Pool menyumbang 50% ~ 60% daripada jumlah memori mesin.

    Anda boleh menyemak status hit melalui show engine innodb statusG; Apabila kadar hit tidak mencapai lebih daripada 97%, anda boleh mempertimbangkan untuk menambah memori, contohnya , jumlah penulisan kepada induk adalah besar, tetapi bilangan bacaan adalah kecil

    Dalam kes lain, jika ia tidak mencapai lebih daripada 97%, untuk situasi di mana terdapat banyak bacaan. jika ia tidak mencapai lebih daripada 98%, ia bermakna penimbal tidak mencukupi. Sebaliknya, jika mata diberikan 20% daripada hit memori boleh mencapai 100%, dan terdapat banyak. halaman percuma, yang bermaksud bahawa ia sudah mencukupi, anda juga boleh mengira mengikut halaman percuma untuk mengurangkan sedikit memori itu untuk tujuan lain

    Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah penggunaan ruang Linux Swap yang tinggi. 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 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.

    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)

    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 ...

    Untuk apa yang paling baik digunakan oleh Linux? Untuk apa yang paling baik digunakan oleh Linux? Apr 03, 2025 am 12:11 AM

    Linux paling baik digunakan sebagai pengurusan pelayan, sistem tertanam dan persekitaran desktop. 1) Dalam pengurusan pelayan, Linux digunakan untuk menjadi tuan rumah laman web, pangkalan data, dan aplikasi, menyediakan kestabilan dan kebolehpercayaan. 2) Dalam sistem tertanam, Linux digunakan secara meluas di rumah pintar dan sistem elektronik automotif kerana fleksibiliti dan kestabilannya. 3) Dalam persekitaran desktop, Linux menyediakan aplikasi yang kaya dan prestasi yang cekap.

    Bagaimana keserasian Debian Hadoop Bagaimana keserasian Debian Hadoop Apr 02, 2025 am 08:42 AM

    Debianlinux terkenal dengan kestabilan dan keselamatannya dan digunakan secara meluas dalam persekitaran pelayan, pembangunan dan desktop. Walaupun kini terdapat kekurangan arahan rasmi mengenai keserasian langsung dengan Debian dan Hadoop, artikel ini akan membimbing anda tentang cara menggunakan Hadoop pada sistem Debian anda. Keperluan Sistem Debian: Sebelum memulakan konfigurasi Hadoop, sila pastikan sistem Debian anda memenuhi keperluan operasi minimum Hadoop, yang termasuk memasang Java Runtime Environment (JRE) dan pakej Hadoop. Langkah Penyebaran Hadoop: Muat turun dan Unzip Hadoop: Muat turun versi Hadoop yang anda perlukan dari laman web Apachehadoop rasmi dan selesaikannya

    Adakah debian rentetan serasi dengan pelbagai pelayar Adakah debian rentetan serasi dengan pelbagai pelayar Apr 02, 2025 am 08:30 AM

    "Debianstrings" bukan istilah standard, dan makna khususnya masih belum jelas. Artikel ini tidak dapat mengulas secara langsung mengenai keserasian penyemak imbasnya. Walau bagaimanapun, jika "debianstrings" merujuk kepada aplikasi web yang dijalankan pada sistem Debian, keserasian penyemak imbasnya bergantung kepada seni bina teknikal aplikasi itu sendiri. Sebilangan besar aplikasi web moden komited untuk keserasian penyemak imbas. Ini bergantung kepada standard web berikut dan menggunakan teknologi front-end yang serasi (seperti HTML, CSS, JavaScript) dan teknologi back-end (seperti PHP, Python, Node.js, dll.). Untuk memastikan bahawa aplikasi itu serasi dengan pelbagai pelayar, pemaju sering perlu menjalankan ujian silang dan menggunakan responsif

    See all articles