社区
C#
帖子详情
B/S与C/S架构系统,读取数据库数据慢在哪
0-小小程序员-0
2011-09-15 09:42:51
在相同环境下,为什么读取1万条数据时。CS的秒进,BS几乎要几分钟,并且有时还会导致页面死掉,相同环境已经排除了网络等各个因素,为什么有如此大的区别呢,究竟是慢在哪,小弟不才,希望各位。能告知一二。
...全文
485
23
打赏
收藏
B/S与C/S架构系统,读取数据库数据慢在哪
在相同环境下,为什么读取1万条数据时。CS的秒进,BS几乎要几分钟,并且有时还会导致页面死掉,相同环境已经排除了网络等各个因素,为什么有如此大的区别呢,究竟是慢在哪,小弟不才,希望各位。能告知一二。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
king_827
2011-09-27
打赏
举报
回复
我认为这个与BS或CS无关.
试想:一次性提取万条记录,用户能没等待的心理准备吗?
使用进度条或者分页.
0-小小程序员-0
2011-09-19
打赏
举报
回复
感谢!
0-小小程序员-0
2011-09-19
打赏
举报
回复
第一次发贴就有这么多人回答,非常感觉!!
0-小小程序员-0
2011-09-19
打赏
举报
回复
谢谢各位的回答,
足球中国
2011-09-16
打赏
举报
回复
估计google不会用iis这样的东西。太慢。自已写个简单的自己用的服务器端也不是难事。至少在c++区已经有人这样用。
cs肯定比bs要快。因为bs也是cs上的衍生品。
空怀
2011-09-16
打赏
举报
回复
学习了
showjim
2011-09-16
打赏
举报
回复
如果真是相同环境并排除网络因素,差别应该不大,要有差别仅仅是浏览器的解析与渲染。但楼主的数据感觉很不可思议。
窗户纸
2011-09-16
打赏
举报
回复
第一条路已经走到头了,因为服务器的负载实在受不了,因此现在都在找拨第二条路,GOOGLE就是这么做的,实际上B/S理念还是不错的,为什么不再进一步,完全放弃HTTP的协议体系呢?现在是个变革时代,可能再过2年,很多WEB技术都要过时了
foxd
2011-09-16
打赏
举报
回复
学习了。
窗户纸
2011-09-16
打赏
举报
回复
一个C/S传输需要20几个字节的对象用HTML协议就需要1K多,将近两个数量级了,自然是一个秒记一个分钟记了。因此B/S如果按照C/S的编程方法处理(频繁的小规模数据交互),那肯定是死定了。只有两条路可走:1.生成完页面全部数据再传过去 2. AJAX(在本地生成页面数据)
萧炎
2011-09-16
打赏
举报
回复
sp1234
说的很对
assky124
2011-09-16
打赏
举报
回复
读取数据的速度应该相近或者相同的,慢的应该在呈现上。
WEB要先解析成HTML,然后再传输的浏览器(个人愚见)。
我觉得你的问题主要在Web显示1W数据上的问题,可以一次把数据全读到内存中,然后分页显示
qdksjtlk
2011-09-16
打赏
举报
回复
我觉得最根本原因是cs结构可以直接操作内存,而bs结构不能直接操作内存。所以cs应该更快些。
chichenzhe
2011-09-16
打赏
举报
回复
你对CS程序理解有误.
cs
C=client
s=server
按你现在的描述来讲,我认为你的cs程序实际上 只是个 server程序. 而没有所谓的 client因为你就直接在数据库服务器或者数据库服务器的内网环境的服务器上 直接运行的 winform 程序 所以你会觉得数据嘎嘎的快.
而BS慢的原因是因为跨网域了, 你在外网的某台电脑上去访问 你的IIS 的页面这样,没有区别才怪.
bs从本质上讲也就是个CS程序. 因为他也具备 客户端<--->服务器端 的通信本质.
所以,如果你要对比速度, 那么你应该把测试环境放对等.
对等公平的环境下2者会有少量差别,但这个差别不应该是你能感觉到的.
采用bs模式 将会多一些界面内容必须从服务器端get回来. 比如图片,按钮,界面框架 等等 (当然了,由于这些东西采取Html和js css等脚本去描述,所以也是相当的轻便的).
而 cs模式 所有的客户端界面都已经预存在本地了. 所以从速度优势上来讲,他的优势就在这里:不需要下载一些html,css js等东西.
-----------------------
然后剩下的数据交互, 由于bs模式的 server端驱动是iis 而cs端驱动是 服务器端代码自实现的. 如果代码水平相当的话, 对数据库的访问2者没什么区别.
-----------------------
说到这里,我想你也应该明白了为什么你 测试的结果会有几分钟的差距了.
marskiller022
2011-09-16
打赏
举报
回复
在考虑相同网络环境的情况下时,用户数访问的多少是一个决定性因素,如果一个服务器不论bs还是cs都只有少数的(比如个位数)客户端连接的话,是一样的,但是随着访问客户端增加,bs的server端同时处理的请求的量会很大,会造成延迟。相反,cs的程序上client负责处理业务请求,分担了server的某些压力,所以会觉着cs模式下的程序比较快~~
个人拙见 还望赐教 呵呵~~
阳光_技术宅
2011-09-16
打赏
举报
回复
我觉得二楼已经说的很明确了,一个是本地,一个要通过协议
伽百叶
2011-09-16
打赏
举报
回复
学习 学习
机器人
2011-09-15
打赏
举报
回复
(1) Web应用:Client Browser(HTML解析显示) <- Network(HTTP) <- ASP.NET <- ADO.NET <- DB
(2) Winform:Client UI(控件显示) <- ADO.NET <- DB
上面简单描述两种应用的过程,楼主觉得差别如何?
而且在解析HTML的时候,不同浏览器的内核性能也不一样。Chrome的Webkit会比IE稍微快些。
以专业开发人员为伍
2011-09-15
打赏
举报
回复
这个我不想说太多了。你对于网络的概念停留在办公室内的OA程序的理解上,你理解的c/s程序其实就是个使用人家c/s数据库的客户端做的程序(与本地访问数据库完全一样的方法来调用客户端驱动去访问c/s数据库),那么你的c/s程序的概念是不足以讨论互联网问题的。
如果想讨论基于互联网或者校园、企业、城域等网的c/s问题,你至少要对类似一个简单网游之类的网络环境来考虑,比如你要让一个城市里几千个或者上万个客户端同时通过c/s方式访问一个服务,这样才好吧c/s跟b/s做客观的对比。
以专业开发人员为伍
2011-09-15
打赏
举报
回复
你认为全世界人访问google网页,都让你改成一个客户端winform程序使用数据库的客户端驱动去访问什么google的关系数据库?
本来,网页访问如果本地访问数据库的话,肯定远程调用关系数据库的客户端驱动来访问要快。但是让你一问,完全给误导了。响应速度慢,是web服务器不断产生和下载html这种机制造成的,web服务器为了能够供上万、上十万人同时使用(而不是像所谓c/s数据库驱动那样在供几十个人使用时就会卡壳)而做了优化,于是这种web就慢了。牺牲了速度,但是提高了网站的服务数量。
加载更多回复(2)
B/S和C/S详解(嵌入式学习)
在C/S
架构
中,客户端和服务器之间建立直接的连接,并通过网络进行通信。客户端是指运行在用户本地计算机上的应用程序,负责向服务器发送请求,并接收和处理服务器返回的
数据
或结果。服务器是一个独立的计算机或计算机集群,负责接收客户端请求,处理请求并向客户端提供所需的服务或
数据
。客户端通过浏览器向服务器发送请求,服务器接收请求并进行处理,然后将结果以网页的形式返回给客户端浏览器,最终由浏览器渲染和显示给用户。因此,B/S
架构
在Web应用程序开发中被广泛采用,许多常见的网站和在线服务都是基于B/S
架构
构建的。
B/S与C/S结构安全的相对比较
关于网络安全软件B/S、C/S两种结构的优劣,近两年来出现过一些技术性的争论,但目前业内人士已经基本达成共识,B/S结构的优越性得到了普遍的认可,B/S结构是否能成为C/S结构的终结者还有待时间的验证。 何为C/S、B/S结构 C/S结构软件(即客户机/服务器模式)分为客户机和服务器两层,客户机不是毫无运算能力的输入、输出设备,而是具备了一定的
数据
处理和
数据
存储能力;通
B/S与C/S的区别
B/S结构(Browser/Server)是浏览器服务器这种开发模式,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件。C/S又称Client/Server或客户/服务器模式。需要做客户端服务器端。服务器通常采用高性能的PC、工作站或小型机,并采用大型
数据
库
系统
,如Oracle、Sybase、Informix或 SQL Server。客户端需要安装专用的客户端软件。
软件
架构
设计(三) B/S
架构
风格-层次
架构
(一)
层次
架构
风格从之前的两层C/S到三层C/S,然后演化为三层B/S
架构
,三层B/S
架构
之后仍然在往后面演化,我们来看一下层次
架构
演化过程中都有了哪些演化的
架构
风格呢?而我们先简单了解一下之前的层次
架构
风格中分层的各个层次的作用。
B/S
架构
与C/S
架构
C/S
架构
;(客户端/服务器)的
架构
系统
将其分为二层:第一步下载客户端 第二步 通过互联网和服务器产生通信 第三步节后服务器返回的
数据
B/C
架构
我们用户想要 使用某个东西,不需要下载客户端。通过浏览器与服务器采用想对应的模式进行交互 一,用户输入他的要求 二,由浏览器向服务器发送请求 三,服务器解析请求 四,从
数据
库
中调用
数据
五,将从
数据
库
服务器中
读取
的
数据
返回给客户 ...
C#
110,535
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章