C2C网站生成优惠码可以用什么算法实现?

2013-11-16 20:28:01 +08:00
 kailiu
如题,C2C网站上用的那种。大致使用流程如下:

1)买家看到商品后付款,然后系统判断买家是否满足某条件,如果满足就赠送该商品的优惠码。
2)买家将优惠码提供给卖家得到额外折扣。
3)卖家在系统内成功验证优惠码,得到系统返现。

所以这里主要是如何实现生成和验证优惠码的问题。暂时不考虑人工手动录入优惠码。

目前想到的办法是根据订单号用某种加密算法生成优惠码。关于这个实现的注意点,或者用什么算法比较合适,各位能给些意见吗?多谢。
5138 次点击
所在节点    程序员
8 条回复
vibbow
2013-11-16 21:22:17 +08:00
我能说优惠码直接当随机数生成么...
然后用一个K-V数据库储存优惠码信息...
dongbeta
2013-11-16 21:28:34 +08:00
楼上正解。
kailiu
2013-11-17 12:29:19 +08:00
@vibbow
@dongbeta

感谢回复。

现在具体情况是这样:用的框架是Django,昨天看你们提到K-V数据库就去了解了下Redis,后来发现Django目前还不支持NoSQL数据库,现有的第三方插件貌似只支持把Redis用作会话存储或者缓存后端,想用来作数据库貌似有困难……

还有什么好的建议吗?
dongbeta
2013-11-17 13:26:35 +08:00
@kailiu 优惠码是一组 K-V 数据,和数据库没关系。愿意用什么就用什么。
kailiu
2013-11-17 13:36:17 +08:00
@dongbeta 呃,不太理解。难道不需要用NoSQL数据库么,K-V用在RDBMS里是什么情况?
vibbow
2013-11-17 13:40:03 +08:00
@kailiu 你用RMDBS,不建立relationship,也就和NoSQL没太大区别,顶多效率差点。
如果你优惠码使用频率不高(每秒几百次那种),那用RMDBS也无所谓啊,还方便备份。
dongbeta
2013-11-17 13:40:38 +08:00
@kailiu 数据和数据库是两码事。
kailiu
2013-11-17 13:53:58 +08:00
@vibbow @dongbeta 多谢。理解了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/89543

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX