Sandra: Synchrone Dateizugriffe steuern

Hallo Zusammen

Es geht um folgendes: Es dürfen übers Internet Jacken bestellt werden. Die ersten zehn Besteller bekommen gratis ein Velo dazu. Da ich keine Datenbank einsetzen darf, beschränke ich mich auf Dateien. D.h. ich halte in einer Datei fest, wie viele Jacken schon bestellt wurden und nach 10 gibts kein Velo mehr gratis dazu. Nun meine Frage, wie gehe ich mit synchronen Zugriffen auf die Datei um? Was passiert wenn zwei Benutzer gleichzeitig auf den Bestellenknopf klicken. Wie kann ich das steuern?

Danke schon jetzt für euere Antworten!

Gruss Sandra

  1. Hi,

    Nun meine Frage, wie gehe ich mit synchronen Zugriffen auf die Datei um?

    meinst Du wirklich synchron, oder doch eher parallel?

    Was passiert wenn zwei Benutzer gleichzeitig auf den Bestellenknopf klicken.

    Dann hast Du im Zweifel parallele Dateizugriffe. Entweder Du setzt einen File-Locking-Mechanismus ein, oder Du beschränkst Dich auf atomare Zugriffe - beispielsweise anhängendes Schreiben.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hello,

      Dann hast Du im Zweifel parallele Dateizugriffe. Entweder Du setzt einen File-Locking-Mechanismus ein, oder Du beschränkst Dich auf atomare Zugriffe - beispielsweise anhängendes Schreiben.

      Das hängt aber vom regelwerk ab:
      Ist das Eintreffen der Eintragung beim Server interessant oder
      ist das Abfordern des Eintgragungsformulares der kritische Zeitpunkt?

      Man will ja langsamere Schreiber nicht unbedingt benachteiligen - oder? *gg*

      Harzliche Grüße vom Berg
      esst mehr http://www.harte-harzer.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
    2. Hi

      meinst Du wirklich synchron, oder doch eher parallel?

      Ja ich meine wohl eher parallel :)

      Dann hast Du im Zweifel parallele Dateizugriffe. Entweder Du

      »»setzt einen File-Locking-Mechanismus ein, oder Du beschränkst Dich
      »»auf atomare Zugriffe - beispielsweise anhängendes Schreiben.

      Das würde wohl mit flock() geschehen. Reicht den das?

      Danke und Gruss

      Sandra

      1. Hello,

        Das würde wohl mit flock() geschehen. Reicht den das?

        Kommt darauf an, wie Du es gestaltest.

        flock() ist advisory und nicht mandatory. Das bedeutet, dass sich _jedes_ Script, dass Zugang zu den betroffenen Dateien hat, an die Regeln halten sollte, aber eben leider nicht muss.

        Und wenn man die Regelkn dann auch noch in  der falschen Reihenfolge berücksichtigt, hat es überhaupt keinen Sinn.

        Harzliche Grüße vom Berg
        esst mehr http://www.harte-harzer.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau
        1. Hi Tom

          flock() ist advisory und nicht mandatory. Das bedeutet, dass sich _jedes_ Script, dass Zugang zu den betroffenen Dateien hat, an die Regeln halten sollte, aber eben leider nicht muss.

          Was für Regeln meinst du? Ich weiss einfach nicht, ob dies reicht, damit keine unerwünschten Dinge geschehen wenn viele Benutzer auf die Daten zugreifen.

          Danke für deine Antwort!

          Gruss Sandra

          1. Hello,

            flock() ist advisory und nicht mandatory. Das bedeutet, dass sich _jedes_ Script, dass Zugang zu den betroffenen Dateien hat, an die Regeln halten sollte, aber eben leider nicht muss.

            Was für Regeln meinst du? Ich weiss einfach nicht, ob dies reicht, damit keine unerwünschten Dinge geschehen wenn viele Benutzer auf die Daten zugreifen.

            schau mal unter http://selfhtml.bitworks.de/artikel_locking/artikel/artikel.htm

            Da steht ein angefangener Artikel zum Thema. Irgendwann mache ich ihn auch mal fertig.

            Harzliche Grüße vom Berg
            esst mehr http://www.harte-harzer.de

            Tom

            --
            Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
            Nur selber lernen macht schlau
            1. Hello Tom

              schau mal unter http://selfhtml.bitworks.de/artikel_locking/artikel/artikel.htm

              Da steht ein angefangener Artikel zum Thema. Irgendwann mache ich ihn auch mal fertig.

              Super Artikel. Besten Dank! Jetzt ist alles klar.

              Grüsse Sandra