Z-푸시
Z-push개발자 | 자라파 도이칠란트gmbh |
---|---|
안정적 해제 | 2.6.2 / 4. 2021년 2월 |
운영 체제 | 아무거나 |
플랫폼 | 크로스 플랫폼 |
면허증 | AGPLv3 |
웹사이트 | z-push.org |
![]() |
Z-Push(Z는 Zarafa를 위한 것일 가능성이 있음)는 마이크로소프트 Exchange ActiveSync 프로토콜의 FOSS 구현으로, 중앙 서버와 모바일 기기 간에 이메일, 개인 연락처 및 기타 항목을 동기화하는 데 사용된다.이 프로토콜과 마이크로소프트 ActiveSync라는 이전(기술적으로 관련이 없는) 프로토콜 간의 차이를 기록해 두십시오.
Z-Push는 모든 PHP 기반 그룹웨어 패키지를 ActiveSync 호환 장치와 완벽하게 동기화할 수 있도록 한다.
현재 Z-Push에는 이메일 동기화를 위한 IMAP 및 Maildir 백엔드, 연락처 동기화를 위한 vCard 백엔드, 이메일, 캘린더, 연락처 및 작업의 전체 동기화를 허용하여 판매되는 자라파 패키지용 백엔드 등 4개의 백엔드가 포함되어 있다.
Z-push를 ZCS 서버와 함께 사용할 수 있도록 Zimbra Backend를 구현하는 제3자 프로젝트(오픈소스 에디션 포함)도 있다.
2016년 7월 출시된 2.3.0 이후 메모리 사용량이 현저히 감소하는 것은 물론, 상당한 성능 향상을 달성했다.EAS를 통한 아웃룩 2013, 2016 연결도 공식적으로 지원한다.옵션인 Kopano Outlook Extension(자라파/Kopano 유료 가입자에게만 사용 가능)을 통해 부재중 응답, Notes 동기화, 공유 및 공용 폴더 열기, 글로벌 주소록 동기화 등의 추가 Outlook 기능이 활성화된다.
Z-Push는 버그 수정, 개선 및 새로운 기능을 포함한 거의 매달 새로운 릴리즈로 활발한 개발 중에 있다.
기술적 배경과 건축
![]() | 이 절에는 광고처럼 쓰여진 내용이 수록되어 있다.(2010년 8월) (이 를 과 시기 |
Z-Push 프로토콜은 HTTP 기반이며, PDA/셀룰러 전화와 서버 사이의 양방향 통신에 사용되는 WBXML(WAP Binary XML)을 통신 계층으로 사용한다.
프로토콜 안에는 동기화 프로토콜로부터 기대하는 모든 것이 있는데, 그것은 이미 전송된 것을 추적하면서 한 쪽에서 다른 쪽으로 항목을 보내는 과정이다.Z-Push는 백엔드 개발자에게 이러한 프로토콜 요청 처리의 복잡성을 감추는데, 백엔드 개발자는 항목의 목록을 얻고 특정 항목에 대한 데이터를 얻는 것과 같은 다양한 표준 기능만 구현하면 된다.필요한 것은 WBXML 객체 정의와 필드에 대한 충분한 이해뿐이며, 개발자는 PDA/셀룰러 전화기에 어떤 그룹웨어 솔루션의 항목도 쉽게 얻을 수 있다.
Z-Push는 다양한 성능 및 사용적합성 관련 특징을 가지고 있다. 예를 들어, 프로젝트의 전체 아키텍처는 서버가 PDA에 수백 개의 메시지를 보낼 때에도 한 번에 하나의 메시지만 기억해야 한다는 생각에 기초한다.이것은 쉽게 들릴 수 있지만, 대부분의 XML 기반 응용프로그램에서 XML 결과 데이터는 네트워크에 직렬화되기 전에 내장 메모리로 작성된다. 즉, 데이터가 백엔드에서 읽히는 동안 클라이언트로 스트리밍될 때 Z-Push가 하는 것과 정반대인 것이다.이는 PHP에서 이미 제한된 메모리 사용을 개선할 뿐만 아니라 동기화 요청이 이루어지는 즉시 데이터가 도착하기 시작하므로 클라이언트의 진행 표시줄을 보다 편리하게 만들 수 있다.Z-Push는 이를 위해 스트리밍 WBXML 인코더와 디코더를 제공했다.
백엔드가 그것을 지원할 때, Z-Push는 또한 서버 부하를 더 낮게 만드는 고급 기능들을 이용할 수 있다. 예를 들어, 지난번에 있었던 모든 메시지들과 비교하는 대신에 'diff' 소스에서 직접 메시지를 읽는 것이다.따라서 그룹웨어 백엔드가 즉시 변경사항 목록을 제공할 수 있다면 Z-Push는 이 정보를 거의 즉각적으로 사용할 수 있다.Zarafa는 PHP-MAPI 확장을 통해 자체 MAPI 기반 솔루션에 대한 증분 동기화 백엔드를 제공함으로써 매우 낮은 부하 동기화를 가능하게 한다.