>  기사  >  백엔드 개발  >  커널: TCP: 시간 대기 버킷 테이블 오버플로 문제

커널: TCP: 시간 대기 버킷 테이블 오버플로 문제

WBOY
WBOY원래의
2016-08-08 09:26:501351검색

커널: TCP: 시간 대기 버킷 테이블 오버플로 문제

최근에 elk를 사용하여 시스템 로그를 수집했는데 일부 시스템에서 커널 오류가 많이 발생하는 것을 발견했습니다.
인터넷상의 대부분의 의견은 커널 매개변수 net.ipv4.tcp_max_tw_buckets를 늘리라는 것입니다. 그런데 원칙은 말하지 않았다

생각해 보니 실제로 tw_buckets는 시간 대기 버킷 테이블이 꽉 찼다는 뜻이다.
왜 꽉 차있나요?

<code>netstat -an<span>|more</span></code>

시간 초과 링크 보기
보통 웹서버 때문에 발생하는 포트 80이기 때문에 keepalived를 생각하는 것이 당연합니다.

그 후 제가 한 일은 keepalived를 끄고 tcp_max_tw_buckets의 값을 2w로 조정한 것인데, 관찰해보니 기본적으로 그런 알람은 없습니다.

특히 전달 백엔드가 필요한 일부 클러스터의 경우 개인적으로 연결 유지를 꺼서 더 적은 수의 연결이 유지되는 것이 가장 좋다고 생각합니다.

위 내용은 관련 측면을 포함하여 커널: TCP: 시간 대기 버킷 테이블 오버플로 문제를 소개했습니다. 이 내용이 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:nginx 변수다음 기사:nginx 변수