Rumah  >  Artikel  >  Tutorial sistem  >  barang kering! 9 seni bina teknikal berprestasi tinggi dan bersesuaian tinggi

barang kering! 9 seni bina teknikal berprestasi tinggi dan bersesuaian tinggi

PHPz
PHPzke hadapan
2024-02-13 11:00:29513semak imbas
1 Pelapis ialah corak seni bina yang paling biasa dalam sistem aplikasi perusahaan Ia membahagikan sistem kepada beberapa bahagian dalam dimensi mendatar. Setiap bahagian bertanggungjawab untuk tanggungjawab yang agak mudah dan tunggal, dan kemudian bergantung dan menjadualkan lapisan bawah melalui lapisan atas membentuk satu sistem yang lengkap.

Dalam seni bina berlapis tapak web, terdapat tiga lapisan biasa, iaitu lapisan aplikasi, lapisan perkhidmatan dan lapisan data. Lapisan aplikasi bertanggungjawab secara khusus untuk paparan perniagaan dan pandangan lapisan perkhidmatan menyediakan sokongan perkhidmatan untuk lapisan aplikasi pangkalan data menyediakan perkhidmatan akses penyimpanan data, seperti pangkalan data, cache, fail, enjin carian, dll.

Seni bina berlapis adalah logik Dari segi penggunaan fizikal, seni bina tiga peringkat boleh digunakan pada mesin fizikal yang sama Namun, dengan pembangunan perniagaan laman web, adalah perlu untuk menggunakan modul yang sudah berlapis secara berasingan, iaitu , struktur tiga peringkat digunakan secara berasingan Digunakan pada pelayan yang berbeza, tapak web mempunyai lebih banyak sumber pengkomputeran untuk menghadapi lebih banyak lawatan pengguna.

Jadi walaupun tujuan asal model seni bina berlapis adalah untuk merancang struktur logik yang jelas bagi perisian untuk memudahkan pembangunan dan penyelenggaraan, dalam proses pembangunan laman web, struktur berlapis adalah penting untuk laman web untuk menyokong pembangunan konkurensi tinggi dan arahan yang diedarkan.


barang kering! 9 seni bina teknikal berprestasi tinggi dan bersesuaian tinggi

2
Tapak web perlu berjalan secara berterusan 7×24 jam, jadi ia mesti mempunyai mekanisme redundansi yang sepadan untuk menghalangnya daripada boleh diakses apabila mesin tertentu dimatikan boleh mencapai ketersediaan perkhidmatan yang tinggi dengan menggunakan sekurang-kurangnya dua pelayan untuk membentuk kelompok. Selain sandaran biasa, pangkalan data juga perlu melaksanakan sandaran panas dan sejuk. Pusat data pemulihan bencana juga boleh digunakan secara global.
3

Jika pelapisan adalah untuk membahagikan perisian secara mendatar, maka pembahagian adalah untuk membahagikan perisian secara menegak.

Semakin besar tapak web, semakin kompleks fungsinya, dan semakin banyak jenis perkhidmatan dan pemprosesan data Mengasingkan fungsi dan perkhidmatan yang berbeza ini dan membungkusnya ke dalam unit modular dengan kohesi tinggi dan gandingan rendah bukan sahaja akan membantu pembangunan dan penyelenggaraan. perisian Ia juga memudahkan penyebaran modul yang berbeza dan meningkatkan keupayaan pemprosesan serentak tapak web dan keupayaan pengembangan fungsi. Kebutiran pemisahan mungkin kecil untuk tapak web yang besar. Contohnya, pada lapisan aplikasi, perniagaan yang berbeza diasingkan, seperti membeli-belah, forum, carian dan pengiklanan, ke dalam aplikasi yang berbeza, pasukan lawan bertanggungjawab untuk mereka dan digunakan pada pelayan yang berbeza.

4. Asynchronous

Menggunakan asynchronous, mesej yang dihantar antara perniagaan bukanlah panggilan segerak, tetapi operasi perniagaan dibahagikan kepada berbilang peringkat dan setiap peringkat dilaksanakan secara tidak segerak untuk kerjasama dengan berkongsi data.

Pelaksanaan khusus boleh diproses dalam satu pelayan melalui memori kongsi berbilang benang dalam sistem teragih, pelaksanaan tak segerak boleh dicapai melalui baris gilir mesej. Seni bina tak segerak biasa ialah kaedah pengeluar-pengguna, dan tiada panggilan langsung antara kedua-duanya.

5. Diedarkan

Untuk tapak web yang besar, salah satu tujuan utama pelapisan dan pengasingan adalah untuk memudahkan penyebaran modul yang dibahagikan, iaitu, untuk menggunakan modul yang berbeza pada pelayan yang berbeza dan berfungsi bersama melalui panggilan jauh. Pengedaran bermakna lebih banyak komputer boleh digunakan untuk menyelesaikan kerja yang sama Lebih banyak komputer, lebih banyak CPU, memori dan sumber storan, dan lebih besar jumlah akses serentak dan data yang boleh diproses, dengan itu menyediakan lebih ramai pengguna dengan Serve.

Dalam aplikasi laman web, terdapat beberapa penyelesaian yang diedarkan yang biasa digunakan.

Aplikasi dan perkhidmatan yang diedarkan: Penggunaan aplikasi dan modul perkhidmatan berlapis dan berasingan yang diedarkan boleh meningkatkan prestasi dan kesesuaian tapak web, mempercepatkan pembangunan dan keluaran serta mengurangkan penggunaan sumber sambungan pangkalan data.

Sumber statik yang diedarkan: Sumber statik tapak web, seperti JS, CSS, imej logo dan sumber lain, digunakan dalam cara yang diedarkan dan menggunakan nama domain bebas, yang sering dipanggil oleh orang sebagai pengasingan sumber statik dan dinamik. Penggunaan sumber statik yang diedarkan boleh mengurangkan tekanan beban pada pelayan aplikasi mempercepatkan pemuatan serentak pelayar dengan menggunakan nama domain bebas.

Data dan storan yang diedarkan: Tapak web yang besar perlu memproses data yang besar dalam unit P Satu komputer tidak dapat menyediakan ruang storan yang begitu besar.

Pengkomputeran teragih: Pada masa ini, tapak web biasanya menggunakan rangka kerja pengkomputeran teragih Hadoop dan MapReduce untuk pengiraan kelompok sedemikian, yang dicirikan oleh pengkomputeran mudah alih dan bukannya data mudah alih, dan program pengkomputeran diedarkan ke lokasi data untuk mempercepatkan pengkomputeran dan pengkomputeran teragih.

barang kering! 9 seni bina teknikal berprestasi tinggi dan bersesuaian tinggi

6. Keselamatan

Tapak web mempunyai banyak mod dari segi seni bina keselamatan: pengesahan identiti melalui kata laluan dan kod pengesahan telefon mudah alih perlu disulitkan untuk log masuk dan transaksi untuk mengelakkan robot daripada menyalahgunakan sumber, kod pengesahan perlu digunakan untuk pengenalan; serangan XSS biasa , suntikan SQL memerlukan penukaran pengekodan perlu ditapis, dsb.

7 Khusus termasuk proses keluaran automatik, pengurusan kod automatik, ujian automatik, pengesanan keselamatan automatik, penggunaan automatik, pemantauan automatik, penggera automatik, failover automatik, pemulihan kegagalan automatik, dsb.

8
Untuk modul dengan akses pengguna berpusat, pelayan yang digunakan secara bebas perlu dikelompokkan, iaitu, berbilang pelayan menggunakan aplikasi yang sama untuk membentuk kelompok, dan bersama-sama menyediakan perkhidmatan luaran melalui peralatan pengimbangan beban. Kluster pelayan boleh menyediakan lebih banyak sokongan serentak untuk perkhidmatan yang sama, jadi apabila lebih ramai pengguna mengaksesnya, anda hanya perlu menambah mesin baharu pada kluster sebagai tambahan, apabila salah satu pelayan gagal, Mekanisme failover pengimbangan beban boleh digunakan untuk memindahkan permintaan ke pelayan lain dalam kelompok, sekali gus meningkatkan ketersediaan sistem.


9 barang kering! 9 seni bina teknikal berprestasi tinggi dan bersesuaian tinggiTujuan caching adalah untuk mengurangkan pengiraan pelayan supaya data dapat dikembalikan terus kepada pengguna. Dalam reka bentuk perisian hari ini, caching ada di mana-mana. Pelaksanaan khusus termasuk CDN, proksi terbalik, cache setempat, cache teragih, dsb.

Terdapat dua syarat untuk menggunakan cache: akses tidak seimbang kepada hotspot data, iaitu, beberapa data yang kerap diakses perlu diletakkan dalam cache data adalah sah dalam tempoh masa tertentu, tetapi akan tamat tempoh tidak lama lagi, jika tidak bacaan kotor akan berlaku disebabkan oleh tamat tempoh data , menjejaskan ketepatan data.

Atas ialah kandungan terperinci barang kering! 9 seni bina teknikal berprestasi tinggi dan bersesuaian tinggi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:linuxprobe.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam