2つの別々のwebapp(java)が同じdb(postgres)を使用できますか?
それは問題でしょうか?それについて何か提案はありますか?クエリで「ロック」を使用するだけで十分でしょうか?
1 つのデータベースを使用する 2 つのアプリケーションは、データベースへの複数の接続を使用する 1 つのアプリケーションとほとんど同じであるため、おそらく既に実行しているでしょう。考えられる問題はすべてまったく同じです。データベースは、接続が 1 つのアプリケーションから行われたのか、他のアプリケーションから行われたのかさえわかりません。
はい、できます。2 つのアプリケーションに同じ名前のテーブルがある場合 (たとえば、両方のアプリケーションに「user」という名前のテーブルがある場合)、問題が発生する可能性があります。この正確な理由から、テーブル名にプレフィックスを付けるのは適切なスタイルと考えられているため、アプリ 1 には「app1_user」などのテーブルが含まれる場合があります。
長い答えの短い: テーブル名が重複していない場合、問題はありません。
はい、2 つの Web アプリに同じ DB を使用できます。また、複数の Web アプリが同じデータベースにアクセスしていない場合でも、同時読み取り/書き込みトランザクション中に問題が発生する可能性があります。postgres で回避するには、このドキュメントを参照してください。