c#.net并发访问sqlserver数据库问题

corywind 2023-05-22 16:37:41

接受了一个系统,代码是c#.net,数据库是sqlserver

基本流程是手持终端扫描工单,录入信息,再提交。

实际问题就是会有几十个pda同时工作对数据库进行读写。

数据量不多,一次可能就是1百到2百条,但是,在多人操作的时候非常卡,一次执行要几分钟才能有反馈。

目前做过的优化:因为服务器内存符合百分之九十八以上,所以设置了sqlserver的内存最大最小限制,服务器cpu和内存使用率分别稳定在50%,85%

                             数据库连接开关也没发现异常,sql文进行了优化。

最终结果:速度有所提升,但是在高峰期仍然很慢。

想请教各位经验大神,.net或者java在处理这种情况的时候一般提前做什么设定,比如代码的书写方式,或者框架选择,或者数据库特殊设置。

...全文
359 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
YBcsdn1996 2023-09-25
  • 打赏
  • 举报
回复

你如果每条都去读写一次数据库就死锁了,而且并发很高,应该是批量提交批量判断

msmvc 2023-08-31
  • 打赏
  • 举报
回复

接收到的数据放到队列里再处理

corywind 2023-05-22
  • 打赏
  • 举报
回复

好的,谢谢

syeerzy 2023-05-22
  • 打赏
  • 举报
回复
  1. SqlServer 在读写量较大时一般倾向于占所有内存来达到提速的效果, 所以一般情况下, SqlServer 不应该和应用服务器放在同一台硬件上。

  2. 按你说的数据量, 还远远没有达到让SqlServer性能大幅度下降的程度。 (我在十八年前在 Sqlserver 2000 上实践过每秒600万条记录的持续写入, 你现在的硬件和版本远远不可能在这个量上出问题), 所以应该是你的Sql语句和表结构设计的问题导致的可能性比较大。

50,931

社区成员

发帖
与我相关
我的任务
社区描述
本社区致力于打造一个.Net技术的中文社区
.net.netcorec# 技术论坛(原bbs) 广东省·广州市
社区管理员
  • 老陈聊架构
  • ももさん
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

『社区专栏』抬头往上看看,有多个专栏供大家学习

『进微信群』技术交流,组队刷题

『添加微信』备注蓝桥杯,赠送蓝桥杯算法资料

试试用AI创作助手写篇文章吧