2012-10-26 5 views
0

5000 개가 넘는 항목이있는 RSS 피드가 있습니다. 사용자 인터페이스에서 다른 카테고리를 기반으로 맞춤 검색을 수행 할 수있는 검색 기능을 갖기 위해 노력하고 있습니다. 처음에는 페이지가로드 될 때 처음로드 된 10 개의 피드가 실제로는 빠르게로드되지만, 선택한 카테고리로 검색 할 문자열을 입력하면 처리 속도가 느려집니다. 매번 모든 피드 항목을 통과하는 것보다 효율적으로 처리하는 방법이 있는지 알고 싶습니다.RSS 피드 검색

큰 RSS 피드를 처리하고 검색하기위한 아이디어를 찾고 있기 때문에 여기에 코드를 추가하지 않습니다. 지금까지 PHP (단순 XML)와 JavaScript를 사용해 왔습니다.

답변

2

RSS (및 일반적으로 XML)는 훌륭한 데이터 전송 형식입니다. 랜덤 액세스를 통해 해당 데이터에 액세스하는 데 적합한 형식이 아닙니다.

PostgreSQL 또는 MySQL과 같은 데이터베이스에 피드를 가져 와서 (올바르게 원시 XML을 덤프하지 말고) 데이터베이스 서버에서 제공하는 전체 텍스트 검색을 사용하십시오.

0

세션 변수를 사용하여 모든 피드를 저장할 수 있습니다. 백그라운드에서 새 피드를 확인하는 폴링 스크립트가 있습니다. 하나를 얻으면 세션에 추가하십시오. 세션 변수를 사용하여 피드를 검색하십시오.

1

SimpleXML을 사용하지 마십시오. (실제로는 전혀 사용하지 않아야합니다.) 오히려 DOMDocument 클래스를 사용하여 XML을 파싱합니다.