私は、キーストアを使用して暗号化キーを格納および取得しています。しかし、キーストアのサイズがキーストアのオペレーションよりも大きくなると、動作が遅くなります。Java Keystore.getKey()が遅いキーストアサイズが増加する
私はLinuxプラットフォーム、JavaバージョンJdk_1.8で作業しています。プロバイダとしてのセーフネット。
私は、キーストアを使用して暗号化キーを格納および取得しています。しかし、キーストアのサイズがキーストアのオペレーションよりも大きくなると、動作が遅くなります。Java Keystore.getKey()が遅いキーストアサイズが増加する
私はLinuxプラットフォーム、JavaバージョンJdk_1.8で作業しています。プロバイダとしてのセーフネット。
私は実行速度に関連する同じ問題に直面しているが、異なるオペレーティングシステムプラットフォームによって異なります。
Jvmはキーストアをメモリにロードします。そして内部ストレージとしてのハッシュテーブルコレクションを持っています。
ハッシュテーブルが同期されています。
キーストアからget操作を実行するたびに、物理キーストアからではなくメモリ内キーストアから取得されるよりも、get操作を実行するたびに LinuxベースのOSで( "top" - %wa section)コマンドを使用して確認できます。
キーストアはハッシュテーブルを使用しており、パフォーマンスの低下の根本原因です。
私はプロジェクトを初期化している間にキーストアのすべてのキーをConcurrentHashMapにロードすることでこの問題を解決しました。後で、 すべての読み取り操作は、キーストアの代わりにMAPから実行されます。 そして、すべての書き込み操作がキーストアとMAPの両方で実行されることを確認してください。
はい私と一緒に働いています。私はデータを読み取るためにマップを使用し、それは私のために働く..しかし、なぜjavaキーストアはhastableを使用するのですか? –
私がsafenet jarファイルをキーストアプロバイダとして使用していて、プロバイダとしてsafenetを削除したときに&のデフォルトプロバイダを使用した場合、パフォーマンスに関連する問題に直面しませんでした。
パフォーマンスが問題になるときの店舗の規模は?この情報を回答ではなく質問に追加してください。 – zaph
これは@Nirav Shahの質問に関連していますか?その場合は、質問の1つを調整して削除してください。 http://stackoverflow.com/q/38456568/451475 – zaph
の重複しています。私の質問はキーストアの制限に関係しています。ありがとうZaph –