Új hozzászólás Aktív témák

  • Tele von Zsinór

    őstag

    válasz Sk8erPeter #12993 üzenetére

    maga az ellenőrzés miért lenne olyan nagy gond

    Szerintem itt erre gondolt: Pistike rángógörcsöt kap, és egymás után tizenhét alkalommal kattint valamelyik linkre. Az adott oldalon olvasni kell a manát, és ekkor történik a növelés szükségességének ellenőrzése is. A számos egyszerre bejövő processt ütemezi az OS, ebből három véletlenül így jön ki:

    - #1: aktuális érték olvasás
    - #2: aktuális érték olvasás
    - #3: aktuális érték olvasás
    - #3: ellenőrzés, növelés
    - #1: ellenőrzés, növelés
    - #2: ellenőrzés, növelés

    Szóval mivel az olvasás-ellenőrzés-növelés nem atomi művelet, simán válthat közben az OS (jó eséllyel fog is). Ha szerencsétlen mód úgy jön ki, mint fenn, akkor van három processed, ami mind növeli, szóval rögtön eltelt másfél órád néhány másodperc alatt. Ezt lehet mondjuk lockolással elkerülni, de nem triviális feladat. Sokkal egyszerűbb cronból, ütemezve írni, és csak ott.

    Persze ez a fenti helyzet egyszerűsítve van, sok függ a környezettől, szerverbeállításoktól, hogy használsz-e sessiont...

Új hozzászólás Aktív témák