2011-03-27 6 views
1

데이터베이스에 약 200,000 (200 만) 레코드가 있습니다. 클라이언트는 한 번에 5,000 개의 레코드를 브라우저에 표시하려고합니다. Jqgrid를 시도하고 5,000 개의 레코드를로드했으며 페이지 매김을 사용하여 다른 레코드를로드했습니다. 그러나 스크롤 바는 시간을들이는 데 약간의 시간이 걸리고 약간의 시간이 걸린다. 레코드를 선택하기 위해 꽤 많은 시간이 걸립니다 (심지어 상당한 시간이 걸리는 레코드를 선택하기 위해 500 레코드까지). 나는 Windows 7 62 비트 머신과 8GB RAM에서 이것을 시도했다. 내가 시도한 브라우저는 Firefox, IE 및 Chrome입니다.Jquery 데이터 그리드 또는 flex 데이터 격자

Flex Dataagrid를 확인한 결과 Flash Player에서 처리되기 때문에 매우 빠르게로드되고 모든 것이 완벽하게 작동합니다.

그러나 Jquery Grid가 선호됩니다. 꽤 빨리 클라이언트 끝에서 한 번에 5,000 개의 레코드를 처리하는 데 사용한 다른 격자가 있습니까 (아니면 성능을 향상시키는 다른 방법이 있습니까?)?

답변

2

제가 도움이 될지 모르겠지만 flexigrid을 사용합니다. 여기에서 진짜 문제는 자바 스크립트를 통해 페이지에 5000 개의 항목을 표시하려고한다는 것입니다. 당신이 정말로해야 할 일은 클라이언트에게 실용적이지 않고 불가능한 것, 그리고 전문 프로그래머가 그에게 말하는 것은 올바른 방법은 항목 100을 한 번에 표시하고 검색 및 정렬을 허용한다는 것입니다.

+0

나는 여기서 완전히 동의해야한다. 고객은 한 번에 5000 개의 레코드를 표시하고 싶어 할 수도 있지만 현실은 결코 한 페이지에 그 많은 것을 넣을 수 없다는 것이다. 따라서 페이지 매김을 사용하고 페이징을 사용하여 데이터의 지연로드 (예 : 필요시 데이터 로딩)를 구현할 수 있습니다. 여기서 마지막으로 실현해야 할 중요한 점은 솔루션이 고객에게 효과가있는 한 DataGrid를 구현하는 방법에 차이가 없다는 것입니다. –

+0

답장을 보내고 flexigrid에 대해 말해 주신 @mcgrailm에게 감사드립니다. 내일 회의에서 그가 말하는 것을 봅니다. – Bujji

+0

마침내 우리는 한 번에 500 개의 레코드로갑니다. 여전히 천천히,하지만 클라이언트에 대한 확인 :) – Bujji

1

한 번에 5000 개의 레코드를 모두 표시하지 않기 때문에 한 번에 5000 개의 레코드를로드하는 지점이 표시되지 않습니다. 현재 3 페이지 분량의 레코드를 버퍼링하는 옵션을 선택하십시오. 그렇게하면 데이터를로드하는 것이 지연됩니다.로드 시간이 오래 걸리지 않고 서버에서 페치하지 않으면 결국 필요하지 않은 데이터가 없으므로 좋습니다.

+0

@ZeSimon에게 즉각적인 답변을 해 주셔서 감사합니다. 나는 내일 고객을 만나 그가 말하는 것을 보게 될 것입니다. 다시 감사합니다 – Bujji

+0

마침내 우리는 한 번에 500 개의 레코드로갑니다. 여전히 느리지 만 고객을위한 OK :) – Bujji

관련 문제