Heim >Backend-Entwicklung >PHP-Tutorial >Wie ordne ich Transaktionen in PHP zu?

Wie ordne ich Transaktionen in PHP zu?

WBOY
WBOYOriginal
2016-08-04 09:19:382201Durchsuche

Gib mir eine Szene


  • Benutzer A hat heute 2 Yuan ausgegeben, um 100 Flaschen Wasser zu kaufen, und hat dann eine Bestellung aufgegeben: Warten Sie, bis der Marktpreis auf 2,5 Yuan steigt, um 100 Flaschen zu verkaufen. A Warten Sie einfach, bis die Leute es kaufen

  • Benutzer B: Gehen Sie davon aus, dass der aktuelle Marktpreis 3 Yuan beträgt, und geben Sie dann eine Bestellung zum Kauf von 50 Flaschen für 2,5 Yuan auf.

Frage

So verwenden Sie die Warteschlange in PHP, um zu erkennen, dass Benutzer B automatisch 50 Flaschen Benutzer A kauft. Die Transaktion von B ist abgeschlossen. Da die Transaktion von A nicht ausverkauft ist, wird die Bestellung weiterhin aufgegeben. Wie kann diese Art von Transaktion für N-Benutzer implementiert werden?

Beschreibung

  • Das obige Beispiel kann leicht als Lagerbestandsbestellung verstanden werden.

Antwortinhalt:

Gib mir eine Szene


  • Benutzer A hat heute 2 Yuan ausgegeben, um 100 Flaschen Wasser zu kaufen, und hat dann eine Bestellung aufgegeben: Warten Sie, bis der Marktpreis auf 2,5 Yuan steigt, um 100 Flaschen zu verkaufen. A Warten Sie einfach, bis die Leute es kaufen

  • Benutzer B: Gehen Sie davon aus, dass der aktuelle Marktpreis 3 Yuan beträgt, und geben Sie dann eine Bestellung zum Kauf von 50 Flaschen für 2,5 Yuan auf.

Frage

So verwenden Sie die PHP-Warteschlange, um zu erkennen, dass Benutzer B automatisch 50 Flaschen Benutzer A kauft. Die Transaktion von B ist abgeschlossen. Da die Transaktion von A nicht ausverkauft ist, steht die Bestellung weiterhin aus. Wie kann diese Art von Transaktion für N-Benutzer implementiert werden?

Beschreibung

  • Das obige Beispiel kann leicht als Lagerbestandsbestellung verstanden werden.

Diese Frage hat nichts mit Sprache zu tun.

Es werden zwei Warteschlangen benötigt, eine zum Speichern von „Kauf“ und eine zum Speichern von „Verkaufen“. Die Warteschlangen sind nach Preis sortiert, und derselbe Preis ist nach Zeit sortiert.

Dann vergleicht das Programm kontinuierlich den höchsten Kaufpreis und den niedrigsten Verkaufspreis. Wenn es eine Überschneidung zwischen beiden gibt, wird eine Transaktion durchgeführt und der Transaktionspreis auf Basis des Verkaufspreises berechnet.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn