.uuid for uuid in uuids]) 64
+    # 异步更新 UUID 数据库中状态
65
+    if uuids:
66
+        async(update_uuids, lensman_id, uuids)
67
+
68
+    # 当可用 UUID 数量少于 500 时, 异步创建
69
+    if left < 500:
70
+        async(generate_uuids)
71
+
72
+    return response(200, 'Get UUID Success', u'获取唯一标识成功', uuids)
65 73
 
66 74
 
67 75
 # [How to do a PUT request with curl?](http://stackoverflow.com/questions/13782198/how-to-do-a-put-request-with-curl)

+ 2 - 0
requirements.txt

@@ -22,7 +22,9 @@ pep8==1.6.2
22 22
 pytz==2015.7
23 23
 records==0.4.3
24 24
 redis==2.10.5
25
+redis-extensions==1.0.1
25 26
 shortuuid==0.4.2
26 27
 uWSGI==2.0.11.1
27 28
 versions==0.10.0
28 29
 wechatpy==1.2.8
30
+https://github.com/Brightcells/django-q/archive/master.zip

+ 3 - 0
utils/redis/rkeys.py

@@ -1,5 +1,8 @@
1 1
 # -*- coding: utf-8 -*-
2 2
 
3
+# 唯一标识相关
4
+UUID_LIST = 'uuid:list'  # List, 唯一标识列表
5
+
3 6
 # 用户相关
4 7
 PROFILE_INFO = 'profile:info:%s'  # STRING,用户信息,user_id
5 8
 

+ 25 - 0
utils/redis/ruuid.py

@@ -0,0 +1,25 @@
1
+# -*- coding: utf-8 -*-
2
+
3
+from curtail_uuid import CurtailUUID
4
+from django.conf import settings
5
+
6
+from photo.models import UUIDInfo
7
+from utils.redis.rkeys import UUID_LIST
8
+
9
+
10
+r = settings.REDIS_CACHE
11
+
12
+
13
+def generate_uuid():
14
+    uuid = CurtailUUID.uuid(UUIDInfo)
15
+    UUIDInfo.objects.create(uuid=uuid)
16
+    return uuid
17
+
18
+
19
+def generate_uuids(num=1000):
20
+    uuids = [generate_uuid() for i in xrange(num)]
21
+    r.rpush(UUID_LIST, *uuids)
22
+
23
+
24
+def update_uuids(lensman_id, uuids):
25
+    UUIDInfo.objects.filter(uuid__in=uuids).update(lensman_id=lensman_id, status=False)

kodo - Gogs: Go Git Service

Nessuna descrizione

huangqimin001: 6270484a89 :art: fix_user_coupon_info 5 anni fa
..
fixed 6270484a89 :art: fix_user_coupon_info 5 anni fa
migrations 6d06194a0c SubscribeUserInfo 6 anni fa
__init__.py 6d06194a0c SubscribeUserInfo 6 anni fa
admin.py 3bbfc60c06 :art: Support del_clerk_sale_submit_api 6 anni fa
apps.py 6d06194a0c SubscribeUserInfo 6 anni fa
models.py 3bbfc60c06 :art: Support del_clerk_sale_submit_api 6 anni fa
tests.py 3bbfc60c06 :art: Support del_clerk_sale_submit_api 6 anni fa
views.py 57be08ef32 :art: Codes Format 6 anni fa