예상 값을 클라이언트에 json 형식으로 반환하는 PHP 애플리케이션이 있습니다. 나는 변수에 을 더 모으고 있기 때문에 모든 데이터를 보유하고 있습니다.거대한 데이터 세트를 변수에 저장 (메모리 예외 오류)
고객이 짧은 기간에 대해서만 값을 요청하면 인생은 좋으며 그는 요청한 것을 얻습니다. 문제는 그가 1 년 또는 그 이상의 예측을 요구할 때입니다. 변수에 저장된 데이터 집합이 거대하기 때문에 예외 메모리 오류가 나타납니다.
나는 메모리를 확장하고 싶지 않습니다. 나는 그것을 대체하는 방법으로 생각하고 있습니다.
나는 메모리 매핑 된 파일을 발견했다. 그것은 좋은 해결책입니까 아니면 다른 사람들을 생각할 수 있습니까? 고맙습니다!
나는 gearman을 사용하고 작업자가 검색 한 각 데이터에 대해 값이있는 새 배열이 예측 변수에 추가됩니다.
일단 모두 완료되면 클라이언트로 반환합니다.
public function requestCompleteApi(\GearmanTask $task)
{
$this->forecast[] = unserialize($task->data());
}
처럼하지 JSON하지만, 더 컴팩트 한 포맷을하려고하면 아마 당신은 어쩌면 당신은 더 적은 메모리를 사용할 수 PHP Generators
클라이언트가 데이터를 저장하거나 표시 할 필요가 있습니까? 단지 페이지를 표시하고 싶다면 매 페이지마다 약 50 개의 결과가 표시되는 페이지 매김을 시도해보십시오. – vlatkozelka
예, 클라이언트는 데이터를 다른 곳에서 처리해야합니다. –