2010-05-30 3 views
0

내 문제는 다소 복잡합니다. 기본적으로 나는 잠시 동안 매우 잘 작동하는 클라이언트/서버 CMS 아키텍처를 만들었습니다. 이제는 더 많은 고객이 생겨서 매우 느리게 진행되고 있으며이를 수정하는 방법을 알지 못합니다.원격 데이터베이스가있는 cms : 성능 문제

현재 아키텍처를 설명해 드리겠습니다. 다양한 고객에게 서비스를 제공하기 위해 콘텐츠 관리 시스템을 개발했습니다. 각 고객이 자신의 웹 사이트 콘텐츠를 관리하는 계정을 가지고있는 CMS 서버가 있습니다. 모든 고객은 동일한 인터페이스에서 작업하고 cms 서버의 동일한 데이터베이스에 컨텐츠를 저장합니다. 그래서 모든 신규 고객을 위해 CMS 서버에서 새 계정을 열면 콘텐츠 관리를 시작할 수 있습니다.

해당 콘텐츠를 표시하려면 각 고객에 대해 사용자 지정된 웹 사이트를 만들어야합니다. 웹 사이트 프론트 엔드가 내 서버 중 하나에서 실행될 수 있거나 고객이 직접 호스팅 할 수 있습니다. 이 프론트 엔드는 이제 컨텐츠를 가져 오기 위해 CMS 서버에 연결해야합니다.

CMS 서버에는 "share.php"라는 PHP 파일이 있습니다. 'content_ID'와 같은 매개 변수를 추가하여 콘텐츠를 지정할 수 있습니다. 그러면 php 파일은 해당 내용을 JSON 형식으로 표시합니다. 프론트 엔드의 은 file_get_contents("{cms_server}/share.php?content_ID=34");을 사용하여 CMS 서버에서 데이터를 검색합니다.

내가 말했듯이, 그 시스템을 사용하는 고객이 거의 없을 때는 꽤 잘 돌아갔다. 이제는 페이지로드가 최소 몇 초 동안 지속되며 점점 더 악화됩니다.

나는 cms 서버의 성능을 높이거나 file_get_contents()로 데이터를 검색한다는 개념을 사용합니다. 큰 시간을 빨아 먹는거야? : D

이 문제를 해결하는 방법에 대한 권장 사항에 감사드립니다. 건배.

답변

1

아마도 데이터베이스를 살펴볼 필요가 있습니다. 인덱스를 추가해야합니까? 중복 전화를하고 있습니까? 하나의 큰 SELECT로 만들 수있는 많은 작은 SELECT를 만들고 있습니까? 기타 등등.