IBM是服务器提供商,Oracle是数据库软件提供商,EMC则是存储设备提供商,三者构成了一个从软件到硬件的企业数据库系统。由这三驾马车构成的数据库系统几乎占领了全球大部分商用数据库系统市场份额。除阿里巴巴这样需要大量数据运算的电商企业,其他如石油、金融行业也广泛地使用这套系统。
具体来说,阿里巴巴的“去IOE”运动就是用成本更加低廉的软件——MYSQL替代Oracle,使用PC Server替代EMC2、IBM小型机等设备,以消除“IOE”对自己数据库系统的垄断。这一行动也被业内解读为低成本化——基于“IOE”在业内的垄断,整套系统维护费用非常昂贵,仅仅Oracle系统三年的销售价格就达到八位数,而阿里旗下的用户群每年都在增长,在应用云计算的过程中,“IOE”系统并不适合云服务横向扩展,也就是多个数据库系统同时运行,因此云服务一旦扩张,这部分维护成本将非常高。
今年5月17日,最后一台小型机在阿里巴巴支付宝下线,标志着阿里已经完成去IOE化。上海财大经济学院副教授、高等研究院市场机制设计和信息经济研究中心主任李玲芳对《第一财经日报》称,阿里巴巴的“去IOE”为市场带来了一个成功的范本,证明“去IOE”是有可能的。
除了降低成本,“去IOE”化还有信息安全的说法。前有“棱镜门”事件引起了信息安全的担忧,就在两天前的8月25日,中国互联网络信息中心(CNNIC)官方微博的通告称,CN域名遭遇了规模最大的一次攻击事件。而“IOE”都属于外资企业,因而去IOE化带有一定的保护网络安全意味。
去ioe,它是阿里巴巴造出的概念。其本意是,在阿里巴巴的IT架构中,去掉IBM的小型机、Oracle数据库、EMC存储设备,代之以自己在开源软件基础上开发的系统。我自己觉得,大多数人对阿里巴巴集团技术人员的技术能力还不太了解,阿里巴巴的技术积累一定超出很多人的想象。我用另外一句话来说,“去IOE”这件事情,没做成,肯定是我的责任今天做成了,跟我一点关系都没有。我们真的有很多很好的人才,比如说像淘宝的一位员工,他对淘宝业务的熟悉,对技术的理解也不是一般人可以比的,更重要的是他愿意“革自己的命”,绝不担心“去IOE“会让自己原来的技能没有用,这时候理想变得比什么都重要。
大多数严重依赖IOE的企业在技术人才培养有点“拿自己的钱给别人交学费,但却给自己带了手铐”,中国企业对技术的需求旺盛,超过世界上任何国家和地区,所以技术上面临的挑战也超过了他们,但我们主要使用的是国外传统IT企业的软硬件,而别人也没有现成的技术能解决你的问题,我们自己也因为这种依赖而失去很多机会。阿里巴巴曾经选用过Greenplum是一个很好的例子,付了很多学费。。“去IOE”的经验表明,现在我们有一次机会把我们的需求和钱用来发展适合长远发展的技术,让IT围绕自己的产品来发展。
对于我们自己的人才选择,阿里很谨慎,很多在国外厂商干过的顶级人才,并没有轻松地收到聘书,这是因为在企业中跟着别人做事,和在阿里用使命感开闯出一片天空有很大不同。“去IOE”需要极其合适的人才,才能带出一支像样的队伍,团队里每一个人的潜力也是逐渐被激发出来的。
PHP适合于快速开发,中小型应用系统,开发成本低,能够对变动的需求作出快速的反应。而Java适合于开发大型的应用系统,应用的前景比较广阔,系统易维护、可复用性较好。通过对两种语言写的OA系统的比较,对这两种语言的差异进行了一个全面的比较.
现在市场上的oa基本上可归结为两大阵营,即php阵营和java阵营。但对接触oa不久的用户来说,看到的往往只是它们的表相,只是明显的价格差异,却很难看出它们之间的实际差异。其实, PHP + MYSQL 不值钱不仅仅局限于oa软件,而是整体上PHP + MYSQL开发的软件都不如java开发的软件值钱。为什么PHP + MYSQL 的OA为什么不值钱呢?首先得明白php和java之间的差异才行。
1、系统的技术架构比较
分层是将系统进行有效组织的方式,分而治之的思想是计算机领域中非常重要的思想。在好的分层思想引导下,便能实现“高内聚、低耦合”,也能将具体的问题割裂开来,易于控制、易于延展,更易于分配资源。PHP只能实现简单的分布式两层或三层的架构,而JAVA在这方面就十分强大,可以实现多层的网络架构。运用MVC的设计模式,可使oa系统具有更加高效、合理的系统架构。技术架构的落后,使运用php编写的oa软件系统先天不足,而后天又无法补足其先天上的劣势。使得系统在可拓展性、需求应变性上与JAVA编写的oa软件系统的差距越来越大。架构的差距,注定了php做的oa充其量是个小家碧玉,始终无法和java这种大家闺秀同台竞技。
2、数据库访问比较
PHP可编译成具有与许多数据库相连接的函数。将自己编写外围的函数去间接存取数据库。通过这样的途径当更换使用的数据库时,可以轻松地修改编码以适应这样的变化。但PHP提供的数据库接口支持彼此不统一,比如对Oracle, MySQL,Sybase的接口,彼此都不一样。由于PHP对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强。
而Java通过JDBC来访问数据库,通过不同的数据库厂商提供的数据库驱动方便地访问数据库,访问数据库的接口比较统一。如果同样是将开发的web应用从MYSQL数据数转到ORACLE数据,PHP需要做大量的修改工作,而且比较繁琐。但JAVA开发的便只需要很少的更改便能实现。
数据库访问方式的差异,奠定了php开发出的oa和java开发出来的oa是马车和火车的差距,前者只能亦步亦趋而且额度有限,后者却是工业化的结晶,不仅能够包容万物而且速度上稳步提升。
3、安全性对比
在同是开源和跨平台的java面前,php丢掉了很多的优势。在代码的安全性上尤为突出。php的开发程序在别人拿到代码后,可以很容易的进行修改。而java开发的程序由于无法看到完整的源代码,只能看到一些编译好的类文件,所以安全性较高。加之系统架构的优势,在安全性上php和java是相去甚远。
如果非要将php和java在安全性上做个比较的话,同一个小偷光顾php那是随便拿来随便改,想拿什么拿什么,拿的高兴还能大笔一辉某某到此一游。而光顾java的时候,便会发现警察把守,内设自动报警装置,即便突破重重阻扰后进入居室。那值钱的东西都放在加密后的保险柜中,只能望洋兴叹、铩羽而归。
4、前瞻性和拓展性
从整体来说,php适用于中小型系统,而java适用于大型系统。Php能够将单一的事件做好,但却不适合完成集成度较高的多项并发事件。为什么说php适合中小型系统而不适合做大系统呢?
首先, php缺乏多层结构支持。而对于大型的系统负荷站点,只能采用分布计算。将数据库、应用逻辑层和表示逻辑层彼此分开,并将同层的根据流量分开,组成二维数组。而php恰恰缺乏这种支持。
其次,PHP提供的数据库接口不统一,要将多个不同的数据库数据统一需要花费很大的力气。而JAVA则没有这种缺陷,可通过SUN Java的Java Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Application Server获得结构支持。如IBM的E-business,它的核心是采用JSP/Servlet的Web Sphere,是通过CGI来提供支持的。
如果将Php比作将才,具备独挡一方的能力。那么java便是帅才,具有较好的前瞻性和拓展性,整体布局和协同能力强。能够指挥千军万马,最后逐鹿中原。
5、开发成本比较
既然php在诸多方面都不如java优异,那么php开发出的oa产品何以与java产品竞争呢?在于Php阵营普遍走的是低端路线,而java阵营走的是中高端路线。两者之间交*的区域较小。
软件价格的高低很大程度上和自身成本和功能相挂钩。php的入门门槛较低,绝大多数学过c的程序员都很容易转型为php程序员,这使得php程序员的泛滥成灾的同时,低成本的php软件产品也层出不穷。以PHP最经典的组合PHP + MySQL + Apache为例,由于所有软件都是开源免费的,所以投入并不高。
而java开发需要特定的环境,成长为一个合格的java程序员需要一定的时间,java程序员的成本也是php成本的几倍。Java的web应用服务器免费的有Tomcat、JBoss等,而要想具有很好的商业化服务便必须选用Web Sphere和 Web logic。这其中投入的成本无形中便超是php成本的N倍。所以,java开发oa的成本要远远高于php开发出来的同类软件产品。但也正由于java开发的成本较高,很难实现抄袭和短期内逾越的可能,也使得java用开发出的产品门槛更高。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)