.NET接口请求与返回相关

wcj_me 2018-01-09 04:05:54
关于接口如何实现以下的情况:
1.如12306火车购票,在购票之后,会在等待,知道占座或购票成功后才跳转,这个过程是如何实现的?
2.关于后台,我在请求购票的接口时,他会返回成功或失败,即使是成功返回数据,表示正在出票,但是,还是需要调用查询状态的接口来确定其状态已改变,能有什么好的办法来解决这样的问题
...全文
371 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wcj_me 2018-01-15
  • 打赏
  • 举报
回复
引用 4 楼 kampoo 的回复:
关于问题2,在极大容量处理系统中,所谓的“火车票实时查询”并不是真的实时,是在多处缓存状态下的“实时”,有可能很多数据都没有同步过来。其实对于数据库也一样,大容量系统中,每时每刻都存在大量的“脏数据”,只不过不像火车票订票中的那些人为的“脏数据”。火车票查询接口方不方便,依赖于后台WebService的设计者;我觉得这样两个步骤的必要性也不高,应该简化成一个接口就应该可以了:既然已经返回“正在出票”的信息,就没必要再查询一次是不是状态改变了。
关于你说的缓存这块我大概明白了,但是后面那个状态查询是必要的,前面是我描述错误,不好意思,他接收了我的请求之后,返回的是“出票请求已接收”,所以是有必要确认的,因为这里是有判断的,不过还是很感谢~~~~感谢各位大大的回复
wcj_me 2018-01-11
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
1、长连接,或者就正常的阻塞响应 2、这没办法,为了快速响应,数据其实都是走缓存的,所以实际必须以接口调用返回为准
引用 1 楼 StratosBlue 的回复:
Ajax轮询? WebSocket?
这我都想过,但是,主要是想知道有没有更好的办法,ajax轮询,其实和阻塞相应是一个原理,但是,我觉得效果感觉有点不好。如果没有其他办法我也只能这么做了, 然后就是接口我觉得像火车票实时查询,应该不是走的缓存,如果这个走缓存的话,我觉得缓存频率太高了
kampoo 2018-01-11
  • 打赏
  • 举报
回复
关于问题2,在极大容量处理系统中,所谓的“火车票实时查询”并不是真的实时,是在多处缓存状态下的“实时”,有可能很多数据都没有同步过来。其实对于数据库也一样,大容量系统中,每时每刻都存在大量的“脏数据”,只不过不像火车票订票中的那些人为的“脏数据”。火车票查询接口方不方便,依赖于后台WebService的设计者;我觉得这样两个步骤的必要性也不高,应该简化成一个接口就应该可以了:既然已经返回“正在出票”的信息,就没必要再查询一次是不是状态改变了。
  • 打赏
  • 举报
回复
1、长连接,或者就正常的阻塞响应 2、这没办法,为了快速响应,数据其实都是走缓存的,所以实际必须以接口调用返回为准
Anonymous477 2018-01-09
  • 打赏
  • 举报
回复
Ajax轮询? WebSocket?

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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