一:asp.net技术已过时,Php技术更新

Asp.net mvc 5 发布于2014 夏天.

二:php开发者更多,所以更能得到帮助

2者对比犹如下图,会拿电锯的肯定多少会点锯子,

会用锯子的不一定会用电锯.php比asp.net要好入门得多.特别是asp.net mvc的学习难度,

框架内容丰富度,学习时间,都要比php大或长.

三:asp.net服务器更贵,php比较便宜.

MVC + Windows + MS-Sql Server

  • Website development - $2000
  • Operating system - $500
  • MS-Sql Server - free edition
  • Total $2500

YII + Linux + MySql Server

  • Website development - $3000
  • Operating system - $0
  • MySql Server - free edition
  • Total $3000

四:php速度更快,asp.net更慢.

下面是实际测试的性能对比图.

1.导入txt数据

2.导入excel数据到数据库

3.通过目录查询产品数据并显示.

4.添加一个订单

5.所有测试平均耗时.

软件配置

  • MVC 4, .NET 4.5
  • YII2
  • Windows 8, IIS8, MS-SQL Server 2012 Express, MySql 5.5
  • Ubuntu 14.10, Apache2, MySql 5.5
  • Ubuntu 14.10, Nginx + fastcgi-mono-server4, MySql 5.5

硬件配置:

  • CPU: AMD Phenom II 965 x4
  • RAM: 4gb RAM
  • HDD: WD 1T

结果:很明显,win+asp.net mvc + mssql 性能高于php的.

之所以这样误解,主要是:大家把asp.net webform算进去了.

老版的asp.net确实性能不高,而且开发中大型项目,会把前后端,很多东西混在一起.

新版mvc架构,还加入Razor语法,在Release版和勾选优化选项的代码,无论开发还是执行效率,都要高于php.

综上:

数据库性能基本是网站性能瓶颈,win+mssql要高于linux+mysql.

asp.net release编译过代码,执行效率也高于php.

php极少优势地方如:

入门简单(就php和C#对比学习难度就差很多)

语言跟灵活,由于php是脚本语言存在先天优势.

解释型和中间码即时编译执行的效率对比你懂得.

解释再快也快不过编译型语言.

Asp.net Mvc对比Php的4大误解的更多相关文章

  1. ASP.NET MVC + EF 利用存储过程读取大数据,1亿数据测试很OK

    看到本文的标题,相信你会忍不住进来看看! 没错,本文要讲的就是这个重量级的东西,这个不仅仅支持单表查询,更能支持连接查询, 加入一个表10W数据,另一个表也是10万数据,当你用linq建立一个连接查询 ...

  2. ASP.NET MVC + EF 利用存储过程读取大数据

    ASP.NET MVC + EF 利用存储过程读取大数据,1亿数据测试很OK 看到本文的标题,相信你会忍不住进来看看! 没错,本文要讲的就是这个重量级的东西,这个不仅仅支持单表查询,更能支持连接查询, ...

  3. Asp.net MVC利用WebUploader上传大文件出现404解决办法。

    刚开始我上传小文件都是比较顺利的,但是上传了一个大文件大约有200M的压缩包就不行了.在chrome里面监视发现网络状态是404,我分析可能不是WebUploader的限制,应该是WebConfig限 ...

  4. 在asp.net mvc中上传大文件

    在asp.net mvc 页面里上传大文件到服务器端,需要如下步骤: 1. 在Control类里添加get 和 post 方法 // get method public ActionResult Up ...

  5. Asp.net MVC网站的基本结构

    Asp.net MVC网站的基本结构:Controller->IBLL(定义业务接口)->BLL->DA(调用Utility)->数据库 ,其中A->B表示A调用B 1. ...

  6. winform程序压缩文件上传,服务器端asp.net mvc进行接收解压

    期间编程没什么难度,唯一可能忽略导致结果失败是asp.net  mvc配置 对于压缩文件大的话,需要配置mvc的最大接收量: <system.web> <httpRuntime ma ...

  7. 在Asp.net MVC 3 web应用程序中,我们会用到ViewData与ViewBag,对比一下:

    Asp.net MVC中的ViewData与ViewBag ViewData ViewBag 它是Key/Value字典集合 它是dynamic类型对像 从Asp.net MVC 1 就有了 ASP. ...

  8. 这算是ASP.NET MVC的一个大BUG吗?

    这是昨天一个同事遇到的问题,我觉得这是一个蛮大的问题,而且不像是ASP.NET MVC的设计者有意为之,换言之,这可能是ASP.NET MVC的一个Bug(不过也有可能是保持原始请求数据而作的妥协). ...

  9. ASP.NET MVC导出excel(数据量大,非常耗时的,异步导出)

    要在ASP.NET MVC站点上做excel导出功能,但是要导出的excel文件比较大,有几十M,所以导出比较费时,为了不影响对界面的其它操作,我就采用异步的方式,后台开辟一个线程将excel导出到指 ...

随机推荐

  1. 正确使用TeamViewer VPN

    http://www.mcbbs.net/thread-222996-1-1.html

  2. Java NIO原理及实例

    Java NIO是在jdk1.4开始使用的,它既可以说成“新I/O”,也可以说成非阻塞式I/O.下面是java NIO的工作原理: 1. 由一个专门的线程来处理所有的 IO 事件,并负责分发. 2. ...

  3. 修改mysql 数据库密码

    第1种︰使用 mysqladmin命令 shell>mysqladmin -u root password new_password 如果忘记了MySQL的root密码,可以用以下方法重新设置: ...

  4. 检测Office是否安装以及获取安装 路径 及安装版本 QQ,迅雷,旺旺 C#代码

    #region 检测Office是否安装 ///<summary> /// 检测是否安装office ///</summary> ///<param name=" ...

  5. sql递归函数(自定义函数递归查找) 能返回递归的层次

    实现效果图如下: 创建表: create table t_tree ( id int IDENTITY(1,1), parentid int, name varchar(10) ) go 插入测试数据 ...

  6. 仿建行JS键盘

    一款比较好用的JS密码输入脚本,效果图如下: 代码如下: <html> <head> <script> /*js文件*/ window.onload=functio ...

  7. Android环境rm命令

    How can I execute all the possible unix(shell) commands in android programmatically? Android can't e ...

  8. python 中 time 模块 格式化 format

    %y 两位数的年份表示(00-99)%Y 四位数的年份表示(000-9999)%m 月份(01-12)%d 月内中的一天(0-31)%H 24小时制小时数(0-23)%I 12小时制小时数(01-12 ...

  9. Android学习笔记(十二)BroadcastReceiver的有序广播和优先级

    前两篇博文中简单整理了普通广播,其实还有有序广播,有序广播在开发中也是比不可少的,可以给广播接收者设定优先级来控制接受顺序,并却可以中断广播传递等等. 一.两种Broadcast: · 普通广播(No ...

  10. 日志配置logback

    在选择项目日志框架时,发现log4j的作者开发了新的日志框架,据说性能提高不少,那就选它了,不过,除了配置上有点不习惯外,最重要的一点 ,打印线程号这个功能依然没有(打印线程名这个东西是在是个鸡肋). ...