2011-03-30 2 views
2

새 프로젝트를 통해 클라이언트 측 템플릿과 많은 자바 스크립트를 사용하여 json-rpc 방식을 선택했습니다. 문제는 - 아파치와 PHP는 (사실 PHP는 json 쿼리를 구문 분석) 꽤 느립니다. 페이지 당 약 20 개의 쿼리가 있으며 모든로드가 완료되는 데 시간이 오래 걸립니다.JSON-RPC 및 성능 문제

내 꿈은 자바 스크립트를 직접 TCP/IP 프로토콜과 백엔드 (PHP로 작성)에 연결하는 것이 가능하지만 플래시 없이는 불가능하다는 것을 알고 있습니다.

이 솔루션의 속도를 향상시키는 방법을 제안 해 주시겠습니까? 어쩌면 아파치를 nginx로 대체하거나 전용 httpd를 써서도 도움이 될까요?

답변

1

귀하의 사례는 사소한 것이 아니므로 해결책도 사소하지 않습니다.

phpDaemon은 고성능 true-Fast-CGI 솔루션입니다. phpDaemon을 사용하면 코드 초기화에 오버 헤드없이 실행되므로 한 번 초기화하면 스크립트가 많은 요청을 처리 할 수 ​​있습니다.

2

페이지 당 20 개의 쿼리를 작성하는 경우 더 나은 데이터 교환 형식이 많은 도움이 될 것입니다. 엄청난 양의 JSON을 다루지 않는다면 성능 향상을위한 가장 간단한 방법은 질의 수를 줄이는 것입니다 (아마도 일괄 처리를 통해).

도움이 될 몇 가지 다른 것들 : 있는지 확인 아파치, 모든 JSON은 gzip으로 압축되고 있는지 확인 MinSpareServers를 사용하여 충분한 예비 과정이있다 (예를 들면, mod_deflate를 사용)에 JSON을 디코딩하는 것은 실제로 있는지 확인하는 코드를 프로파일 링 느린 것, 그리고 느린 DB 쿼리와 같은 시간이 들지 않습니다.

+0

예, HTTP 요청은 상당히 비쌉니다. 그리고 브라우저는 대다수를 동시에 수행 할 수 없습니다. – Krab