队列 - java redis做app后台 怎么实现多人抢单
阿神
阿神 2017-04-18 10:03:55
0
1
514
阿神
阿神

闭关修行中......

membalas semua(1)
小葫芦

Saya tidak begitu memahami maksud kod anda dan ia nampaknya tidak sepadan dengan penerangan anda.

Bukan mustahil untuk menggunakan redis, tetapi kecekapannya mungkin agak rendah Adalah disyorkan untuk menggunakan penguncian optimis untuk menyelesaikan masalah ini.

Contohnya:
Katakan terdapat medan versi dalam jadual pesanan. Medan ini hanya boleh ditambah dalam satu arah (biasanya +1 apabila memilih, lihat version juga:

SELECT ..., version FROM order 
WHERE ...;

UPDATE order
SET ...,
version = version+1
WHERE version = 上一个SELECT语句带出来的version值

Andaikan pengguna A dan pengguna B mencari pesanan dengan order_id=1, version=1 dalam tempoh masa tertentu, satu demi satu atau pada masa yang sama Disebabkan kewujudan kunci baris mysql semasa KEMASKINI, hanya seorang pengguna akan KEMASKINI dengan jayanya (1 baris terjejas ), KEMASKINI pengguna lain gagal (0 baris terjejas), dan kemudian anda boleh menilai sama ada pengguna berjaya meraih pesanan berdasarkan bilangan baris yang dikembalikan selepas KEMASKINI.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!