我有一个应用程序,一旦启动就会从我的数据库获取一些初始数据,之后某些函数可能会更新或插入数据。
由于我的数据库与运行应用程序的计算机不在同一台计算机上,并且我希望能够自由移动应用程序服务器,因此我正在寻找一种更灵活的方式来根据需要插入/更新/查询数据.
我正在考虑在我的应用程序的单独线程上使用网站 API 和某种列表,其中该线程将尝试每 X 分钟更新一次数据,如果给定的条目被更新,它将从列表中删除。
这样,应用程序就不会被数据库查询所占用,而是可以自由地运行,对必须更新/插入的内容进行排队等
这里的要点是,我可以运行这些函数,而不必担心数据库端的连接问题或相关问题,因为所有更改都会排队等待更新。
这个方法可以吗?坏的 ?对于这种情况有更好的建议吗?
最佳答案
关于“可以通过某些网络服务器访问数据库,而不是直接与数据库服务器对话”:是的,这是非常常见和推荐的方法。限制通过自定义 API(Web 服务、REST 服务等)公开的操作集比限制与数据库的直接通信要容易得多。
关于“在单独的线程上同步...” - 您需要弄清楚同步的要求是什么。如果您不需要了解最新数据并且不关心来自客户端的更新是否立即提交到存储,则延迟同步可能没问题。
关于c# - 不直接依赖连接更新数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8175830/