服务器端写入数据库太慢怎么办?

eiming 2006-09-19 09:05:08
vc环境下,采用TCP,服务器/客户端,服务器用send()发送数据,客户端用recv()接收数据。因为服务器几秒之内发送了20k左右的数据,而客户端这边必须接收并写入数据库。现在的问题是因为要大量写入数据库,所以客户端比服务器慢了很多,大概有40几秒左右,所以不知道怎么做才好。
分成40个包接收,每4秒发一次比较少的 数据,收完马上写入sql数据库.用ODBC连接数据库.现在的问题是数据接收正常,写入也正常,但是延迟很厉害,从发第一个包,到第一个包写入数据库,将近有40秒钟的时间,,不知道该怎么解决..

...全文
251 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
arvid_gs 2006-09-19
  • 打赏
  • 举报
回复
用多线程来处理,一个线程处理接受数据,放在一个共享队列里,其他线程来写数据。要注意同步就可以了!~
尘雨 2006-09-19
  • 打赏
  • 举报
回复
接受数据的写在A线程里,写数据库的写在B线程里。维护一个全局队列,A写队列,B读队列,读完之后,把数据从队列中删除。需要注意删除数据的时候要用互斥或临界区保护这个队列。

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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