- Google Cloud Storage és Cloud Run használatával CDN létrehozása - 2
- Ez a második cikk a Google Cloud Storage és a Cloud Run használatával történő CDN kiépítésről. Bemutatja, hogyan optimalizálhatók a képek és a szövegfájlok átvitele, valamint hogyan oszthatók el a források a világ 8 régiójában a késleltetés csökkentése ér
AI által fordított szöveg.
A bejegyzés durumis AI által generált összefoglalója
- Bemutatjuk, hogyan optimalizálhatók a Google Cloud Storage-ba feltöltött képfájlok a Cloud Run használatával, és hogyan alakíthatók át különböző formátumokba.
- A Cloud Storage fájl feltöltési és törlési eseményeit kihasználva a kép fájlokat AVIF és WebP formátumokra konvertáljuk, a szövegfájlokat pedig tömörítjük, majd más régiókba másoljuk és szinkronizáljuk a törlést.
- Ennek köszönhetően hatékonyan kezelhetjük a CDN környezetben a képoptimalizálást és a fájlszinkronizálást. A Google Cloud Load Balancer használatával kapcsolatos további tartalmat is beharangozunk.
Az előző bejegyzésben arról beszéltünk, hogyan lehet a GCS-ben szinkronizált kép fájlokat a Cloud Run segítségével továbbítani.
Most pedig a CDN sorozat utolsó bejegyzésében a GCS szinkronizálásáról és a képek optimalizálásáról lesz szó.
A Cloud Run alapértelmezés szerint HTTP hookokon keresztül működik, de ez nem az egyetlen eseményindító.
Cloud Run
Ha beállítjuk a Cloud Run-t, akkor láthatunk egy Trigger nevű részt, ahol a Pub/Sub, Cloud Storage, Filestore és egyéb lehetőségek találhatók. Az alapértelmezett HTTP kivételével a többi a leggyakrabban használt termék, és a többi, elképzelhető esemény is az „egyéb” kategóriába tartozik. Nézzük meg a Cloud Storage eseményt, amelyet most használni fogunk: találunk fájl módosítás, fájl törlés, fájl létrehozás és fájl metaadat módosítás eseményeket.
Cloud Run Eventarc
Ha a deleted és a finalized eseményeket használva létrehozunk egy Cloud Run-t, akkor létrehozhatunk egy eseményt arra az esetre, ha egy fájl feltöltésre kerül a GCS-be, vagy ha egy feltöltött fájl törlődik.
A Cloud Run-nek a következő feladatokat kell elvégeznie:
- Ha egy fájl feltöltésre kerül, akkor ellenőrizze a fájl típusát, majd végezze el a következő műveleteket:
- Ha szövegfájl (css, js), akkor tömörítse br és gzip formátumban, és hozzon létre egy új fájlt.
- Ha képfájl, akkor a sharp npm segítségével hozzon létre avif és webp formátumú fájlokat.
- Másolja az újonnan létrehozott fájlt a megadott egyéb „régiókba” is.
- Fájl törlési kérés esetén törölje a fájlt a többi régióban is.
Alapvetően, ha a fenti három feladatot (konvertálás, másolás, törlés) jól kezeljük, akkor a fájlok szinkronizálása nem lesz túl bonyolult, még akkor sem, ha több régió van. A kódban mindössze két npm-et kell használnunk a GCS-hez való kapcsolódáshoz és a sharp használatához, ami megkönnyíti a kezelést.
Ezzel befejeztük a CDN-hez kapcsolódó alapszintű bejegyzések sorozatát.
A következő bejegyzésekben a GCLB-ről (Google Cloud Loadbalancer) lesz szó.
A CDN története természetesen magában foglalja a terheléselosztót (LB) is, de néhány részlet kimaradt a tartalomból, ezeket a következő bejegyzésekben fogjuk részletesebben tárgyalni.
Köszönjük!