2010-06-18 2 views
6

저는 웹 애플리케이션이 가입하지 않고도 시도해 볼 수있는 몇 가지 인스턴스를 보았습니다 (물론 당신은 물론 필요는 없습니다).가입 전에 사용자가 웹 응용 프로그램을 사용해 보도록하십시오 : 세션 또는 임시 데이터베이스?

예 : http://minutedock.com/

에서 시도 나는 내 자신의 웹 앱이 일을하고 근본적인 문제는 세션으로 또는 임시 사용자 테이블에 자신의 정보를 저장하는 여부에 대해 궁금하네요?

임시 사용자 테이블은 로깅을 허용하고 서버에서 히트가 적을 수 있습니다. 맞습니까?

여기에 모범 사례가 있습니까?

답변

4

thisIsATrialUser과 같은 플래그가 설정된다는 점만 다를뿐 애플리케이션이 정상적으로 작동하는 것과 똑같이 작동합니다. 내부적으로 일을하는 두 가지 다른 방법을 만들어서는 안됩니다.

+0

정확히 +1. 어쩌면'isTrialUser'는 충분히 효과적으로 의사 소통을하고, 더 짧을 수도 있습니다. :) – alex

+0

@alex 나는 예제에서 장황하다. ;) – deceze

+0

감사합니다. 나는 더 많은 OOP 방식으로 앱을 작성하는 것과 함께이 접근 방식을 취할 것이다. 지금은 조금 함께 자갈을 깐다. – Mat

2

사용자 클래스를 만들려면 익명 사용자 유형으로 전화를 걸 수 있습니다. 모든 인증되지 않은 사용자에게 익명 계정을 제공하십시오 (어느 시점에서 이전 계정을 정리해야합니다). 영구 쿠키를 사용하여 이전 사용자를 익명 계정과 연결하십시오. 지불이나 전체 등록이 필요한 작업을 수행해야 할 때마다 인증을 받도록하십시오. 사용자 유형을 일반 사용자 유형으로 변경하면 익명으로되어있을 때 이미 사용자에게 첨부 된 모든 정보를 유지할 수 있습니다.

이렇게하면 등록을 앞당길 필요없이 장바구니와 같은 잠재적 정보를 추적하고 저장할 수 있습니다. 일반 사용자와 마찬가지로 익명 사용자를 다루는 경우 코드를 많이 변경하면 안됩니다. 그렇지 않으면 마스터 사용자 테이블에 저장되지 않은 특수 사용자를 관리하기 위해 완전히 새로운 코드 세트를 만들어야합니다.

0

평가판 사용자가 추가 한 데이터를 정리하려면 일생 동안 작성한 + 1 일 동안 모든 평가판 사용자가 소유 한 모든 데이터를 삭제하는 스크립트를 만들 수 있습니다. 야간에 cron을 사용하여 스크립트를 자동 파일럿 할 수 있습니다.

관련 문제