2016-11-03 6 views
-1

약간의 출처 (123)에서 나는 사람들이 요청을 제한하려고 할 때마다 "Tomcat을 Apache 뒤에 감싸고 Apache의 속도 제한"이라고 생각하는 것으로 나타났습니다. 또한 iptables 솔루션도 있지만 HTTP 429 ("너무 많은 요청")에는 응답하지 않습니다.Tomcat에 기본 제공 속도 제한 필터가없는 이유는 무엇입니까?

아파치는 괜찮습니다.하지만 소규모 서블릿 배포를 즉석에서 처리 할 수 ​​있으면 좋지만, 요청 제한을 요청하고 아파치 계층을 설정하는 것은 (적어도 우리는 이미 어쨌든하고있는 web.xml 파일을 복제하는 것과 비교할 때).

그래서 (엄청난 양의 노력이 아닌 것처럼 보이기 때문에) 작은 필터를 코딩하고 서블릿으로 패키징하려고합니다. 그러나 정교한 Tomcat 속도 제한 필터가 개방은이 접근법이 순진 할 수도 있음을 암시합니다. 내 말은, 이것은 매우 일반적이고 많은 것이 오픈 소스가 요즘 가능하다고 느낍니다. 아파치 솔루션을 정당화하는 좋은 이유가있다. Apache has so many options Tomcat에는없는 것으로 보입니다.

(Jetty does seem to ship with one such filter though, 서블릿 컨테이너 임에도 불구하고.)

왜 톰캣 부족 내장 된 속도 제한 필터를합니까?

답변

0

톰캣에는 rate-limit filter valve이 내장되어 있습니다. 필요에 맞게 수정해야합니다.

+0

이제 나는 더 많은 어려움을 겪습니다. 그것은 밸브가 아니라 필터입니다. 왜 필터로 구현되지 않았습니까? –

+0

일반적으로 응용 프로그램에 도달하기 전에 들어오는 요청을 중지하기를 원하기 때문에 인증 리소스를 사용하십시오. 필터는 항상 필터 전에 실행되지만 밸브는 순서에 관계없이 사용할 수 있습니다. 이 밸브를 밸브로 만들면 가능한 한 빨리 실패하도록 처리 시작시 삽입 할 수 있습니다. –