谁知道教务处选课系统的原理,如果多人同一时刻选一门课,如何保证剩余可选人数的正确性与公平性?

eshaoliu 2014-09-15 11:26:55
今天抢课没抢到,忽然想到了这个问题。我的猜想,不知道对不对,客户机每发出一个选课请求,服务器创建一个线程去处理这个请求,首先把这个请求放在一个待确认队列里,然后服务器依次从队列里取出选课的个人信息,进行确认,然后将可选人数依次减一。如果可选人数减到零,则抛弃待确认队列,返回错误。不知道有没有做过这方面的大牛,谈谈这种高并发服务是怎么实现的。还有我选的时候页面卡住了,半天才返回可选已满,请机智的网友谈谈怎样优化才能消除这种卡顿,说专业点就是提高负载能力以及响应速度。
...全文
1327 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
eshaoliu 2014-09-16
  • 打赏
  • 举报
回复
要是随机的那也太坑了。
threenewbee 2014-09-15
  • 打赏
  • 举报
回复
没有绝对意义上的公平。也许你觉得,以客户端点击的先后时间关系确定先后是最公平的,但是这是不可能做到的。那么从所有提交请求的人中机器随机选出一些人,或者根据程序处理的先后关系来判别,其实也是公平的,这是另一种意义上的公平。

1,268

社区成员

发帖
与我相关
我的任务
社区描述
软件工程/管理 管理版
社区管理员
  • 研发管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧