设计网络应用程序的方法
在小型办公室的多用户业务应用程序中,在每台 PC 上安装客户端并让它们直接远程连接到中央服务器上的 SQL Server 数据库有哪些缺点?
这似乎避免了包含 .Net 远程处理(或类似)技术的需要,因此在中央服务器上安装 DLL。
In the context of a multi-user business application in a small office, what are the disadvantages of installing the client on each PC and having them connect directly and remotely to a SQL server database on a central server?
This seems to avoid the need to include .Net remoting (or similar) technology and so install DLLs on the central server.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
缺点:
听起来您正在考虑让用户从网络共享(“中央服务器”)运行?
您是否正在考虑使用 ClickOnce 部署来分发您的桌面应用程序,并在 Web 上提供该包?通过使用组策略进行自动部署?
Disadvantages:
It sounds like you were thinking of having users run from a network share ("central server")?
Are you considering your desktop application to be distributed using a ClickOnce deployment, with the package available on the web? What about rolling out software via automated deployments with Group Policy?
所有业务逻辑都必须在客户端中进行编码,您可以将其视为缺点(因为如果不部署新客户端就无法重写它),也可以将其视为优点(因为您将计算资源转移到客户端)。
根据您连接到 SQL Server 的方式,您可能需要担心安全问题。但是,如果它是在本地 LAN 上运行的内部解决方案,您可能可以忽略这一点。
All the business logic would have to be encoded in the client, which you can see as a disadvantage (since you cannot rewrite it without deploying new clients) or as an advantage (since you transfer computing resources to the clients).
Depending on how you connect to the SQL server, you may have to worry about security issues. However, if it is an in-house solution running on the local LAN, you can probably neglect this.
直接连接到任何关系系统的缺点是紧耦合问题。您的软件的实现至少部分基于后端数据库。如果发生变化或被修改,则可能需要维护您的应用程序。
但是,如果它是一个由相对少数人使用的小型应用程序,那就没什么大不了的。
每当您与 RDBMS 紧密耦合时,请考虑如果情况发生变化,将来可能会出现什么样的对象持久性问题。
The disadvantage of connecting directly to any relational system is the problem of tight coupling. Your software's implementation becomes at least partially based upon the back end database. If that ever changes or becomes modified, it might necessitate maintenance of your app.
If, however, it's a small app used by a relatively small number of people, no big deal.
Any time you tight couple to a RDBMS think about what kind of object persistence issues might arise in the future if things change.