对Devexpress ASP.NET组件的一些看法
使用.net开发的应该都熟悉DevExpress这套组件,强大的功能,显著提高开发效率和提升用户体验。 不过好像大都用winform, 说起用asp.net组件来开发webform,很多人开口就说慢,不考虑使用,最后发现说慢的基本没用来开发过,更多是属于人云亦云或技术较差,就算让他们使用原生控件做的网站也会性能低下。什么东西都需要优化,除非你的程序只输出hello world,对asp.net网站的代码进行优化比winform更有必要性。当然你如果要求一个富客户端UI的性能和winform一样媲美,还想保持原生控件的性能,这是不可能的事情。毕竟像ASPxGridView这种重型控件中各种JS,CSS资源就达1.5M之多,首次加载会需要几秒的时间来加载资源到浏览器缓存。各控件间的资源重复率较高,所以如果某个控件加载过,会明显减少其他控件首次打开时的资源加载时间。
曾经碰到一个使用DevExpress开发webform的人,让我大跌眼镜的是,对于一套内置ajax的控件,他竟然还用submit来提交数据,我就问他,你用这套控件的初衷是什么,难道仅仅是因为某些功能实现起来方便,界面好看?而这样开发出的网站,又被以讹传讹的方式来进一步对其他未使用这套控件的人进行洗脑:慢。
好吧,原先我刚学习用这套控件的时候,确实也对这套控件认识粗浅,别谈优化了,学习阶段花了大量时间在搞清楚怎么实现某些功能,在经过1个项目实战后,后期又进行了代码重构和性能优化,才发觉这套控件在带来强大的功能,悦目的界面同时,性能一点也不差。局域网就不说了,即便放在外网,即使我把我的20M光纤限制为2M来进行使用,还是一如既往的流畅。当然对于某些人非要使用N年前的cpu+1G或2G的内存来跑程序,我也没办法,我只想问,你这配置跑win7顺畅不?当然他们会说,我跑xp很顺畅啊,我只能说,你算高配了,xp 512M内存就够了。 这就相当于我送你一辆跑车你非要在满街都是人的步行街跑,然后喷跑车垃圾速度一样无聊。当然要顺畅跑这套控件,也不是非要你弄个I7档次,在我的最早期i3cpu+4g内存,外网2M宽带上,已经非常流畅,当然我没有很多硬件资源去进行更多的测试得出流畅运行的最低配置.如果配合自制轻量级chrome内核浏览器,没有了被一堆乱七八糟插件占领的环境,性能还会有一定的提升。
所以大家对使用这套控件前应该有个清晰的认识,而不是人云亦云。当然我也放出一个实战项目来演示,目前这个演示放在自己的主机,更能体现真实的性能。经多次测试,如果放在虚拟主机上,则会有0.5秒-1秒的延迟。比如打开一个带有20-30个控件的界面,独立主机只需0.5秒,而虚拟主机则可能需要0.5-1秒,而打开一个带有60个左右的控件的界面,独立主机需要1秒的时间,而虚拟主机则需要1.5秒-2秒的时间。在运行N个站点ping平均值在60ms左右的虚拟主机上性能有明显的下降。当然没有哪家企业会把管理系统部署在虚拟主机上,在独立主机上大部分界面具有和winform相近的响应速度。
对Devexpress ASP.NET组件的一些看法的更多相关文章
- DevExpress ASP.NET Core Controls 2019发展蓝图(No.2)
本文主要为大家介绍DevExpress ASP.NET Core Controls 2019年的官方发展蓝图,更多精彩内容欢迎持续收藏关注哦~ [DevExpress ASP.NET Controls ...
- DevExpress ASP.NET Core Controls 2019发展蓝图(No.1)
本文主要为大家介绍DevExpress ASP.NET Core Controls2019年的官方发展蓝图,更多精彩内容欢迎持续收藏关注哦~ [DevExpress ASP.NET Controls ...
- DevExpress ASP.NET v18.2新功能详解(二)
行业领先的.NET界面控件2018年第二次重大更新——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress ASP.NET Cont ...
- DevExpress ASP.NET v18.2新功能详解(一)
行业领先的.NET界面控件2018年第二次重大更新——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress ASP.NET Cont ...
- DevExpress ASP.NET Core Controls 2019发展蓝图(No.6)
本文主要为大家介绍DevExpress ASP.NET Core Controls 2019年的官方发展蓝图,更多精彩内容欢迎持续收藏关注哦~ [DevExpress ASP.NET Controls ...
- 『Asp.Net 组件』Asp.Net 服务器组件 内嵌JS:让自己的控件动起来
代码: using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace ...
- DevExpress ASP.NET 使用经验谈(1)-XPO模型的创建
这个系列通过一些简单例子循序渐进,介绍DevExpress ASP.NET控件的使用.先来介绍一下XPO的使用,安装的DevExpress版本为DXperienceUniversal-12.2.4,使 ...
- DevExpress ASP.NET 使用经验谈(9)-Dev控件客户端事件 ClientSideEvents
上一节,已经介绍了ASPxGridView的自定义列和基本事件 ,本节接着将介绍Dev控件的客户端事件模型. 在上节示例基础上,我们增加一行菜单,使用Dev的ASPxMenu来实现,如下图所示. 图一 ...
- 『Asp.Net 组件』Asp.Net 服务器组件 内嵌图片:自己的图片控件
代码: using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace ...
随机推荐
- easyui datagrid 列的内容超出所定义的列宽时,自动换行
定义表单 nowrap="false"可以使得列中的内容超出所定义的列宽是就会自动换行pagination : true, // 当true时在DataGrid底部显示一个分页工 ...
- 正版Win7永不崩溃的秘密 解密系统备份!
备份正版Win7系统 打开Win7系统的控制面板,进入“备份和还原”选项,即可要使用正版Win7系统的备份还原功能. 进入Win7“备份和还原”功能 点击“设置备份”,即可启动Windows 备份程序 ...
- java学习之多线程
进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础. 线程(Lightweight Process,LWP)是程序中一个单一 ...
- python socket理论知识
一.socket理论: 发现一个很好的文章,一个高手写的,我也就不再做搬运工了,直接连接吧,对理论感兴趣的可以去看看! http://www.cnblogs.com/dolphinX/p/346054 ...
- Roland钢琴开发中音符值、度、与音名之间的转换算法
在Roland钢琴伴侣的开发中,首先将mid文件解析出来取到每一个音符的起始时间,每一个音符的时值,音符值(比如中央C的值是60),在绘五线谱的时候需要将每一个音符值与它对应的度(octave)和音名 ...
- 2014年同年CFA考试中哪些CFA资料没有变化?
从2014年起,美国CFA协会将官方教材.题库.模拟题等CFA资料捆绑在报名费用之中,而以往可以单独选购的纸质版教材也变成了额外购买.这让非常多參加12月的CFA考生产生了借阅6月考生CFA资料的想法 ...
- k8s 集群基本概念
一.概述: kubernetes是google开源的容器集群管理系统,提供应用部署.维护.扩展机制等功能,利用kubernetes能方便管理跨集群运行容器化的应用,简称:k8s(k与s之间有8个字母) ...
- win7环境下安装MongoDB
1.从http://www.mongodb.org/downloads获取,下载适合windows版本的mongodb,注意32位和64位的区别2.将下载的zip版本,解压到D:/mongodb3.创 ...
- CSS3六边形
<!DOCTYPE html> <!-- saved from url=(0043)http://dbox.whosemind.net/demo/liufang.html --> ...
- 如何给Ubuntu 安装Vmware Tools
http://jingyan.baidu.com/article/3065b3b6e8dedabecff8a435.html