所有している VPS に PostgreSQL をセットアップしました。データベースにアクセスするソフトウェアは PokerTracker というプログラムです。
PokerTracker は、オンライン ポーカーをプレイしている間、すべてのハンドと統計を記録します。
これを複数の異なるコンピューターからアクセスできるようにしたかったので、VPS にインストールすることにしました。いくつかの問題の後、エラーなしで接続できました。
ただし、出来はひどいです。私は「リモートpostgresqlが遅い」などについてたくさんの調査を行ってきましたが、まだ答えを見つけていないので、誰かが助けてくれることを願っています.
注意事項:
実行しようとしているクエリは非常に小さいです。VPS でローカルに接続している間、クエリは即座に実行されます。
リモートで実行している場合、クエリの実行には約 1 分 30 秒かかります。
VPS は 100MBPS で実行されており、接続元のコンピューターは 8MB 回線上にあります。
2 つの間のネットワーク通信はほぼ瞬時に行われます。遅延なく問題なくリモート接続でき、MSSQL を実行する複数の Web サイトをホストしています。すべてのクエリは、リモートまたはローカルで接続されているかどうかに関係なく、即座に実行されるため、PostgreSQL に固有のようです。
私は彼らの最新バージョンのソフトウェアと最新の互換バージョンの PostgreSQL を彼らのソフトウェアで実行しています。
データベースは新しいデータベースで、ほとんどデータが含まれておらず、真空/分析などをすべて無駄に実行しましたが、改善は見られません。
MSSQL がほぼ瞬時にクエリを実行する方法がわかりませんが、PostgreSQL は非常に苦労しています。
問題なく VPS IP のポート 5432 に telnet できます。クエリが実行されると言うように、非常に長い時間がかかります。
私が気づいたのは、クエリが実行されているときにルーターで帯域幅がほとんど使用されていないことです-しかし、単純なクエリではそうなるとは思いませんが、これが問題かどうかはわかりません 現在、3 つの異なるネットワーク (異なるルーターを含む) でリモート接続を試みましたが、問題は残ります。
LAN経由で別のマシンを介してリモート接続するのは簡単です。
また、postgre conf ファイルを編集して、より多くのメモリ/バッファーなどを許可しましたが、これが問題だとは思いません。私が求めていることは非常に単純です。まったく集中的であってはなりません。
ありがとう、リッキー
編集: クライアントとサーバーの両方が Windows を実行していることに注意してください。
構成ファイルからの情報は次のとおりです。
pg_hba - 現在すべてのトラフィックを許可: # TYPE DATABASE USER CIDR-ADDRESS METHOD # IPv4 ローカル接続: ホスト すべて すべて 0.0.0.0/0 md5 # IPv6 ローカル接続: # 全ホスト ::1/128 md5
そしてpostgresqlconf - 私は、それが問題であるかどうかをテストするために、この設定に巨大な量のバッファ/メモリを与えたことを知っています - コメントされていない行のみを表示します:
listen_addresses = '*' ポート = 5432 最大接続数 = 100 共有バッファ = 512MB work_mem = 64MB max_fsm_pages = 204800 shared_preload_libraries = '$libdir/plugins/plugin_debugger.dll' log_destination = 'stderr' logging_collector = オン log_line_prefix = '%t' datestyle = 'iso, mdy' lc_messages = 'English_United States.1252' lc_monetary = 'English_United States.1252' lc_numeric = 'English_United States.1252' lc_time = 'English_United States.1252' default_text_search_config = 'pg_catalog.english'
他に必要な情報があれば、お知らせください。ご助力いただきありがとうございます。