【发布时间】:2012-12-04 16:55:54
【问题描述】:
我将收到来自客户端的多个 Servlet 请求,以更新数据库中的某些条目。目前我在 Postgre 中使用休眠。我所做的是读取数据库的当前值,然后在该值上加一并保存每个请求。但是如果两个人同时阅读数据库并添加它,它就不会像我想要的那样计算。我有一些建议让它“同步”。但是,如果请求数量变大,某些用户可能会出现相当长的延迟。
有没有更快的方法来更新一个值+1,而不用读写它?如果最佳做法是使用同步,那么如何使其更快(更少等待时间)?
【问题讨论】:
-
你的持久性怎么样? “普通的”JDBC 或 JPA?如果是 JPA,只需使用 EJB 作为服务层。您将受益于透明的容器管理事务管理。如果是“plain vanila” JDBC,那么,好吧,寻找像 Spring 这样的遗留框架。它有一个
JdbcTemplate的东西。
标签: java database servlets synchronization