0
分散システムがあり、サーバAとBが同じデータをデータベース上で同時に更新しようとしているとします。そして私たちはHibernateを使用します。Hibernate - 複数のサーバが同じデータを変更しようとしています
この場合、Hibernateはどのように動作しますか?どのようなロック機構が必要ですか?
分散システムがあり、サーバAとBが同じデータをデータベース上で同時に更新しようとしているとします。そして私たちはHibernateを使用します。Hibernate - 複数のサーバが同じデータを変更しようとしています
この場合、Hibernateはどのように動作しますか?どのようなロック機構が必要ですか?
最も一般的な解決策は、optimistic lockingを使用することです。あなたのエンティティにversion
列を追加することになります。@Version
と注釈が付けられています。
version
は、各コミットの前にHibernateによってチェックされ、データベースのバージョンが保存されるエンティティのバージョンより新しい場合、例外がスローされます。
偉大な答えをありがとう。 – erolkaya84
私は助けてくれて嬉しいです。 –