A Cache API nem HTTP-cache: így marad nálad örökre a tegnapi válasz

A Service Worker Cache API-ja nem tartja be helyetted a Cache-Control szabályait. A no-store, a Vary, a lejárat és a cache-verziózás gyakorlati csapdái.

A Service Worker Cache API-ja nem tartja be helyetted a Cache-Control szabályait. A no-store, a Vary, a lejárat és a cache-verziózás gyakorlati csapdái.

A Chrome négy éve úgy állítja be a sütiket, mintha SameSite=Lax lenne rajtuk – de a Firefox ezt kipróbálta, aztán dokumentáltan visszavonta, és a Safari sosem is akarta ugyanazt. Amikor az express-session cookie.sameSite alapértéke false, a CSRF-védelmed pontosan attól függ, melyik böngészőt használja a felhasználód.

Az IndexedDB-tranzakciót nem lehet hálózati várakozással nyitva tartani. Egy rossz helyre tett await miatt a következő írás már inaktív tranzakcióra érkezhet.
setTimeout(0) nem enged előre semmit – a scheduler.yield() igen
A setTimeout(0) trükkel feldarabolt taskok folytatása a sor végére kerül. A natív scheduler.postTask és scheduler.yield API ugyanezt a problémát oldja meg prioritásokkal – és a yield folytatása nem esik hátrébb az újonnan érkező taskokhoz képest.

Az AsyncLocalStorage request contextet ad a Node.js-ben, de nem az eseményre feliratkozást, hanem az aszinkron láncot követi. Megnézzük, miért tűnik el egy megosztott EventEmitter listenerében a request ID, és mikor segít a bind().

A FOR UPDATE SKIP LOCKED tíz éve ott van a Postgresben, és simán kiválthatja a Kafkát egy sima háttérmunka-sorhoz – csak épp nem ingyen jön: a valódi ára nem a tábla méretével, hanem a konkurrenciával nő.

A negyedik részben szembenézek azzal, hogy a NextARCH-hoz hasonló képzések intézményesítik az architekt szerepet, miközben Larson, Goedecke, Petriglieri és a tudáselrejtés-szakirodalom megmutatja, miért a funkciónak kellene megelőznie a titulust, nem fordítva.

Az Access-Control-Max-Age hasznos, de a CORS preflightot nem a szokásos HTTP cache kezeli. Ez megmagyarázza, miért maradnak meg az OPTIONS kérések Vary és CDN mellett is.

A cone mód nem csak kevesebb fájlt rak ki lemezre: sparse indexszel egy teljes mappa a git indexében egyetlen fa-objektummá zsugorodik. Végigcsináltam egy valódi repón, hogy lássam, mi történik a színfalak mögött, és mit nem old meg ez a funkció.

A Server-Sent Events nem csak három sor EventSource-kód: proxybuffer, heartbeat és visszajátszható Last-Event-ID nélkül az „élő” stream könnyen csendes adatvesztéssé válik.

A CSS sosem tudott reagálni arra, mi van egy elem belsejében – ezért kellett mindig JavaScript. A has() ezt megoldja, de nem trükk: azért tartott ilyen sokáig, mert szétveri a böngészők érvénytelenítési logikájának alapfeltevését.

Az Architect Elevator lényege nem az, hogy az architekt feljusson a stratégiai szintre, hanem hogy rendszeresen visszatérjen a fejlesztőkhöz és az éles rendszerhez. Különben a szókincse megmarad, de az arányérzéke elkopik.

Az architekt feladata nem az, hogy minden döntést évekre előre eltaláljon. Hanem hogy minél kevesebb döntés váljon visszafordíthatatlanná, anélkül hogy felesleges rugalmasságot építene a rendszerbe.

Egy szakmai beszélgetésen nem tudtam megmondani az Angular verziószámát. Először rossz kérdésnek éreztem, később viszont rájöttem: a szám nem maga a szakértelem, de a rendszeres munka nyoma lehet.

A TLS 1.3 0-RTT gyorsíthatja a visszatérő látogató első kérését, de cserébe megismételhetővé teszi. Ezért önmagában az sem elég, ha csak GET kéréseket engedünk át.
node --run gyorsabb lehet az npm run parancsnál – de nem ugyanazt futtatja
A node --run közvetlenül indítja a package.json szkriptjeit, ezért gyorsabb lehet az npm run parancsnál. A váltás előtt azonban ellenőrizni kell az életciklus-hookokat és az npm környezeti változóit.

A force-with-lease opció nem feltétlenül állítja meg más commitjának felülírását: egy IDE háttérben futó fetch-e észrevétlenül érvényesítheti a lease-t. Itt a reprodukció és a valóban biztonságos Git-parancs.

A Chrome hover közben teljes oldalakat renderel le előre a Speculation Rules API-val – és van egy beállítási szint, ami évekig nem csinálta azt, amit a neve ígért.

A Partitioned cookie-attribútum külön állapotot ad minden beágyazó webhelynek. Chat- és térképwidgeteknél hasznos, központi SSO-sessionre viszont nem való.

Az ARG-ba vagy ENV-be tett API-token, npm-jelszó vagy AWS-kulcs nem tűnik el a buildel együtt: ott marad a docker history-ban, és publikus GitHub Actions build esetén a provenance attesztációban is. A BuildKit secret mount ezt oldja meg – hands-on kipróbálva, docker history-val és exportált réteggel is ellenőrizve.