On Wed, Apr 27, 2011 at 9:26 AM, Shawn Bakhtiar <[email protected]> wrote: > CAUSION!!! > MySQL is not something to leave open to a public network. Our > implementation is using a secured wireless connection INSIDE our > factory. If you are going to use the the public airways, I seriously > would consider creating a wrapper protocol on its own port for the > public side, that connects to the mysql database on the local server.
I would suggest never letting your devices connect directly to the database. Every single time I have ever done this, it has been bad news. Aside from the obvious security implications, database client libraries are simply not designed to tolerate high-latency, low-reliability connections to the database. Because they assume you're going to be working with a traditional N-tier architecture, the authors feel free to do things like batch up and return massive result sets. Because we're talking about small portable devices, the chances of a network failure increase dramatically, and what happens if that network failure occurs in the middle of a transaction? Have you written your client to handle this? A much better solution has been worked out decades ago: N-tier architecture. Use a custom protocol (simple text-based, plists, REST…) between your clients and an application server. Let the application server, running on a much more fault-tolerant machine and network connection, communicate directly with the database server. --Kyle Sluder _______________________________________________ Cocoa-dev mailing list ([email protected]) 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: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
