Re: Core Data Multiuser
Re: Core Data Multiuser
- Subject: Re: Core Data Multiuser
- From: Flavio Donadio <email@hidden>
- Date: Tue, 17 Jul 2012 11:05:05 -0300
Chris,
I already took a look at NSIncrementalStore and it seems to solve one of my problems. I am fairly good with PHP, but I could always create a web service with Rails or something else...
One of my gripes with using HTTP as the client-server base protocol is the request-response loop. This breaks a lot of desirable features. In my particular case, I want my users to receive "real-time" updates when other users edit records on the database (not really "real-time", but at least after a COMMIT on the database). I know there are ways to do this with HTTP nowadays, but it feels so cumbersome (I mean, at least when compared to the way KVO implements similar behavior) that I don't even want to touch that.
Maybe I am too focused on the beauties of Cocoa and can't see any further... But...
So far, IMO, the best option in terms of functionality for my project is the BaseTen framework. It feels like Core Data, uses Core Data model documents and supports PostgreSQL's LISTEN and NOTIFY commands (and a lot more). I think I would have to buy a license because, although my app will not be sold, it will be used in my business and I don't think the GPL allows that. My only fear is the project's future and the fact that [currently] I am not so proficient in Cocoa to fiddle with BaseTen's internals, if I ever need to...
I am still open to ideas...
Cheers,
Flavio
On 16/07/2012, at 23:43, Chris Hanson wrote:
> On Jul 16, 2012, at 2:39 PM, Jens Alfke <email@hidden> wrote:
>
>> (1) Client-server. The database lives on one server machine, as does the "business logic" (I hate that term) that manages your app. This could definitely be implemented with Core Data if you like. The client app just focuses on the UI, and there is some protocol by which it talks to the server to fetch data and to tell it to do stuff. In other words, the client app will not use Core Data.
>
> Another option for client-server is to create an NSIncrementalStore subclass to use on the client, regardless of what you use on the server.
>
> The server could be an XML or JSON-based REST web service written using any of a variety of frameworks, the server could be a Mac running a Core Data-based server using a custom protocol you design, the server could be an old mainframe running COBOL... Your NSIncrementalStore subclass can act as an adaptor between it and the rest of your application, allowing your application to be written using Core Data and allowing it to take advantage of its features.
>
> -- Chris
>
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden