2009-07-14 3 views
1

내 웹 응용 프로그램에서도 Facebook 업데이트 (사용자 작업 및 알림)를 구현하고 싶습니다. 나는 램프를 사용하고있다. 중복 된 데이터를 저장하는 db 테이블을 만들거나 다른 테이블에 대한 호출을 만들어 사용자에게 업데이트를 표시해야합니까?Facebook 업데이트처럼 기능

더 좋은 방법이 있나요?

예 : 사용자 프로필에 댓글을 올리면 사용자의 업데이트가 있어야합니다. 사용자 프로필에 대한 의견이 있으면 댓글 테이블에 저장됩니다. 이처럼 많은 기능들이 업데이트 중에 캡처 될 필요가 있습니다.

답변

1

내가 말하고 싶지만 두 개의 테이블

Action = {id, type_id, details, user_id} 

ActionTypes={id, name} 

그러나 그것은 당신이 지금까지 정확히

0

을 수행하려는 작업에 많은 정보를 제공하지 않기 때문에 구체적으로 정말 어렵다 그것을하는 가장 쉬운 방법은 그것을 역 정규화하는 것입니다. 모든 메시지/알림/무엇이든 하나의 테이블에 넣고 쿼리하십시오. 사용자의 "받은 편지함"과 비슷한 것으로 생각하십시오.

0

피드에보고 될 작업의 성장이 예상되는 경우에 따라 다르며 이러한 작업을 기반으로 검색/정렬/링크/상호 작용할 수 있기를 원합니다.

확장에 신경 쓰지 않는다면 매트 그란데가 제안한 비정규 화 방식을 사용하는 것이 좋습니다.

쉽게 필터링, 정렬 및 확장 할 수있게하려면 나중에 변경하려는 항목을 표준화하는 것보다 좋습니다. '게시자'작업에는 이름, 아이콘이있을 수 있으며 '작업'은 링크가있는 문자열 일 수 있습니다. real 질문은이 기능이 원하는 기능이며 귀하와 귀하의 사용자는 어떻게 상호 작용합니까?

0

내 소셜 네트워크에서이 작업을 수행하는 중입니다. 현재 내 게시판에는 사용자 게시판이 있지만 웹 2.0 작업 유형으로 바뀌고 있습니다. 따라서 기본적으로 언급 한 것과 동일한 작업을 수행 할 예정입니다. 훨씬 복잡한 이유는 내 친구가 귀하가 친구 인 사용자의 행동 만 표시하기 때문입니다. 항상 모든 사용자 대신 친구의 최근 활동을 표시하기 위해 JOINS 등을 요구하므로이 성능 향상에 대한 제안이 항상 열려 있습니다.