首页   注册   登录
gamexg

gamexg

V2EX 第 26464 号会员,加入于 2012-09-08 17:13:47 +08:00
今日活跃度排名 64
gamexg 最近回复了
3 小时 58 分钟前
回复了 userdhf 创建的主题 问与答 提示下,眼睛也需要防护
再配合一次性防护服吧,
一套才 0 多元,出门就穿上。
9 小时 7 分钟前
回复了 daboq 创建的主题 编程 12306 出票逻辑没那么难吧
票池数据库大概这样:

key 是 线路-日期-车次-上车站点-下车站点-座位类型 ,value 就是座位数量。

买票操作就是直接对这行记录 -1,然后后台再分配座位号。


座位号可以用一个表保存,和票池对应,票池填充票时就生成座位表,每张票池的票对应一个座位记录。
大概这些字段:线路、日期、车次、上车站点、下车站点、座位类型、是否已使用、座位号

分配座位号时直接查找未使用的作为即可。
9 小时 16 分钟前
回复了 daboq 创建的主题 编程 12306 出票逻辑没那么难吧
@daboq #35

根据业务经验及需求来预先分配,这样操作的:
比如共 3000 张票,多给 a-e 分配些,分配 a-e 1000 张,
另外 2000 张拆分配到详细区间,例如一张票可以拆分为 a-c、c-e 两个区间,放票时就固定拆分好。
查余票和买票时就比较简单了。

可以后台检查区间票,发现那个区间票低于预期值,可以决定是否后台拆分 a-e 的补区间票。

大体是这个意思,这个比较符合目前的区间无票,始发到终点的票却能够买到的情况。
9 小时 38 分钟前
回复了 daboq 创建的主题 编程 12306 出票逻辑没那么难吧
这个方案并不方便,

感觉目前应该使用的这种方案:

a-e 的线路,预先分配好 a-e、a-b、a-c、a-d、b-c、b-d、b-e 等的票数,kv 数据库都够了,查询余票直接 get 对应的 key 就行,买票直接-1,然后后台再去分配座位号。

可以预先给 a-e 多分配票,卖票时后台根据售票信息动态拆分。
23 小时 8 分钟前
回复了 lg106 创建的主题 PHP 生成唯一字母 ID 求解
hashid 挺好,
我做过类似的另一个需求,
不过原始 id 是二进制数据,直接固定 iv 的 aes 流加密来做的。
2 天前
回复了 herich 创建的主题 程序员 反感同事写的代码怎么办?
封装很正常吧。
一些常用功能标准库、第三方库没有的功能不封装每次都打 x 行真没意义。
不过封装到自己的仓库就有些问题了。
2 天前
回复了 hunterJax 创建的主题 健康 想问问大家心脏有过异常感吗?
来个 24 小时心电图吧
这种爬虫等用?
golang 的库以 go 开头的也能很多。
body 存放 json,
签名放到 http 头里面
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2081 人在线   最高记录 5168   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 12ms · UTC 12:10 · PVG 20:10 · LAX 04:10 · JFK 07:10
♥ Do have faith in what you're doing.