Vibe-koodaus · Oppitunti

Suorituskyvyn parantaminen kehotteella

Pyytäkää tekoälyä etsimään hitaat suorituspolut.

Oppitunti 2/413 vaihetta

Suorituskyvyn parantaminen kehotteella on ilmainen Vibe-koodaus-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Vibe-koodaus-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Vibe-koodaus-kurssilla on yhteensä 4 oppituntia.

Mitatkaa, älkää arvatko

Suorituskykytyö epäonnistuu, jos se alkaa arvauksista. Nopein tapa hidastaa itseänne on optimoida koodia, joka ei koskaan ollut pullonkaula.

Avustajanne on erinomainen optimoinnissa, mutta vain, jos ohjaatte sen todellisten todisteiden luo. Tässä oppitunnissa mittaukset muutetaan täsmällisiksi prompteiksi.

Profiloikaa ensin

Ennen kuin pyydätte nopeutusta, pyytäkää profilointi. Pyytäkää avustajaa instrumentoimaan hidas polku ja kertomaan, mihin aika todellisuudessa kuluu.

Antakaa sille oire ja rajoite ja antakaa sen ehdottaa, mitä mitataan, sen sijaan että se arvaisi korjauksia.

The /search endpoint takes about 2 seconds under load. Before optimizing anything, add profiling to break down where the time goes: database queries, serialization, and external calls. Tell me which segment dominates and propose where to focus.

Etsikää N+1-ongelmat

Vibe-koodatun sovelluksen yleisin suorituskyvyn tuhoaja on N+1-kysely: silmukka, joka tekee yhden tietokantakutsun jokaista alkiota kohden. Kymmenellä rivillä se vaikuttaa toimivalta, mutta kymmenellä tuhannella se romahtaa.

Pyytäkää avustajaa etsimään nämä rakenteet ja yhdistämään ne yhdeksi eräajetuksi kyselyksi tai liitokseksi.

Scan the data-access layer for N+1 query patterns where we loop over results and issue a query per item. Rewrite the worst offender to use a single batched query or a join, and show the before/after query count for a list of 100 items.

Indeksoikaa oikeat sarakkeet

Koko taulun läpikäyvä kysely on hidas riippumatta siitä, kuinka siisti koodi on. Ratkaisu on yleensä indeksi sarakkeille, joiden perusteella suodatatte ja lajittelette.

Jakakaa hidas kysely ja antakaa avustajan tutkia suoritusssuunnitelma sekä suositella kohdennettua indeksiä, ei umpimähkäistä indeksiä jokaiseen sarakkeeseen.

Here is a slow query and its EXPLAIN output. Recommend the minimal set of indexes to remove the sequential scan, explain the trade-off on write performance, and give me the exact migration to add them.

Välimuistittakaa raskaat operaatiot

Joidenkin tulosten laskeminen on kallista, eivätkä ne muutu usein. Niiden tallentaminen välimuistiin vaihtaa hieman vanhentuneet tiedot huomattavaan nopeusetuun.

Pyytäkää välimuistia, jolla on selkeä vanhentamisstrategia, sillä välimuisti, jota ei voi vanhentaa oikein, muuttuu nopeasti bugien lähteeksi.

Add a cache layer for the product-catalog response, which is expensive to build and changes a few times a day. Use a short TTL plus explicit invalidation when a product is updated. Explain exactly when stale data could appear and how long it lasts.

Siirtäkää hidas työ pois pyynnöstä

Sähköpostin lähettäminen, kuvan koon muuttaminen tai kolmannen osapuolen API:n kutsuminen pyynnön aikana pakottaa käyttäjän odottamaan työtä, jonka valmistumista hänen ei tarvitse nähdä.

Pyytäkää avustajaa siirtämään työ taustatehtäväksi, jotta vastaus palautuu heti ja tehtävä suoritetaan luotettavasti uudelleenyrityksineen.

The signup request blocks while sending a welcome email and provisioning resources. Move that work into a background queue so the request returns immediately. Add retries with backoff and a dead-letter path for tasks that keep failing.

Sivuttakaa ja suoratoistakaa

Kymmenentuhannen rivin palauttaminen yhtenä vastauksena on hidasta rakentaa, siirtää ja näyttää. Tuotteissa tiedot esitetään sen sijaan sivutettuna.

Pyytäkää suurille listoille kohdistinperusteinen sivutus ja suurille hyötykuormille suoratoisto, jotta muistin käyttö pysyy tasaisena datan kasvaessa.

The list endpoint returns the entire table in one response. Add cursor-based pagination with a sane default page size and a stable sort. Make sure memory usage stays constant regardless of total row count.

Asettakaa tavoite

Optimointi ilman tavoitetta ei pääty koskaan. Määritelkää suorituskykybudjetti, jotta tiedätte, milloin työ on valmis ja milloin suorituskyky on heikentynyt uudelleen.

Ilmaiskaa tavoite konkreettisesti: p95-viiveenä, hyötykuorman kokona tai kyselymääränä, ja pyytäkää avustajaa pitämään muutokset sen rajoissa.

Set a performance budget for the checkout flow: p95 latency under 300ms and no more than 5 database queries per request. Review the current flow against that budget and propose the smallest set of changes to meet it.

Varokaa ennenaikaista optimointia

Kaikkia hitaita asioita ei kannata korjata. Kerran päivässä suoritettavan polun optimointi tuhlaa työtä ja lisää monimutkaisuutta, joka aiheuttaa myöhemmin ongelmia.

Pyytäkää avustajaa punnitsemaan vaikutusta suhteessa riskiin ja jättämään selkeä koodi ennalleen, jos hyöty on vähäinen.

Here are five optimization ideas from the profiler. Rank them by expected impact versus the complexity and risk each one adds. Recommend which to do now, which to defer, and which to skip because the gain is too small to justify.

Varmistakaa hyöty

Optimointi ei ole todellinen ennen kuin se on mitattu uudelleen. Saman profiloinnin, joka löysi ongelman, pitäisi vahvistaa sen poistuneen ilman uusia regressioita muualla.

Pyytäkää avustajaa suorittamaan vertailumittaus uudelleen ja raportoimaan muutos rehellisesti, myös kaikki hidastuneet polut.

Re-run the benchmark on /search after the changes and compare to the baseline. Report p50 and p95 before and after, the query count delta, and flag any other endpoint that regressed as a side effect.

Suorituskyky on jatkuva silmukka

Nopeuttaminen ei tule koskaan valmiiksi. Käytön kasvaessa ilmaantuu uusia pullonkauloja sinne, missä niitä ei aiemmin ollut.

Pysyvä taito on itse silmukka: mitatkaa, kohdistakaa huomio suurimpaan kustannukseen, muuttakaa ja mitatkaa uudelleen. Pitäkää kehotukset ankkuroituina dataan, niin silmukka tuottaa jatkuvasti hyötyä.

Pikatarkistus

Testatkaa, miten hyvin ymmärrätte suorituskykyyn liittyvän kehottamisen.

Kertaus

Suorituskyvyn parantaminen kehotteilla tarkoittaa, että avustajalle annetaan näyttöä, ei arvauksia. Profiloikaa ensin ja kohdistakaa sitten huomio N+1-kyselyihin, puuttuviin indekseihin, kalliiseen välimuistittomaan työhön ja taustalle kuuluviin estäviin tehtäviin.

Asettakaa budjetti, varmistakaa jokainen hyöty samalla vertailumittauksella ja käsitelkää optimointia mittaamisen ohjaamana jatkuvana silmukkana.

Aloita maksutta

Opi JavaScript tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
25
Oppitunnit
100

Usein kysytyt kysymykset

Onko oppitunti ”Suorituskyvyn parantaminen kehotteella” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Vibe-koodaus-oppimispolun 3 oppituntia, myös oppitunnin “Suorituskyvyn parantaminen kehotteella”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Vibe-koodaus-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Suorituskyvyn parantaminen kehotteella”?

Pyytäkää tekoälyä etsimään hitaat suorituspolut. Harjoittelet Vibe-koodaus-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Vibe-koodaus-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Vibe-koodaus-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Suorituskyvyn parantaminen kehotteella”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Vibe-koodaus-oppitunnilla?

Kyllä. Jokainen Vibe-koodaus-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Prototyypistä tuotteeksi
  2. Suorituskyvyn parantaminen kehotteella
  3. Lokituksen ja mittareiden lisääminen
  4. Häiriötilanteisiin vastaaminen
← Takaisin: Vibe-koodaus