オンプレミスの Atlassian Crowd のデータ ストレージとして SQL Server Azure を数日間使用しようとしましたが、大きなパフォーマンスの問題が発生しています。
たとえば、クラウド管理アプリケーションは非常に遅く、ほとんど使用できません。
この種のソリューションのセットアップに成功した人からアドバイスをもらえないかと思っていました。
私がこれまでに行ったこと:
- オンプレミスの SQL2008R2 データベースにオンプレミスの Atlassian Crowd 2.4.2 をセットアップする
- データベースのスクリプトを作成し、azure データベースでスクリプトを実行する (セットアップ スクリプトがテーブル hibernate_unique_key の azure 必須のクラスター化インデックスを欠いているため、azure で直接セットアップできませんでした)
- 必須のクラスター化インデックスを azure hibernate_unique_key テーブルに追加する
- SSL を使用した JDBC 接続のセットアップ
群衆をデータベースに接続しても問題はありませんが、すべてが非常に遅いです。Crowd の起動には 5 分ほどかかりますが、オンプレミスの SQL サーバーでは 20 秒ほどかかります。クラウド管理 Web コンソールへの往復には、30 秒ほどかかります。
データベースのサイズは 1Mb 未満です。Azure でのクエリ実行の概要には、問題のあるクエリは表示されません。
SQL Azure Db は、SQL Server Manager またはオンプレミスの .Net Web App に対して非常に反応的であることを忘れていました。
jtds jdbc ドライバーと MS JDBC ドライバー 4.0 の両方をデータ暗号化で試しました。私は群衆によって提供された両方のsqlDialectを試しました。それは必死に遅いままです。
MS JDBC 4.0 ドライバー (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\KeepAliveTime 、KeepAliveInterval、TcpMaxDataRetransmission) で述べられているように、Azure の特別なレジストリ キーを設定しようとしました。
多分それはから来ます:
- Azure で群衆によって行われたクリーンなセットアップから始めないという事実 (クラスター化されたインデックスの問題のため)
- Sql Azure は utc 時間を使用して、毎回「何か」を期限切れにします。
誰かがこの問題についてアドバイスをくれたらうれしいです。