您好,登錄后才能下訂單哦!
小編給大家分享一下解決mongodb中web不能訪問的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家學習,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去學習方法吧!
在運維中,經常遇到WEB服務器連接不上MONGODB的情況,下面對常用的情況進行一下分析:
1、MONGODB連接數超過20000。
mongodb的連接數有20000這一限制,如果WEB端沒有配置連接池,系統忙的時候很容易超過該值。
如果WEB端已經設置好了連接池,還是超過這么多,說明系統確實很繁忙,需要考慮集群方案,用多個路由節點來承接請求。
2、WEB服務器網絡問題。
web端系統日志報錯:ip_conntrack: table full, dropping packet
該報錯說明web服務器有掉包情況,需要更改配置。
# vim /etc/sysctl.conf 添加如下行 net.ipv4.netfilter.ip_conntrack_max = 655350 net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1200
有些系統是添加如下2行
net.nf_conntrack_max = 524688 net.netfilter.nf_conntrack_tcp_timeout_established = 1200 # sysctl -p
上面狀態跟蹤表的最大行數(nf_conntrack_max)最大值計算方式如下:
CONNTRACK_MAX = RAMSIZE (in bytes) / 16384 / (ARCH / 32)
因此內存為32G的64位系統的狀態跟蹤表的最大行數理論值為:
CONNTRACK_MAX = 32*1024*1024*1024/16384/2 = 1048576 # echo "163840" > /sys/module/nf_conntrack/parameters/hashsize
哈希表大小通常為總表的1/8,最大為1/2:
CONNTRACK_BUCKETS = CONNTRACK_MAX / 8
3、MONGODB 等待隊列過多,導致連接超時。
參考本博:http://blog.csdn.net/dbabruce/article/details/50914359
4、是否能telnet連通mysql ip+port,防火墻問題iptables。
查看MYSQL服務器端是否限制了27017端口的訪問。
以上是解決mongodb中web不能訪問的方法的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。