我有 java-servlet 应用程序 +hibernate + 流服务器
流动:
- 用户登录开始视频流
- 每 2 秒减少数据库中的 abonament 分钟数
- if minutes < 0 发送新分钟的请求(响应可能在很长一段时间后,如果是继续递减)
问题:
出现数据一致性问题,换句话说,在减少分钟数时,例如:user.setMinutes(user.getMinutes() - 2)
可能看不到新分钟数响应所做的更改,分钟数将被破坏
我认为解决方案可以创建新的休眠事务并在每次更改分钟时提交它,但这没有用:
Transaction t = session.beginTransaction();
user.setMinutes()
session.flush();
t.commit();
问题:
当每次更改获取最新数据时,如何解决这个问题?