Multiple Django apps hitting same backing DB - Issues?
I have a standard Django application we're using to manage a database of articles from various publications.
Anyhow, we're currently having issues getting permission to get the server infrastructure in place to deploy this.
One option tossed was that we could make the Django app a desktop application, accessing a remote DB instance.
As in, each of the users that needed to use it would install a local Python environment, with Django and our application, run a web-server, and then hit the remote DB.
Are there any particular issues or drawbacks you can see with this approach?
Off the top of my head, I thought maybe:
- The obvious one is we need to install the software first, it isn't usable from anywhere with a web browser
- Likewise, pushing out updates will have to be a manual process, done on each client. We can't just do it once on the server.
- Concurrency/Locking - I'm not sure how Django will handle this? Backing server will probably be Oracle, which does supports transactions and all that - however, how will Django cope with two instances hitting the same backing DB?
I know that on the Rails side, there's things like Joyent Slingshot (was this deprecated?)
http://joyeur.com/2007/03/22/joyent-slingsho开发者_高级运维t/
which allow bundling a RoR app into a desktop app.
Cheers, Victor
Putting Django in a desktop application is horrible overkill unless the desktop is also running the database. Write a client that uses JSON-RPC or XML-RPC to communicate with the Django server.
There's dbuilder which helps packaging a local django-app. It should be possible to configure it for a remote DB too. (Some Googling seems to indicate this is possible...)
精彩评论