Home > Backend Development > PHP Tutorial > Algorithm problem for generating 1 million coupons on JD.com

Algorithm problem for generating 1 million coupons on JD.com

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-08-20 09:04:04
Original
2185 people have browsed it

1 million coupons are generated on JD.com, and the coupon number prefix is ​​QA (such as QAK001, QA0U767, QAJUT55, random coupon number). What algorithm can be used to generate 1 million unique coupons? Do these 1 million coupon numbers have to be stored in the database or cache?

Reply content:

1 million coupons are generated on JD.com, and the coupon number prefix is ​​QA (such as QAK001, QA0U767, QAJUT55, random coupon number). What algorithm can be used to generate 1 million unique coupons? Do these 1 million coupon numbers have to be stored in the database or cache?

You can refer to the algorithm Bloom Filter

UUID is recommended.

<code>function guid(){
    if (function_exists('com_create_guid')){
        return com_create_guid();
    }else{
        mt_srand((double)microtime()*10000);//optional for php 4.2.0 and up.
        $charid = strtoupper(md5(uniqid(rand(), true)));
        $hyphen = chr(45);// "-"
        $uuid = chr(123)// "{"
                .substr($charid, 0, 8).$hyphen
                .substr($charid, 8, 4).$hyphen
                .substr($charid,12, 4).$hyphen
                .substr($charid,16, 4).$hyphen
                .substr($charid,20,12)
                .chr(125);// "}"
        return $uuid;
    }
}</code>
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
php data acquisition?
From 1970-01-01 08:00:00
0
0
0
PHP extension intl
From 1970-01-01 08:00:00
0
0
0
How to learn php well
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template