为什么在新服务器上执行 sqlCommand 插入期间会出现 RPC 超时?
我们正在将数据库迁移到包含更新、更强大的服务器的异地数据中心。我有一个将数据从我的应用程序导入到本地 SQL 服务器的过程,它运行得很好。但是,我已将数据库移至新服务器,并且定期收到 RPC 超时错误或无法进行 RPC 调用的错误。
旧的 sql 服务器实际上只包含我的数据库和其他几个自定义应用程序数据库。也就是说,新服务器托管其他数据库以及我们的 Sharepoint 数据库和 Team Foundation Server 数据库。在查看 SQL Profiler 时,我注意到许多来自 TFSService 的频繁 RPC 调用,即使当时没有人使用 TFS。同样,Sharepoint 也不断通过 RPC 进行连接,但与 TFS 不同的是,人们正在积极使用它。
对我来说,这些数据库应该要么单独存在,要么一起在自己的 sql 服务器上。我错了吗?您认为来自 TFS 和 Sharepoint 的 RPC 调用可能会占用我的连接吗?如果是这种情况,并且不允许我移动数据库和另一个 sql 服务器,是否有办法配置 TFS 和 Sharepoint 以减少与数据库的“不必要”交互量?我还应该寻找其他想法吗?
顺便说一句,我从我的计算机以及数据中心中存在的虚拟机收到此错误,因此我认为这不是连接(距离)问题。
谢谢。
We're migrating our databases to an offsite data center that contains newer more robust servers. I have a process that imports data from my application to our local sql server and it works great. However, I've moved my database to the new server and I am periodically receiving RPC timeout errors or cannot errors that state it can't make an RPC call.
The old sql server really only contained my database and a couple of other custom application databases. That said, the new server is hosting other databases as well as our Sharepoint database and Team Foundation Server database. While looking at the SQL Profiler, I notice many frequent RPC calls from a TFSService even though no one is using TFS at the time. Similarly, Sharepoint is constantly connecting through RPC as well, but unlike TFS, people are actively using it.
To me, those databases should be either by themselves or together on their own sql server. Am I wrong? Do you think the RPC calls from TFS and Sharepoint could be hogging my connection? If that's the case and if I'm not permitted to move the database and the another sql server, is there a way to configure TFS and Sharepoint to tone down the amount of "needless" interactions to the database? Any other ideas I should look for?
By the way, I've received this error from my machine as well as a from a virtual machine that exists in the data center so I don't think it's a connection (distance) issue.
Thank You.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Team Foundation Server 2010 有一个内置的通知系统(不要与发送电子邮件或 SOAP 事件的事件/警报系统混淆)。
每个应用程序层定期轮询 Tfs_Configuration 数据库中的一个表,询问“自上次检查以来,是否有我订阅的通知发生?”。通知的一个示例是,当有人更改配置设置时,所有应用程序层几乎立即接收该更改,而无需重新启动。
在 SQL Profiler 中,这看起来像是服务器上有大量活动和负载,但实际上并非如此。
Team Foundation Server 2010 has a notifications system built-in (not to be confused with the events/alerts system that sends E-Mail or SOAP events).
Each application tier periodically polls a table in the Tfs_Configuration database asking "has there been any notifications that I'm subscribed to happen since I last checked?". An example of a notification is when somebody changes a configuration setting, all the application tiers pick up that change almost immediately without having to restart.
In the SQL Profiler, this will look like a lot of activity and load on your server, but it's really not.