当前副本集状态:已经有两个节点,一主一从,storageSize:16G。
遇到的问题:通过rs.add()增加新副本集节点,rs.status()显示新节点已增加,stateStr为“STARTUP2”。一段时间后,新节点mongo进程崩溃,经查物理内存被耗尽。除了换更大内存的机器,有什么方式能解决这个问题吗?
认证高级PHP讲师
1. 説明されている状況から判断すると、初期同期でパフォーマンスの問題が発生していることがわかります。
2. したがって、初期同期を最適化していない場合は、追加するノードにデータベースをバックアップ/復元してから、同期データを削減することを検討できます。 >
マシンの構成がわかりません。システムの OOM キラーによって強制終了されたのでしょうか?それが oom キラーである場合は、スワップを追加してこの問題を回避できます。 さらに、@bguo はバックアップからノードを復元できることをすでに述べています。具体的な方法についてはドキュメントを参照してください。ただし、それでも一定量のスワップが推奨されます。
最初に devtool などのツールを使用して見つけます。Profiles->Take Heap Snapshot処理する文字が多数ある場合は、上位に配置されたために解放されていない文字列があるかどうかを検討する必要があります。レベルスコープ
Profiles->Take Heap Snapshot
1. 説明されている状況から判断すると、初期同期でパフォーマンスの問題が発生していることがわかります。
2. したがって、初期同期を最適化していない場合は、追加するノードにデータベースをバックアップ/復元してから、同期データを削減することを検討できます。 >
3. バックアップ/復元にはさまざまな方法があります。実際には、Ops Manager が適しています。マシンの構成がわかりません。システムの OOM キラーによって強制終了されたのでしょうか?それが oom キラーである場合は、スワップを追加してこの問題を回避できます。
さらに、@bguo はバックアップからノードを復元できることをすでに述べています。具体的な方法についてはドキュメントを参照してください。ただし、それでも一定量のスワップが推奨されます。
最初に devtool などのツールを使用して見つけます。
Profiles->Take Heap Snapshot
処理する文字が多数ある場合は、上位に配置されたために解放されていない文字列があるかどうかを検討する必要があります。レベルスコープ