创业型互联网公司应该选择PHP, JavaEE还是.NET技术路线?

通常JavaEE和.NET被定义为构建大型在线系统,因为其支持面向对象设计,异步通讯,MVC等都相对比较完善,而PHP通常用于构建比较轻量的业务,例如SNS服务。因为实施速度快,工程师社区规模大,开源

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

创业型互联网公司应该选择PHP, JavaEE还是.NET技术路线?此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“”,获取验证码。在微信里搜索“”或者“”或者微信扫描右侧二维码都可以关注本站微信公众号。

 通常JavaEE和.NET被定义为构建大型在线系统,因为其支持面向对象设计,异步通讯,MVC等都相对比较完善,而PHP通常用于构建比较轻量的业务,例如SNS服务。  

因为实施速度快,工程师社区规模大,开源的方案比较多而且成熟,如果初创企业是帮助建站,在线广告或企业宣传网站建设,或者其他中小型应用,如果恰巧有成熟第三方开源架构可以选择,那么PHP是不错的选择。就好象为企业建站,会发现Wordpress, Joomla, Durpal都是不错的选择,而且非常富有生产力。  
如果业务系统都要自己来搭建,并实现相对复杂的功能,未来也可能会向着比较大规模演进,这个时候不妨考虑一下JavaEE或.NET。不过对于初创公司而言,选择空间并不多,而且不能选择错误,否则创业的钱就不够了。  

在JavaEE和.NET中如果要进行选择,往往人们会认为.NET存在这样几点先天不足,  
1. ViewState传递的数据量过大,.NET项目比较臃肿。而JavaEE更轻量。  
2. .NET只能构建于Windows操作系统,而JavaEE构建于Linux成本更低。  
3. .NET支持的开源框架比较少,而JavaEE支持的开源框架更多。  

但是如果结合创业型公司而言,那么往往思考就没有那么纯粹的技术化思维了。创业公司缺少前期积累,事业和员工都是崭新的,那么还要进行业务模式的论证,说服潜在用户达成合约,其挑战往往高过成熟公司。选择一个总体拥有成本有效的方式就非常重要,而不仅仅抽象的以技术思维判断那种技术路线更加高深或者时髦。  


这里.NET具有一些更加适合创业型公司的特性,  

1. 创业型公司技术团队需要从头搭建,.NET的学习曲线比较好,上手快,在创业初期更有助于帮助创业者节省成本。  
2. Windows虽然需要付费购买版权,不过如果安装Windows Server 2008 标准版简包,其实价格通常也就几千块钱。这个成本很快会发现,因为工程师熟悉Windows所在系统开发及运维上,成本还是很有竞争力的。一个Linux工程师解决技术问题用上几天甚至几周来适应某个开源而缺乏技术支持的软件包和配置,这个成本有的时候并不是一次性的,随着系统升级会发现工程师成本是很高的。特别是当工程师发生离职转岗的时候,这个成本更是高的惊人。完全可以冲抵Windows版权成本。  
3. .NET没有很多可选的开源架构,ASP.NET MVC 2到现在也就是一个View Engine,即便到了MVC 3之后,也只有有数的几个View Engine,而最后使用的其实就是Razor。这可能对与企业是一个限制,但是对于创业企业而言,这恰恰保证了工程师队伍的技术背景的整齐,并减少了很多技术领域的磨合。如果看到Struts 1到Struts 2之间的差异,Spring 2到Spring 3之间的新特性差异,就会知道工程师之间具有共同的语言和默契是多么重要。JavaEE有很多非常优秀的开源架构,还有Hibernate, Lucene, iBatis, Jax-WS等,不过这些丰富的开源架构也可能造成工程师在一起工作,首先要学习和熟悉这个创业公司要用什么技术架构。这个磨合成本对于初创公司,特别是出于商业模式验证阶段的公司而言,还是蛮高的。值得一提的是,在使用Java开发Jax-WS的Web Services应用的时候,序列化以及封装对象的复杂性往往造成工程师调试的困难,而.NET的WCF仅仅需要很简单的配置就可以完成Jax-WS下复杂的工作。这都将节省企业主很多创业资金。 
4. .NET发展到ASP.NET MVC之后,对于jQuery, Joomla, Durpal等开源第三方应用的支持有了很大进步。jQuery已经成为ASP.NET MVC中的一部分。这也使得ASP.NET MVC下的开发可以引入更多开源社区不错的成果。开发更加富有生产力。  
5. Windows的安全性往往受到诟病。不够如果部署Windows Server 2008 64位之后,设置必要的安全策略以及安装安全软件,那么能够被攻击和感染的几率将非常低。而SQL注入的问题其实在各个系统都存在,不管PHP, JavaEE或者.NET,这是需要在软件设计的层面进行设计和解决的。  
6. 支持.NET的商业组件厂商还是蛮多的,也就是说,出现问题可以找到人来付费为你提供技术支持。这样在一些情况下,就要比“我免费给你开源的软件,用得好,Donate一罐啤酒钱给我”的模式支持更快速而质量整齐。  
7. Visual Studio和Eclipse都能支持智能提示,语法高亮显示等功能,不过开发过程中会看到,Visual Studio这个IDE在很多细节上确实能帮助工程师节省大笔时间,特别是项目比较大,需要记忆的变量和方法名称很多的时候,这个优势更加明显。  
8. 的确微软的TFS虽然和Visual Studio集成紧密,但是对于初创公司而言,部署成本和维护成本显然过高了。而SourceSafe也不够强。那么在Visual Studio中集成AnkhSVN这样的插件,就可以方便的使用Subversion进行代码管理。而VisualSVN Server和AnkhSVN都是免费的。github也有相应的开源免费插件可以用。这样都将有助于成本有效。  
9. ViewState在Web Form开发的时候,的确会造成数据传输量大,系统负载大的问题。如果采用ASP.NET MVC的方式进行开发,那么就不一样了,传输的数据量和JavaEE或PHP下已经相差不大,而ViewData和TempData的引入,使得MVC的数据传输实现起来更加简单而高效。  

从上面几点可以看到,貌似Windows环境下的开发和实施成本比较高,但是将工程师的成本计算在内。这个成本就很可能倒置过来了,Windows环境下的.NET会更加适合企业创业阶段来选择。  

事实上,采用Windows系统下的.NET进行系统搭建的成功案例有很多,  
StackOverFlow.com,全球最大技术问答社区  
ctrip.com,携程网,在线商旅服务企业之一  
Expedia.com,全球最大订票与订房企业  
Dianping.com,大众点评网,在线点评网站  

创业公司很少有需求搭建几十台乃至数百台服务器。我们可以做一个类比,从这里可以看到基于.NET可以承载的业务量也是蛮大的。  
StackOverFlow.com访问量每月9,500万PV,其服务器构成  

10 Dell R610 IIS web servers (3 dedicated to Stack Overflow):  

1x Intel Xeon Processor E5640 @ 2.66 GHz Quad Core with 8 threads  

16 GB RAM  

Windows Server 2008 R2  

2 Dell R710 database servers:  

2x Intel Xeon Processor X5680 @ 3.33 GHz  

64 GB RAM  

8 spindles  

SQL Server 2008 R2  

2 Dell R610 HAProxy servers:  

1x Intel Xeon Processor E5640 @ 2.66 GHz  

4 GB RAM  

Ubuntu Server  

2 Dell R610 Redis servers:  

2x Intel Xeon Processor E5640 @ 2.66 GHz  

16 GB RAM  

CentOS  

还有其他一些Linux服务器用于Nagios,日志,备份,路由等等。  

具体资料可以参考,  

http://highscalability.com/blog/2011/3/3/stack-overflow-architecture-update-now-at-95-million-page-vi.html

当然,要支持这样的规模,也是需要很多的静态化,动静分离等设计上的考虑的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/120797.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 8年IT工作经验为何只能拿月薪1700?

    8年IT工作经验为何只能拿月薪1700?

  • 中国知网爬虫

    中国知网爬虫中国知网爬虫一、知网介绍提起中国知网,如果你曾经写过论文,那么基本上都会与中国知网打交道,因为写一篇论文必然面临着各种查重,当然翟博士除外。但是,本次重点不在于写论文跟查重上,而在于我们要爬取知网上一些论文的数据,什么样的数据呢?我们举一个例子来说,在知网上,搜索论文的方式有很多种,但是对于专业人士来说,一般都会使用高级检索,因为直接去查找作者的话,容易查找到很多重名作者,所以我们本次的爬…

  • 奇异值分解及几何意义「建议收藏」

    奇异值分解及几何意义「建议收藏」PS:一直以来对SVD分解似懂非懂,此文为译文,原文以细致的分析+大量的可视化图形演示了SVD的几何意义。能在有限的篇幅把这个问题讲解的如此清晰,实属不易。原文举了一个简单的图像处理问题,简单形象,真心希望路过的各路朋友能从不同的角度阐述下自己对SVD实际意义的理解,比如个性化推荐中应用了SVD,文本以及Web挖掘的时候也经常会用到SVD。原文:Werecommendasingular

    2022年10月28日
  • jsp中重定向与转发的区别_jsp重定向语句是什么

    jsp中重定向与转发的区别_jsp重定向语句是什么jsp中重定向和转发的区别:

  • SQL Server 数据库学习「建议收藏」

    SQL Server 数据库学习「建议收藏」一、认识数据库1、数据库的基本概念2、数据库常用对象3、数据库的组成数据库主要由文件和文件组组成。数据库中所有的数据和对象都被存储在文件中。二、创建数据库1、创建数据库对象资源管理器—数据库——右击——新建数据库三、操作数据表与视图1、创建数据表空值:表示数据未知。非空值:数据列不允许空值。(1)选择一个数据库——展开表——…

  • 《科研诚信与学术规范》参考答案最新版

    《科研诚信与学术规范》参考答案最新版研究人员在通过大众传媒传播自己已经发表的研究成果时,以下哪一个表述不正确:1.11【单选题】为了确保学术和科研(),多大学制定了荣誉法则。A、效率B、质量C、风格D、诚信正确答案:D我的答案:D2【判断题】大学建立荣誉制度的初衷旨在预防大学生考试作弊。正确答案:√我的答案:√3【判断题】科学研究与学术工作与人类其他活动一样,均建立在诚信之上。正确答案:√我的答案:√4【判断题】很多大学制定了荣誉法则的目的是为了确保学术和科研诚信。…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号