2012-02-10 2 views
7

MySQL 쿼리 읽기/쓰기 비율, 초 단위로 실행되는 쿼리, 테이블 및 데이터베이스의 속성, PHP 구성과 관련된 추가 입력 등 여러 가지 입력을 받아 시스템 리소스 요구를 예측할 수있는 소프트웨어 또는 방법이 있습니까?시스템 자원 요구를 예측하는 방법은 무엇입니까?

예. 아마도 소프트웨어가 제공 할 수있는 완벽한 솔루션이 없을 수도 있지만 완벽한 솔루션을 기대하지는 않습니다.

+0

앱의 규모와 그에 대해 실행할 쿼리의 종류에 대해 알고 있습니까? – Mike

+2

예측에 대해서는 알지 못하지만 jMeter와 같은 도구를 사용하여 서버로드를 시뮬레이션 할 수 있으며 XDebug와 같은 PHP 디버거의 프로파일 링 기능을 사용하여 PHP 스크립트의 실행 시간을 그림으로 작성할 수 있습니다. 프로파일 자체가 실행중인 스크립트에 상당한 양의 오버 헤드를 추가 할 수 있으므로 성능 최적화 유틸리티로서의 코드 유용성이 제한 될 수 있으므로 코드 최적화에 대해 불만을 가지고 있습니다. – GordonM

답변

0

유용 할 수있는 몇 가지 도구는 다음과 같습니다. AWS Cloudwatch,하지만 EC2에서만 작동합니다. 예를 들어 CPU 사용량과 같은 알람을 설정하면 75 %를 초과하는 순간 알람 이메일이나 SMS가 전송되므로 그에 따라 주변을 둘러 볼 수 있습니다.

AWS Elsatic Load Balancer는 트래픽을 더욱 분산시키고 건강에 해로운 인스턴스를 공개하고 트래픽을 더 건강한 서버로 라우팅하는 데 도움을줍니다.

일부 모니터링 도구는 이름이 누락되었습니다 ...하지만 자체 모니터링 방식으로 문제를 해결할 수있는 경우 webmin과 같은 제어판을 사용할 때 CPU 사용량, RAM 사용법, 기억 장치, 등등 ...

그리고 마지막으로, 다만 개념, 그러나 완료하기 위하여 제비를 가지고 가고, 나는 위의 방금 언급 한 algolicious를 따라갈 것이고, cron에서 작동 할 수있는 수학 모델을 만들 것입니다. 5 분간 관찰을 기록 할 수 있으며 필요한 경우 조치를 취할 수 있습니다.

0

시스템 리소스 예측을 계산하는 수학적 모델을 만들 것입니다. 나는 베이지안 통계에 기초한 경험적 확률 밀도 추정을 계산할 것이다. 더 공식적으로이 같은 계산하려면 :

E [메모리 | CPU = 0.9, QuerySpeed ​​= 0.6, ...]

당신은 베이 즈 정리하여 새로운 신호 이벤트를 기반 배포를 업데이트 할 수 있습니다

P (A | B) = P (B | A) P (A)/P (B)

이것은 새로운 경험적 증거에 적용됩니다.

+0

감사하지만 이해할 수 없었습니다. 당신은 그것을 단순화 할 수 있습니까? –

0

또 다른 옵션은 Amazon Web Services와 같은 확장 가능한 플랫폼을 사용하는 것입니다. 마이크로 인스턴스로 시작하여로드 균형 조정을 구성하여 필요에 따라 더 많은 인스턴스를 시작할 수 있습니다.

평균 리소스 요구 사항을 결정한 후에는 필요에 따라 이미지의 크기를 더 크게 또는 더 작게 조정할 수 있습니다.

http://aws.amazon.com 는 http://tuts.pinehead.tv/2011/06/26/creating-an-amazon-ec2-instance-with-linux-lamp-stack/

0

mysqltuner는 펄 기반의 스크립트입니다 ..

내가보기 엔 당신이 하나를 시도하는 것이 좋습니다

...

다운로드 mysqltuner 여기에서

http://mysqltuner.pl/mysqltuner.pl 

의 명령 줄 응용 프로그램과 당신에게 현재 응용 프로그램에 필요한 리소스는 무엇입니까?

관련 문제