Lovas Viktor

Megoldott problémák

Elromlott valami a webshopban? Hibakeresés és üzemeltetés egy kézből.

Azoknak, akiknek a weboldala vagy webshopja frissítés után hibázik, vagy akik csak a vásárlótól tudják meg, hogy valami nem működik. Ugyanaz a csapat üzemeltet, aki épít.

A legtöbb hiba csendes. Nem jelenik meg szállítási mód, ezért senki nem tud rendelni. A foglalási űrlap egy frissítés után nem küldhető el. A naptárból hiányoznak események, mert a kereső alapból csak tíz találatot ad vissza. Ezekről gyakran napokig nem tud senki, csak a forgalom esik. Sokszor nem is az oldal hibája, hanem egy frissítésé vagy a környezeté.

Hibakeresésnél a tényekből indulunk: naplókból, beállításokból, a hiba pontos megismétléséből. Egy webshopban a rendelésazonosítók gyanúsan gyorsan nőttek. Kiderült, hogy keresőrobotok követték a kosárba tétel linkeket. Kitiltottuk őket, és a robotkosarakat naponta töröljük. Máskor a tárhely volt az ok. Osztott tárhelyen nem lehetett a szokásos módon beállítani a gyökérkönyvtárat, ezért a belépés hibát adott.

Az üzemeltetéshez hibakövetőt kötünk be, ami azonnal szól, ha baj van. Mentést, élesítési szkripteket és átadható üzemeltetési leírást készítünk. A szerver, a domain és a kód a te neveden van. Az üzemeltetés óradíjban, havi elszámolással megy, átalány nélkül. Ha mi építettük a rendszert, nem kell senkinek elölről megismernie.

Amit először megnézünk

  1. A hiba pontos lépéseit, és hogy mikor kezdődött: frissítés, költözés, beállításváltozás után.
  2. A szerver- és alkalmazásnaplókat, valamint a hibakövető jelzéseit, ha van.
  3. A tárhely korlátait: osztott tárhely, feltöltési limit, webszerver-beállítások.
  4. A robot- és spamforgalmat, ami terheli vagy szemeteli a rendszert.
  5. A gyorsítótárat: frissül-e mentés után az, aminek frissülnie kell.
  6. A mentést és az élesítés menetét: van-e visszaút, ha egy frissítés elront valamit.

Ár és idő

Mekkora munka?

Egy konkrét hiba felderítése és javítása legtöbbször néhány óra, ritkán éri el a kicsi sávot. Egy éles környezet felállítása automatikus HTTPS-sel, mentéssel és üzemeltetési leírással jellemzően a közepes sávba esik. A folyamatos üzemeltetés havonta a ténylegesen ráfordított órák szerint számlázódik, átalány nincs. Az ingyenes konzultáción megnézzük a jelenlegi környezetet, és megmondjuk, mi a legsürgősebb.

Fejlesztés: 20 000 Ft + áfa / óra. Az első konzultáció ingyenes. Árak és méretsávok

Valós példák

Ilyet már megoldottunk

Minden példa valós, a saját projektjeinkből, ügyfélnév nélkül.

Saját webshop-platform

Új webshop létrehozása gombnyomásra, saját adatbázissal

Helyzet: Új webshopot gombnyomásra akartak indítani, saját adatbázissal, admin felhasználóval és erőforrásokkal.

Megoldás: Platformréteget fejlesztettünk, amely létrehozza a bolt adatbázisát, lefuttatja a beállításokat, és admin felhasználót készít. Ha közben hiba történik, mindent visszagörget, így nem marad félkész bolt.

Node.jsTypeScriptPostgreSQLMedusa

Saját webshop-platform

Domain szerinti kiszolgálás, egy hibás bolt nem viszi magával a többit

Helyzet: Minden boltnak a saját domainjén érkező kéréseket kellett kiszolgálnia, és egy lefagyó bolt nem dönthette be a többit.

Megoldás: Megerősítettük a kéréseket elosztó réteget: közös kapcsolatkészletet és gyorsítótárat kapott, a hibás boltot automatikusan újraindítja egyre hosszabb várakozással. A ritkán használt boltok erőforrásait felszabadítja.

Node.jsTypeScript

Fogászati termékek webshopja

Robotok által létrehozott kosarak megszüntetése

Helyzet: Gyorsan nőttek a rendelésazonosítók, és rengeteg elhagyott kosár keletkezett, amit nem valódi vásárlók hoztak létre.

Megoldás: Kiderítettük, hogy keresőrobotok követik a kosárba tétel linkeket, ezért kitiltottuk őket ezekről. Naponta automatikusan töröljük a robotok által hagyott üres, inaktív kosarakat.

Drupal 10Drupal CommercePHP

Saját webshop-platform

Nem jelent meg szállítási mód, nem lehetett rendelni

Helyzet: A boltokban nem jelent meg szállítási mód, nem lehetett kosárba tenni, és rendelést sem lehetett leadni.

Megoldás: Feltártuk és kijavítottuk a hibák okait: a szállítási szabályok hibás tárolását, a hiányos adóbeállításokat és a rossz szállítási profilhoz kötött termékeket.

MedusaNext.jsReactTypeScript

Saját webshop-platform

Az admin változtatásai újraindítás nélkül megjelennek a boltban

Helyzet: Az adminban felvitt új szállítási mód nem jelent meg a pénztárban, és más változások sem látszottak a rendszer újraindításáig.

Megoldás: Rendszerszintű gyorsítótár-hibát tártunk fel: a tárolt lekérések nem frissültek a módosítás után. Javítottuk a gyorsítótár ürítését, így a változások azonnal megjelennek.

MedusaNext.jsReactTypeScriptGLS

Országos hetilap

Több regionális portál biztonságos üzemeltetése egy kódbázisról

Helyzet: A lap több regionális oldalát egy közös kódbázisról akarták üzemeltetni úgy, hogy a beállítások kiszámíthatóan szinkronizálhatók legyenek, és a titkos kulcsok ne kerüljenek a kódtárba.

Megoldás: Szabályrendszert alakítottunk ki a közös és az oldalspecifikus beállítások szétválasztására. Szkriptekkel kezeljük a beállítások élesítését, a titkok kezelését és az ütemezett feladatokat.

Drupal 11Drush

Saját webshop-platform

Éles üzemeltetés automatikus HTTPS-sel és üzemeltetési leírással

Helyzet: A platformot élesben, megbízhatóan kellett futtatni, automatikus HTTPS-sel és átadható üzemeltetési leírással.

Megoldás: Konténeres éles környezetet állítottunk fel, amely minden új boltdomainhez automatikusan SSL-tanúsítványt kér, és hatékonyan osztja meg az adatbázis-kapcsolatokat. Lépésenkénti üzemeltetési kézikönyvet is készítettünk.

DockerCaddyPgBouncerNode.js

Országos kulturális intézmény

Hiányzó események a havi naptárban

Helyzet: A naptárban nem jelent meg minden esemény az adott hónapból, így a látogatók hiányos programot láttak.

Megoldás: Kiderült, hogy a keresőmotor alapértelmezésben csak 10 találatot ad vissza. A naptár lekérdezését az adott hónapra szűkítettük, és megemeltük a korlátot.

Drupal 11Search APIApache SolrPHP

Országos kulturális intézmény

Mentés után azonnal frissülő kapcsolódó oldalak

Helyzet: Ha egy cikket egy taghoz kapcsoltak, az a tag oldalán nem jelent meg, csak a gyorsítótár kézi ürítése után.

Megoldás: Cikk vagy esemény mentésekor és törlésekor a rendszer célzottan frissíti az érintett tagok oldalait, a teljes gyorsítótár ürítése nélkül.

Drupal 11PHP

Virág-nagykereskedés

Azonnali értesítés az oldalon fellépő hibákról

Helyzet: Az oldalon előforduló hibákról csak akkor tudtak, ha egy vásárló jelezte.

Megoldás: Bekötöttük a Sentry hibakövetőt, környezetenként eltérő beállítással. A hibák azonnal megjelennek, és értesítést küldenek.

Drupal 9Sentry

Pénzügyi tanácsadó csapat

Hibás átirányítás a bejelentkezésnél osztott tárhelyen

Helyzet: A bejelentkezési oldal hibát adott, mert a tárhelyen nem lehetett a szokásos módon beállítani az oldal gyökérkönyvtárát.

Megoldás: Átírtuk a webszerver-beállításokat, és saját biztonsági bővítményt írtunk, amely helyesen kezeli az átirányításokat ebben a tárhelykörnyezetben.

Drupal 10PHP

Utazási webshop

Frissítés után a vendégek nem tudtak foglalni

Helyzet: Egy rendszerfrissítés után a foglalási űrlap hibásan működött, így a vendégek nem tudták elküldeni a foglalásukat.

Megoldás: Megkerestük és javítottuk a foglalási űrlap megjelenítését és a mezők jogosultsági beállításait, így a foglalás újra zavartalanul működik.

Drupal 10

Kérdések és válaszok

Amit ezzel kapcsolatban kérdezni szoktak

Át tudjátok venni egy más által épített oldal üzemeltetését?

Igen, de előbb átnézzük a kódot és a szervert. Ha nem saját munkánk, az első hibák felderítése több időt vehet igénybe. Ezt előre jelezzük a becslésben.

Miért nincs havi átalány?

Mert a legtöbb hónapban kevés munka van, és nem akarunk ki nem használt órákért számlázni. A ténylegesen elvégzett munkát számoljuk el havonta.

A hiba néha a tárhely miatt van, nem a kód miatt?

Igen, és ezt ki is mondjuk. Osztott tárhelyen például a feltöltési korlát vagy a webszerver-beállítás okozhat hibát. Ilyenkor vagy megkerüljük, vagy azt javasoljuk, hogy válts tárhelyet.

Honnan tudjuk meg, ha baj van?

Hibakövetőt kötünk be, amely a fellépő hibáról azonnal értesítést küld. Így gyakran előbb tudunk róla, mint a vásárló.

Nézzük meg a te esetedet

Egy óra, telefonon, videón vagy személyesen, ingyen. A végén megmondom, mit javaslok, és körülbelül mibe kerülne, akkor is, ha az a válasz, hogy nincs szükséged ránk.