|
Baru-baru ini, saya mewawancarai beberapa perusahaan satu demi satu, dan saya mencatat beberapa pertanyaan penting, mendesak diri saya untuk belajar dan meningkatkan, dan pada saat yang sama berharap dapat memberikan bantuan kepada teman-teman saya. Ada banyak konten, sedikit demi sedikit, pembelajaran langkah demi langkah. Ada yang ditanya dalam wawancara, ada yang persyaratan rekrutmen, dan ada yang ditambahkan sendiri.
1. Pengetahuan terkait MySQL 1. Metode optimasi MySQL Metode umum pengoptimalan MYSQL Skema pengoptimalan kinerja MySQL
2. Cara membagi database dan tabel Referensi: http://blog.sina.com.cn/s/blog_6e322ce70100zs9a.html http://www.jb51.net/article/29771.htm 3. Cara melakukan hot standby dan penyeimbangan beban mesin ganda di Mysql +
http://www.dewen.org/q/51/Mysql+如何做双机热备和负载均衡
4. Apa saja jenis-jenis tabel data? MyISAM, InnoDB, HEAP, BOB, ARSIP, CSV, dll MyISAM: Matang, stabil, mudah dikelola, cepat dibaca. Beberapa fitur tidak didukung (transaksi, dll.), kunci tingkat tabel. InnoDB: Mendukung transaksi, kunci asing, dan kunci baris. Ini memakan banyak ruang dan tidak mendukung pengindeksan teks lengkap. Fitur utama dari mesin myisam dan Innodb: Apa perbedaan antara mesin penyimpanan MySQL MyISAM dan InnoDB? 5. Metode injeksi Anti-SQL mysql_escape_string(strip_tags($arr["$val"])); 6. Cara memecahkan masalah efisiensi kueri lintas tabel setelah mysql membagi tabel besar menjadi beberapa tabel [php] Lihat salinan biasa Melihat irisan kode yang berasal dari irisan kode saya di KODE /** * Nama Fungsi: post_check() * Fungsi fungsi: Memproses suntingan yang dikirimkan * Parameter: $post: Konten yang akan dikirimkan * Nilai Pengembalian: $post: Mengembalikan konten yang difilter */ fungsi post_check($post){ if(!get_magic_quotes_gpc()){// Menentukan apakah magic_quotes_gpc terbuka $post = addslashes($post); Lakukan pemfilteran magic_quotes_gpc data yang dikirimkan tanpa membuka } $post = str_replace("_","\_", $post); Filter '_' $post = str_replace("%","\%", $post); Filter '%' $post = NL2BR($post); Masukkan konversi $post = htmlspecialchars($post); Konversi markup HTML kembali $post; } 7. Aplikasi indeks Kapan harus mempertimbangkan pengindeksan Situasi apa yang tidak cocok untuk pengindeksan Cara menilai apakah pernyataan menggunakan indeks Skenario yang sering terjadi di mana indeks tidak digunakan: seperti '%.....' Konversi implisit tipe data atau kata kunci ditambah kondisi lainnya Indeks Teks Lengkap: Hanya dapat digunakan untuk tabel MYIsAM, dibuat pada kolom jenis CHAR, VARCHAR, TEXT.
8. Bagaimana cara mengoptimalkan mysql untuk tabel besar (puluhan juta)? Referensi http://www.zhihu.com/question/19719997 9. Masalah kueri lambat mysql Faktanya, ini adalah cara yang relatif sederhana untuk menganalisis melalui log kueri yang lambat, jika Anda tidak ingin melihat log, Anda dapat menggunakan alat untuk menyelesaikannya. Seperti mysqldumpslow, mysqlsla, myprofi, mysql-explain-slow-log, mysqllogfilter, dll., Rasanya Anda membutuhkan banyak pengalaman untuk menganalisisnya, dan membuang-buang waktu. 10. Mengenai kelebihan dan kekurangan sesi status login pengguna, cookie, database atau memcache http://www.dewen.org/q/11504/ Mengenai status login pengguna, kelebihan dan kekurangan session%2Ccookie, database, atau memcache 11. Kasus ekstrem ditangani dalam transaksi 12. SQL bahasa dibagi menjadi 4 kategori, silakan cantumkan DDL - BUAT, JATUHKAN, UBAH DML - SISIPKAN, PERBARUI, HAPUS DQL-PILIH DCL - HIBAH, CABUT, KOMITMEN, MUNDUR
2. PHP dasar-dasar sesi Beberapa cara dan perbedaan PHP terhubung ke database MySQL MySQL: Berorientasi pada proses MySQLLI: Berorientasi Objek PDO: Portabilitas tinggi Silakan lihat: Seri Dasar PHP: Tiga API yang Digunakan oleh PHP untuk Terhubung ke Database MySQL 3. PHP Lanjutan Penggunaan koneksi panjang dan pendek soket Masalah keamanan pembayaran Berorientasi objek Tiga karakteristik utama: enkapsulasi, pewarisan, dan polimorfisme (penulisan ulang metode). Kelas abstrak: abstrak, setidaknya satu metode adalah metode abstrak yang tidak dapat dibuat, mendefinisikan antarmuka umum untuk subkelas. Antarmuka: antarmuka, selesaikan masalah pewarisan tunggal PHP, semua metode adalah metode abstrak akses publik, Anda tidak dapat mendeklarasikan variabel, hanya konstanta. Mewarisi kelas saat mengimplementasikan beberapa antarmuka kelas A memperluas B mengimplementasikan antarmuka 1, antarmuka 2..., antarmuka n() { Menerapkan metode di semua antarmuka } Analisis penyebab perbedaan kinerja antara arsitektur situs web LAMP dan LNMP Analisis kinerja bahasa yang ditafsirkan dan dikompilasi, contoh. 4. Keteraturan Pencocokan email, html, js, dll. 5. Fondasi pengembangan Definisi proses dan utas, perbedaan, dan koneksi. Status proses: jalankan, siap, tunggu 6. Basis data Nosql Koneksi yang dibedakan memcached, redis, mongodb 3 adegan hal yang sama sekali berbeda. 1.memcached: Jika satu nilai kunci di-cache dalam memori, tidak ada pengganti cache terdistribusi penembolokan objek; 2. redis: Ini adalah kumpulan algoritma dan struktur data, operasi struktur data yang cepat adalah fitur terbesarnya, mendukung persistensi data; 3. MongoDB adalah struktur BSON, antara RDB dan NoSQL, yang lebih longgar dan lebih fleksibel, tetapi tidak mendukung transaksi dan hanya digunakan sebagai penyimpanan data yang tidak penting. Bisakah saya merujuk ke MongoDB atau redis sebagai alternatif untuk memcached? 7. Perintah Linux yang umum digunakan Misalnya, soft link 8. Terkait arsitektur Uji stres sebelum proyek ditayangkan, jumlah konkurensi yang didukung oleh satu server, dan jumlah PV. Alokasi sumber daya server yang wajar CPU: Apache Dalam lingkungan beban tinggi, terlalu banyak pembacaan dan penulisan IO disk pasti akan menghabiskan banyak sumber daya, dan CPU pasti akan memakan terlalu banyak CPU. Memori: Bank memori, perangkat lunak basis data
Hard Drive: File Pemilihan arsitektur Web2.0 MongoDB+Redis atau MySQL+Memcached adalah kombinasi yang lebih baik, dan NOSQL digunakan untuk logika sederhana Arsitektur situs web utama saat ini populer LAMPU、LNMP、LLMP Sekarang ada juga arsitektur LNAMP di jaringan, yaitu menggabungkan keunggulan nginx dan Apache, menggunakan Apache untuk memuat PHP, nginx bertanggung jawab untuk mengurai permintaan web lainnya, dan menggunakan modul penulisan ulang nginx, tetapi port Apache tidak terbuka untuk umum, dan banyak modul Apache dapat mengurangi sumber daya tanpa memuat. |