0

Hibernate、Struts2、Spring フレームワークを使用して、何百万ものユーザーが同時に情報や注文を送信するときにデータベースの主キーを生成するのに適した方法はどれですか?

いくつかのオプションがあります:

1: 「uuid」で生成

2: "sequence" で生成する

3: あなたのソリューション...

(データの移植性と効率を考慮して)

4

2 に答える 2

0

データベースを使用して一意のキーを管理します。

  INSERT INTO yourTable (yourSequence.nextval(), COLUMN1, COLUMN2, ... )

アプリケーションで独自のキーを生成することは確かに機能しますが、アプリケーションが複数のサーバーにスケーリングされる場合、その準備をしないと問題が発生する可能性があります。

MySQL を使用している場合は、AUTO_INCREMENT を使用できます - http://www.tutorialspoint.com/mysql/mysql-using-sequences.htm

于 2013-08-30T12:57:01.963 に答える
0

hibernate ジェネレーターの実装を見てください - http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/mapping.html#mapping-declaration-idさまざまなタイプがあります。

私は HiLo アルゴリズムを好みます。ここで説明を参照してくださいHi/Lo アルゴリズムとは何ですか? 大量のデータに対して優れたスループットを提供するためです。

クラスター化されたプライマリ インデックスと一緒に使用されるため、Guidはあまり適切なプライマリ キーではないことに注意してください。

于 2013-09-05T20:44:14.443 に答える