2011-10-17 5 views
0

나는 자신의 즐겨 찾기에 게시물을 추가 할 수있는 게시물과 사용자가있는 표준 블로그 유형의 애플리케이션을 가지고 있습니다.정보의 작은 비트를 많이 사용하는 바니시 ESI

  1. 사용자가 포스트 목록에서 볼때, 이들이 여부 각 포스트가 좋아하는 표시 (이미지)을 참조한다. 익명 사용자에게는 즐겨 찾기가 없습니다.
  2. 계산 비용이 많이 들기 때문에 게시물 목록을 바니시 (익명 사용자와 로그인 사용자 모두)에 캐시해야합니다.

아이디어

캐시 니스의 목록 페이지 및 즐겨 찾기 정보를 가져 오기 위해 ESI를 사용 ...

  1. ... 현재 요청을 만드는 사용자에 대한 각 게시물에 대한. 단점 : 페이지 당 50 개의 ESI 요청 (기본적으로 N+1 problem).
  2. ... 페이지에 저장된 JSON 객체입니다. 클라이언트에서이 객체를 읽고 DOM을 조작하여 즐겨 찾기 정보를 나타냅니다. 아래쪽 : 자바 스크립트가없는 사용자에게는 작동하지 않습니다.
  3. ... 페이지에 저장된 CSS 스 니펫으로 CSS는 각 게시물에 대해 표시 할 내용을 결정합니다. 아래쪽 : 스타일있는 콘텐츠 (예 : 이미지)에서만 작동합니다. 텍스트 정보를 표시 할 수 없습니다.

내가 원하는 것을 달성 할 수있는 가능성이 없습니까? 아이디어 3은 가장 영리한 대답 인 것처럼 보이지만 사용자가 게시물을 선호 한 날짜를 표시하려면 아이디어 3이 작동하지 않습니다.

답변

0

답변 2는 많은 의미가 있습니다. 페이지를 멋지게 캐시 가능하게 만들고, 브라우저에 자바 스크립트가없는 사람들이 '좋아하는 기능'만 희생합니다.

어쨌든 그 사람들은 누구입니까? 아직도 스라소니와 서핑을하고 있니? ;). 그리고 그들은 당신의 로그인 메커니즘을 만들기 위해 쿠키를 받아들이겠습니까 (개인적인 즐겨 찾기에 필요합니다).