Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.php > #3483
| From | "Christoph M. Becker" <cmbecker69@arcor.de> |
|---|---|
| Newsgroups | de.comp.lang.php |
| Subject | Re: Datenbankzugriffe |
| Date | 2015-07-28 22:36 +0200 |
| Organization | solani.org |
| Message-ID | <mp8p3f$dd1$1@solani.org> (permalink) |
| References | (8 earlier) <2632905.ucBRBu4qVc@PointedEars.de> <mp8dq9$10n$2@solani.org> <4753524.mzTREkMRjf@PointedEars.de> <mp8eo4$5b7$1@solani.org> <4865029.4SWpFNJUpT@PointedEars.de> |
Thomas 'PointedEars' Lahn schrieb: > Christoph M. Becker wrote: > >> Thomas 'PointedEars' Lahn schrieb: >>> Christoph M. Becker wrote: >>>> Thomas 'PointedEars' Lahn schrieb: >>>>> [Die] Möglichkeit [von R/W Race Conditions] besteht bei der Verwendung >>>>> von Sessions nicht. >>>> Stimmt, da die Session-Dateien gesperrt werden. >>> Nein, sondern weil jeder Benutzer seine eigene Session-ID und damit seine >>> eigene Session-Datei bzw. deren Äquivalent zum Beispiel in einer Session- >>> Datenbank hat. […] >> >> Stimmt. Allerdings könnte der selbe Benutzer gleichzeitig auf die selbe >> Session-Datei zugreifen wollen. > > Was meinst Du damit? Benutzer ist hier nicht im Sinne von „Systembenutzer“ > (“www-data” etc.), sondern von „Applikationsbenutzer“ zu verstehen. Na ja, der selbe Client kann ja nahezu gleichzeitig mehrere Requests an die gleiche Website/Applikation schicken (z.B. per XHR, aber auch mehrfaches schnelles drücken von F5 ist denkbar). Der Server wird in der Regel in der Lage sein mehrere Requests gleichzeitig abzuarbeiten, und so könnte es dazu kommen, dass die gleiche Session-Datei praktisch gleichzeitig gelesen/geschrieben würde. >> Ohne Locking ginge das gründlich in die Hose. > > Wie kommst Du darauf, dass bei PHP-Sessions Locking (à la flock(2) oder > sogar tatsächlich das) stattfindet? Ich bin zum ersten Mal durch <https://wiki.php.net/rfc/session-lock-ini> (proposal 3) darauf gestoßen. Nachprüfen kann man das Verhalten des Standard-Sessionhandler leicht mit zwei einfachen Scripten hat, etwa <?php session_start(); <?php session_start(); sleep(10); (Salopp formuliert:) Ruft man das erste Skript auf, kommt die Antwort postwendend. Ruft man das zweite Skript auf, und in einem anderen Tab gleich darauf das erste, dann antworten beide etwa gleichzeitig. Und wie es aussieht, verwendet der Standard-Sessionhandler tatsächlich flock(2)[1]. [1] <https://github.com/php/php-src/blob/php-5.6.11/ext/session/mod_files.c#L169> -- Christoph M. Becker
Back to de.comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar
Re: Datenbankzugriffe Jan Novak <repcom@gmail.com> - 2015-07-20 14:32 +0200
Re: Datenbankzugriffe "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-07-20 14:49 +0200
Re: Datenbankzugriffe Peter Blancke <blancke@gmx.de> - 2015-07-20 13:38 +0000
Re: Datenbankzugriffe Niels Braczek <nbraczek@freenet.de> - 2015-07-20 18:45 +0200
Re: Datenbankzugriffe Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2015-07-20 17:16 +0000
Re: Datenbankzugriffe Jan Novak <repcom@gmail.com> - 2015-07-21 08:15 +0200
Re: Datenbankzugriffe "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-07-28 22:36 +0200
Re: Datenbankzugriffe k@rl.pflaesterer.de (Karl Pflästerer) - 2015-07-29 07:00 +0200
Re: Datenbankzugriffe Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-08-04 09:19 +0200
Re: Datenbankzugriffe k@rl.pflaesterer.de (Karl Pflästerer) - 2015-08-04 16:59 +0200
csiph-web