1

私たちは、mySQLデータベースに接続する必要のあるnode.jsサーバーを実行しています。 GoogleはAmazon RDSでデータベースをホストしましたが、今はGoogle SQLに移行しており、10分後にサーバーがランダムに接続を切断することに問題があります。Googleのクラウドコンピューティングエンジンのインスタンスでtcp_keepalive_timeを設定できません

どうやらそれは機能ではなく、バグだし、ここで説明したようにこの問題を回避するには、我々はから接続しているマシンで低TCPキープアライブを設定している:https://cloud.google.com/sql/docs/diagnose-issues

コードは次のようになります。

echo 'net.ipv4.tcp_keepalive_time = 60' | sudo tee -a /etc/sysctl.conf 
sudo /sbin/sysctl --load=/etc/sysctl.conf 

sysctl: cannot stat /proc/sys/net/ipv4/tcp_keepalive_time: No such file or directory 

私たちは、このマシンへのrootアクセス権を持っていますが、私たちも、手動でファイルという名前のトンを作成することはできません。コードを実行するときに

は残念ながら、私が取得しますこのフォルダのcp_keepalive_time。

解決策は公式のGoogle Cloud SQLドキュメントから来ているため、説明されているとおりに動作するはずです。

共有する人はいますか?事前に感謝:)

+0

これは第1世代または第2世代のインスタンスですか? – Vadim

+0

これは、他のほとんどのMySQLドライバとは異なり、キープアライブを有効にしないnode-mysql/node-mysql2ドライバも原因です。この回答を確認する:http://stackoverflow.com/a/35710201/350488 – Vadim

答えて

0

自動応答:

あなたが管理者としてファイルシステムにアクセスすることはできません(明らかに)ウェブ/クラウドコンソールから

は、私たちは、SSHキーを作成するPuTTYgenを、therminalからログインする(のgcloud SDKから)のgcloud AUTHを使用して、パテは適切なsshクライアント(代わりのクラウドSSHコンソールからマシンにSSHで接続します)、確かにそれは働いた。

奇妙なことに、これは同じ問題を持つ他の誰かに役立つことを願っています!

関連する問題