当然,我们可以这样做:
User old = userRepository.findOne("xxx@gmail.com");
old.setFollwersNumber(old.getFollwersNumber() + 1);
userRepository.save(old);
但它不是线程安全的,不是吗?
答案 0 :(得分:0)
您是否担心两个人同时关注同一个用户,然后这个号码不正确?
为什么不编写一个查询关注者数量的查询,而不是更新User对象来跟踪关注者的数量?你有下表或可以查询的东西吗?这样可以防止两者失去同步。
有多种选项可以在应用程序中缓存/过期此数据以提高性能。
答案 1 :(得分:0)
您可以lock查询对象available lock modes