웹사이트의 SMS 전송 인터페이스가 사람들에 의해 반복적으로 호출되어 앱 실행 성능에 심각한 영향을 미치고 있습니다. 먼저 웹사이트를 종료했지만 여전히 인터페이스가 호출되고 있으며 성능 문제는 아직 해결되지 않았습니다. 솔루션 아이디어를 요청하세요
환경: Windows Server 2008 + apache + php + mysql
PHP中文网2017-05-16 13:11:25
여러 가지 솔루션 아이디어가 있는데, 각각 간략하게 소개하겠습니다.
첫 번째 방법은 access.log 로그를 확인하여 인터페이스 액세스 상태를 살펴보는 것입니다. 1분 내에 IP가 수십 번 사용되는 경우 해당 IP에 대해 속도 제한이나 차단을 수행해야 합니다. , 이 IP와 같은 다시 접속할 때 사용자 정의 규칙에 따라 일정 기간 내에 접속을 허용하거나 단순히 직접 블랙리스트에 올릴 수 있으며 네트워크 계층은 직접 모든 접속을 거부합니다.
두 번째 아이디어는 접속 IP, 분당 최대 방문 횟수, 접속 시간을 기록하는 것입니다. 사용자가 인터페이스에 접속하여 성공적으로 제출하면 관련 정보가 Memcache 또는 Redis에 배치되고 비교가 이루어집니다. 만료된 경우 다시 제출하세요. 만료되지 않은 경우에는 제출하지 마세요.
세 번째 아이디어는 역방향 프록시를 사용하여 내부적으로 인터페이스를 호출한 다음 프록시 계층에서 액세스를 제한하는 것입니다. 사실 첫 번째 아이디어와 크게 다르지 않습니다.
위 내용은 저의 개인적인 생각이며 최선의 해결책이 아닐 수 있습니다.
PHP中文网2017-05-16 13:11:25
SMS 인터페이스는 제한되어야 합니다. 인증번호 제한, IP 제한, 휴대폰 번호 제한 등이 있습니다. 그렇지 않으면 매일 수만 달러가 소비될 수 있습니다
PHP中文网2017-05-16 13:11:25
1. 서버는 각 휴대폰 번호가 하루에 전송되는 횟수를 제어합니다. 예를 들어 하루에 3번만 보낼 수 있습니다
2. 서버에서 문자를 보낼 때마다 인증번호를 입력해야 합니다