"Jamstack adalah Slowwwww." Anda jarang mendengarnya, terutamanya yang diberikan reputasi Jamstack untuk kelajuan. Walau bagaimanapun, walaupun tapak jamStack boleh mengalami masalah prestasi. Jangan menganggap Jamstack secara automatik sama dengan prestasi yang pantas; Pilihan pintar adalah penting. Mari kita meneroka bagaimana keputusan yang buruk dapat melumpuhkan kelajuan tapak jamStack.
Kami dengan sengaja akan membina tapak Gatsby yang perlahan untuk memahami kesesakan prestasi. Menggunakan ujian prestasi yang berterusan dan Google Lighthouse, kami akan menjejaki setiap perubahan, bermula dengan skor rumah api yang sempurna sebanyak 100 dan sengaja merendahkannya kepada 17 yang menyedihkan.
Membina Laman Jamstack Perlahan Kami
Kami akan menggunakan Gatsby. Pertama, pasang Gatsby CLI:
NPM Install -g Gatsby -cli
Buat laman web Gatsby baru:
Gatsby New Slow-Jamstack
Navigasi ke direktori projek dan mulakan pelayan pembangunan:
CD Slow-Jamstack Gatsby berkembang
Untuk ujian rumah api, kami memerlukan pembentukan pengeluaran. Vercel menyediakan penyelesaian hosting yang mudah. Pasang dan log masuk ke Vercel CLI:
NPM Pasang -G Vercel -CLI vercel
Ini menyebarkan laman web ini kepada Vercel. Tapak Gatsby lalai biasanya cepat, menjaringkan 100 di rumah api. Mari lihat bagaimana kita boleh mensabotajnya.
Melambatkan dengan CSS
Rangka kerja CSS berkuasa, tetapi memilih yang salah atau menggunakannya dengan tidak cekap boleh menyakiti prestasi. Memilih kerangka modular atau CSS-in-JS untuk memuatkan hanya gaya yang diperlukan.
Kami akan membuat pilihan yang buruk: Memuatkan keseluruhan kerangka semantikui, termasuk jQuery (pergantungan), terus ke daripada HTML kami. Ini memerlukan menyalin fail <code>html.js
lalai:
cp .cache/lalai-html.js src/html.js
Kemudian, tambahkan lembaran gaya semantik dan jQuery ke src/html.js
:
<link href="https://cdn.jsdelivr.net/npm/%5Bemail%C2%A0protected%5D/dist/semantic.css" rel="stylesheet">
Menggunakan perubahan:
Vercel --Prod
Skor mercusuar jatuh ke 66, penurunan yang ketara hanya dari memuatkan CSS yang tidak perlu. Masa untuk interaktif (TTI) meningkat secara dramatik.
Melambatkan dengan kebergantungan pemasaran
Mari Tambahkan Skrip Penjejakan Google dan Facebook ke src/html.js
dalam :
<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/?x-oss-process=image/resize,p_40" class="lazy" style="max-width:90%" style="max-width:90%" alt="Jadikan Jamstack perlahan? Cabaran diterima." >
Digunakan lagi:
Vercel --Prod
Skor menjatuhkan kepada 51. Skrip yang kelihatan kecil ini mempunyai kesan prestasi yang besar.
Melambatkan dengan gambar
Kami akan menambah 100 imej dari https://placeimg.com
ke index.js
, memuatkannya secara langsung tanpa pengoptimuman:
const indexPage = () => { const item = array.from ({panjang: 100}, (_, i) => ( <img key="{i}" src="%7B%60https://placeimg.com/200/200/%24%7Bi%7D%60%7D" alt="Jadikan Jamstack perlahan? Cabaran diterima."> )); kembali ( <layout> {item} </layout> ); };
Menggunakan lagi menghasilkan tapak yang perlahan secara drastik, dengan skor rumah api 17 dan TTI sebanyak 16.5 saat.
Titik? Setiap keputusan mempengaruhi prestasi. Malah di Jamstack, prestasi tidak percuma.
Memulihkan kelajuan
Kelebihan prestasi utama Jamstack adalah caching kelebihan fail statik, mengurangkan masa ke byte pertama (TTFB). Ini lebih cepat daripada rendering sisi pelayan. Walau bagaimanapun, pengoptimuman pelanggan tetap penting. Walaupun skor rumah api yang tinggi adalah wajar, ingatlah bahawa mereka tidak selalu mencerminkan pengalaman pengguna dengan sempurna. Latihan ini menunjukkan bahawa walaupun dengan jamStack, perhatian rajin terhadap prestasi diperlukan.
Atas ialah kandungan terperinci Jadikan Jamstack perlahan? Cabaran diterima.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Ya, youdyhouldlearnbothflexboxandgrid.1) flexboxisidealforone-dimensi, flexiblelayoutslikenavigasiMenus.2)

Apa yang kelihatan seperti refactor kod anda sendiri? John Rhea memisahkan animasi CSS lama yang dia tulis dan berjalan melalui proses pemikiran mengoptimumkannya.

Csanimationsarenotinherenthardbutrequirepracticeandundunderpanderofcsspropertiesandtimingfunctions.1) startwithsimpleanimationslikescalingabuttonhoverusingkeyframes.2)

@keyframesispopularduetoitsversatilityAndPowerIncreatingSmoothcsSanimations.KeyTrickSinclude: 1) definisiMoothTransitionSbetweenStates, 2) AnimatingMultiplePropertiSti

Csscountersareusedtomanageautomaticnumberinginwebdesigns.1) mereka yang boleh dimanfaatkan, listitems, andcustomnumbering.2) AdvancedusesIndenestedNumberingsystems.3) cabaran yang terkandung di dalam cabaran

Menggunakan bayang -bayang skrol, terutamanya untuk peranti mudah alih, adalah sedikit UX yang telah diliputi oleh Chris sebelum ini. Geoff merangkumi pendekatan yang lebih baru yang menggunakan harta animasi-masa. Berikut adalah satu lagi cara.

Mari kita lari melalui penyegaran cepat. Peta imej tarikh kembali ke HTML 3.2, di mana, pertama, peta sisi pelayan dan kemudian peta sisi klien yang ditakrifkan di atas imej menggunakan elemen peta dan kawasan.

Kajian Negeri Devs kini dibuka untuk penyertaan, dan tidak seperti tinjauan sebelumnya ia meliputi segala -galanya kecuali kod: kerjaya, tempat kerja, tetapi juga kesihatan, hobi, dan banyak lagi.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa
