여러 사용자간에 작업 목록을 관리하는 웹 응용 프로그램을 만들려고하는 프로젝트가 있습니다. 권한이있는 사용자가 작업 항목을 배포하는 마스터 작업 목록입니다. 각 사용자는 로그인하고 할당 된 작업을 볼 수있는 자신의 계정을 가지고 있습니다. 여러 사용자가 단일 작업을 공통으로 수행 할 수 있습니다.
다음 상황을 처리하는 방법에 대한 전반적인 개념을 더 잘 이해하면서 프로젝트 세부 정보를 남기려고 노력하고 있지만 도움이된다면 RequestFactory가 구현 된 Java, EclipseLink 및 GWT를 사용하고 있습니다. 데이터베이스는 PostgreSQL입니다.
따라서 조정하려고하는 개념적 문제는 다음과 같습니다.
여러 사용자에게 공통적 인 단일 작업 (예 : 작업 완료, 삭제 등)이 변경되면이 작업이있는 모든 사용자의 작업 목록이 업데이트됩니다. 이 기능을 구현하는 데 도움이되는 디자인 패턴은 무엇입니까?
- 내가 본 일부 패턴은 관찰자와 중재자입니다. 이것에 대해 고려해야 할 다른 패턴이 있습니까?
동일한 작업을 동시에 변경하는 두 명의 사용자가 있다고 가정하십시오.
먼저 그러한 상황이 발생하도록 허용해야합니까? 아니면 다른 사람이 변경을 완료 할 때까지 상황을 잠 가야합니까?
둘째, 잠금을 설정하지 않으면 누구의 변경 사항을 수락하도록 조정합니까? 이는 사용자 1이 데이터를 제출할 수 있고 사용자 2가 업데이트 된 데이터를 수신하기 전에 진행하여 변경 사항을 제출 한 경우 1의 상황과 관련됩니다.
이 웹 앱의 여러 인스턴스간에 데이터를 올바르게 동기화하는 방법에 대한 지침, 조언 또는 팁을 찾고 있습니다. 대단히 감사하겠습니다!