Socket.IO는 클라이언트와 서버 간 실시간 양방향 저지연 이벤트 기반 통신을 지원하는 라이브러리입니다.
share/sharedb
Operational Transformation 기반의 실시간 JSON 문서 데이터베이스 백엔드로, 여러 사용자의 협업 편집과 실시간 동기화를 지원합니다.
- 스타
- 6,562
- 포크
- 458
- 열린 이슈
- 171
- 마지막 커밋
- 그저께
어떤 프로젝트인가요?
ShareDB는 여러 협업 편집기의 기반 기술인 Operational Transformation(OT)을 사용해 JSON 문서를 처리하는 실시간 데이터베이스 백엔드입니다. 클라이언트는 동기식 API로 문서를 편집하며, 변경 사항은 다른 사용자의 편집 내용과 병합된 뒤 최종적 일관성을 유지하면서 연결된 모든 클라이언트에 전파됩니다.
간단한 어댑터 통합으로 어떤 기반 데이터베이스와도 사용할 수 있으며, 실시간 쿼리 구독, 전송할 필드를 제한하는 프로젝션, 접근 제어 및 사용자 지정 확장을 위한 미들웨어를 지원합니다. pub/sub 통합을 통해 수평 확장이 가능합니다. 연결이 복구되면 오프라인 상태에서 발생한 변경 사항이 동기화되며, 과거 문서 버전에도 접근할 수 있습니다.
ShareDB는 브라우저와 서버에서 실행되며, 단위 테스트를 위한 인메모리 데이터베이스 및 pub/sub 구현도 포함합니다. DerbyJS 웹 애플리케이션 프레임워크의 실시간 백엔드입니다.
핵심 기능
- 01클라이언트 간 JSON 문서 실시간 동기화
- 02Operational Transformation을 통한 여러 사용자의 동시 편집
- 03실시간 쿼리 구독
- 04특정 필드를 선택하는 프로젝션
- 05접근 제어 및 사용자 지정 확장을 위한 미들웨어
- 06재연결 시 오프라인 변경 사항 동기화
활용 사례
- 웹 애플리케이션에 협업 편집 기능 구축
- 연결된 사용자에게 실시간으로 업데이트되는 대시보드 또는 리더보드
- 기존 데이터베이스에 실시간 동기화 추가
- 내장 인메모리 어댑터로 실시간 로직 테스트
사용 전 알아둘 점
- 메타데이터에서 라이선스가 확인되지 않았습니다(NOASSERTION). 사용하기 전에 저장소의 라이선스를 확인하세요.
토픽
자주 묻는 질문
- sharedb은(는) 무엇인가요?
- Operational Transformation 기반의 실시간 JSON 문서 데이터베이스 백엔드로, 여러 사용자의 협업 편집과 실시간 동기화를 지원합니다. ShareDB는 여러 협업 편집기의 기반 기술인 Operational Transformation(OT)을 사용해 JSON 문서를 처리하는 실시간 데이터베이스 백엔드입니다. 클라이언트는 동기식 API로 문서를 편집하며, 변경 사항은 다른 사용자의 편집 내용과 병합된 뒤 최종적 일관성을 유지하면서 연결된 모든 클라이언트에 전파됩니다.
- sharedb은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- sharedb은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- sharedb은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. sharedb의 마지막 커밋은 2026년 11월 5일입니다.
- sharedb은(는) 어디에 사용할 수 있나요?
- 웹 애플리케이션에 협업 편집 기능 구축 연결된 사용자에게 실시간으로 업데이트되는 대시보드 또는 리더보드 기존 데이터베이스에 실시간 동기화 추가 내장 인메모리 어댑터로 실시간 로직 테스트
- sharedb은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/share/sharedb
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
실시간 알림, 고급 검색이 가능한 데이터 저장소, 사용자 관리를 기본 제공하는 오픈소스 TypeScript 범용 백엔드입니다.
상태 동기화, 룸 기반 매치메이킹, 웹·Unity·Godot 등의 클라이언트 SDK를 제공하는 Node.js용 권위형 멀티플레이어 프레임워크입니다.
외부 데이터베이스 없이 MQTT 또는 HTTP로 OwnTracks 모바일 앱이 전송하는 위치 데이터를 저장하고 제공하는 경량 서버입니다.
uWebSockets.js 기반의 채팅 서버로, Node.js 백엔드와 MongoDB, Redis를 사용해 XMPP의 대안을 제공합니다.