> On Dec 1, 2016, at 10:46 PM, 陈锋 <chenf...@fintechina.com.cn> wrote:
> 
> The server does not has any user interface like Google Calendar web version, 
> right? But it can be accessed through an existing client like iCal or 
> ThunderBird?
Correct
> By default the cal data are stored using files,
That was true in very old versions, but for quite a while CalendarServer has 
only supported a (postgres or oracle) database backend.
> but what if I want to save all of them using an external DB, seems like you 
> support PostgreSQL by default? But what if I want to use mysql? Can the 
> server support mysql?
We don't support mysql, however we do have a pretty fancy database abstraction 
layer in the twisted-extensions 
<https://github.com/apple/ccs-twistedextensions> (aka 'twext') project that 
sits atop the two supported backends (postgres and oracle), so adding a third 
is probably within the realm of possibility, although we have no plans to do so 
ourselves. Postgres is good.
> If I use an external DB to store the calendar data, what about the attachment 
> of an event?
Attachments are not stored in the database. Instead they are stored in local 
files on the CalDAV server. For a multi-server deployment, use something like 
NFS to host the attachments directory for all servers to share.
> What is the recommended way to sync them in multiple server instances?
Any scheme where you have to explicitly 'sync' is not going to be good enough, 
because that implies the possibility of being out of sync, which opens the 
window to race conditions, etc. The attachments store needs to be a single 
source of truth. NFS works well for this.
> If I use an external DB, the server will be stateless, right? So I can deploy 
> as many instances of it as I want to?
Yes. Of course there is runtime state, but the transactional nature of the 
database allows the data to stay consistent even if e.g. a CalDAV server 
disappears.

See also: 
https://github.com/apple/ccs-calendarserver/blob/master/doc/Admin/MultiServerDeployment.rst

Hope this helps,
-dre
_______________________________________________
calendarserver-users mailing list
calendarserver-users@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/calendarserver-users

Reply via email to