> 백엔드 개발 > PHP 튜토리얼 > 10초마다 데이터를 얻어 하루 평균 8640번의 데이터를 찾아내는 좋은 알고리즘이 있을까요?

10초마다 데이터를 얻어 하루 평균 8640번의 데이터를 찾아내는 좋은 알고리즘이 있을까요?

WBOY
풀어 주다: 2016-08-27 09:06:54
원래의
1233명이 탐색했습니다.

그렇습니다. PHP 쪽에서는 10초마다 하위 서버의 데이터를 가져와야 하는데, 매번 데이터베이스에 쓰고 시간을 기록하면 결국 데이터 양이 너무 많아지게 됩니다. .. 서브서버가 100개가 되면 성능상의 문제가 발생하게 됩니다. Redis를 작성하는 것도 고려했지만, Redis를 작성하면 json 문자열이 너무 커서 평균을 계산하는 것도 번거롭습니다. 문제를 해결할 수 있는 좋은 알고리즘이 있나요? 예를 들어, 일정 기간이 지난 후 평균값을 계산할 수 있거나 데이터를 저장할 때 좋은 제안이 있으면 도움이 되길 바랍니다. 모두 감사합니다!

답글 내용:

그렇습니다. PHP 쪽에서는 10초마다 하위 서버의 데이터를 가져와야 하는데, 매번 데이터베이스에 쓰고 시간을 기록하면 결국 데이터 양이 너무 많아지게 됩니다. 서브서버가 100개 있으면 성능 문제가 더 심각할 것 같은데, redis로 작성하면 json 문자열도 너무 커서 평균 계산도 귀찮습니다. 문제를 해결할 수 있는 좋은 알고리즘이 있나요? 예를 들어, 일정 기간이 지난 후 평균값을 계산할 수 있거나 데이터를 저장할 때 좋은 제안이 있으면 도움이 되길 바랍니다. 모두 감사합니다!

음. 참 멍청하네요. 데이터를 받을 때마다 횟수를 기록하고, 새로운 데이터가 들어올 때마다 기존 데이터에 더해 최종적으로 총 횟수로 나누는 것이 효과가 있을까요?

그리고 데이터를 저장할 때 일괄적으로 쓸 수도 있고, 예를 들어 서버 100개를 읽고 한 번 쓰고, 총 10번 쓸 수도 있습니다. 10초에 데이터베이스에 10번 쓰면 데이터베이스에 아무런 부담도 주지 않습니다

질문 소유자의 방식이 맞습니다. 데이터가 올 때마다 댓글이 계산되고 그 옆에 총 개수 카운터가 설정됩니다

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿