当前位置: 代码迷 >> C# >> WCF,传输大数据对象能很慢吗
  详细解决方案

WCF,传输大数据对象能很慢吗

热度:457   发布时间:2016-04-28 08:43:05.0
WCF,传输大数据对象会很慢吗?
本帖最后由 df4tth5 于 2015-10-26 19:19:08 编辑
一个List<string>,包含100000个元素,需要客户端调用服务端的方法执行插入数据库,这样的传输会不会很慢很慢啊,因为要序列化List<string>啊
------解决思路----------------------
放心,不慢,当然你不能把数据库里的所有数据一股脑全查出来,这样即便在本地也不行的,你有条件查询,有时可以分页查询,速度不慢的,与你浏览网页时翻页的速度差不多的,一个是html一个传来xml而已。
------解决思路----------------------
回帖之后发现你改了,居然还一个List里100000个元素,你真敢想,不可以这样。
在服务契约里设定查询参数,按条件查询,一次插50、100,这样做,你那样是行不通的,即便本地数据库也不能这样查。
------解决思路----------------------
直连数据库操作,你十万个也会很慢
------解决思路----------------------
直连数据库操作,你十万个也会很慢
------解决思路----------------------
如果你确实有数据必须要这样干,以流数据形式传,在WCF里没问题。不过我建议你还是先将简单的实现了再说吧,大数据会涉及到断点的问题,先把简单的做了,其实你还不是使用Wcf的问题,.net的基础还需要强化。
------解决思路----------------------
你既然可以由100000缩小到2000,那么就应该再缩小一些,2000不能说绝对不可以,但你会执行很长时间,很多时候直至超时失败,尤其是在网络环境不太好的时候,但不建议你将WCF超时时间设置的过长,我设置一般不超过10秒,所以确保每次操作在此时间内完成。其实我大概能猜得出你开发的WCF是用在哪儿的,你倒是可以参考股票软件下载数据的方式来应对,你的历史数据应该类似,我猜对了吗?
------解决思路----------------------
哪怕你就一个字符串,你还得说明你这个字符串估计多长,如果你一个字符串流量就以m为单位,那也是快不起来的,受网速影响
------解决思路----------------------
建议以数据文件的形式下载,不要通过list传,不可取。
日常使用可以通过与wcf的最新数据对比更新,跟股票软件的数据获取方式差不多,比较适合你。
------解决思路----------------------
客户端大概会有多少,每个客户端每天都有近10万的数据产生吗?
不清楚你是否需要实时进行插入以确保数据一致性,如果这个需求不高,可以access文件流数据形式上传,然后服务端暂时保存文件,在半夜或某个服务器闲置状态时,数据库将access数据文件直接导入。
------解决思路----------------------
直连数据库操作,你十万个也会很慢
  相关解决方案