服务器系统对比、数据库对比、后台开发语言对比

来源:互联网 发布:域名跟网址的区别 编辑:程序博客网 时间:2024/05/17 03:09

服务器系统对比:

这里写图片描述

服务器的高性能主要体现在cpu高速计算能力,强大的I/O外部数据吞吐能力等方面,主要为客户机提供WEB应用、数据库、流媒体服务。为确保服务器长时间的稳定运行,企业是否选择了一个适合自身需要的操作系统无疑是至关重要的。现在对几大主流的服务器操作系统进行对比分析,没有最好的系统,只有最适合的系统。

Windows系统

windows服务器操作系统我们都比较熟悉,它是Microsoft公司开发的,Microsoft是全球最大的操作系统开发商。Windows系统在局域网配置中是最常见的,但由于它对服务器的硬件要求较高,且稳定性不是很好,作为WEB服务器使用时,巨大的内核通讯量不是windows可以承受的,所以微软的服务器操作系统一般只是用在中、低档服务器中。当然Windows系统也有自己的优点,windows在PC时代已经家喻户晓,在易用性方面,没有人比Windows做的更好,相比其他服务器系统来说,极大的降低了使用者的学习成本,这也是Windows系统经久不衰的原因之一。常见的WindowsServer系统有windows server 2003、windows server 2008、windows server 2012等。

Linux系统

Linux服务器操作系统是在Posix和Unix的基础上开发出来的,支持多用户、多任务、多线程、多CPU。最大的特点就是开源,开源就是所有人,包括相关企业,政什么的,开发人员共同监督,在这样的监督之下,一套成熟的方案几乎很少出现漏洞。基于这种平台的开发和使用不需要用户支付任何版权费用,是很多创业者的基石,也是一些保密机构对服务器操作系统采购的首选。另外,Linux还有一套完整的权限机制,没有相关权限,想要对系统造成破坏根本无从下手,安全性和稳定性相对较高,受到中、高级开发人员的青睐。也正是因为Linux的安全性和稳定性,国内外很多保密机构服务器操作系统采购的首选,这类操作系统主要应用于中、高档服务器中。

Unix系统

Unix服务器操作系统由AT&T公司和SCO公司共同推出,主要支持大型的文件系统服务、数据服务等应用。功能强大。这种网络操作系统稳定和安全性能非常好,但由于它多数是以命令方式来进行操作的,不容易掌握,特别是初级用户。正因如此,小型局域网基本不使用Unix作为网络操作系统,UNIX一般用于大型的网站或大型的企、事业局域网中。因其体系结构不够合理,UNIX的市场占有率呈下降趋势。Unix在一些人眼中属于高端操作系统,因为很多的服务器商生产的高端产品只支持Unix操作系统。

NetWare系统

NetWare服务器操作系统相对来说使用的不是很多,多数人不是特别的熟悉,因为它在市场中的份额是比较局限的,在一些特定行业和事业单位中,NetWare优秀的批处理功能和安全、稳定的系统性能也有很大的生存空间。NetWare操作系统兼容DOS命令,其应用环境与DOS相似,具有相当丰富的应用软件支持,技术完善、可靠,以对网络硬件的要求较低而受到一些设备比较落后的中、小型企业,特别是学校的青睐。而且NetWare服务器对无盘站和游戏的支持较好,常用于教学网和游戏厅。这种操作系统有市场占有率呈下降趋势。

数据库对比

这里写图片描述

现在的数据库以关系数据库为主流,各大数据库也在开发面向对象的关系型数据库,把高级程序设计语言和数据库实现无缝连接,以发挥各自的优缺点。高级程序设计语言善于描述复杂的过程,而数据库有着强大的管理功能和可操作性,我们现在的数据库是以表为基本的存储单元(描述一个对象),但现在的发展越来越快,对数据的复杂性也越来越大。

Oracle

Oracle是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。 Oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够处理大批量的数据,在网络方面也用的非常多。不过,一般的中小型企业都比较喜欢用mysql, SQLserver等数据库系统,它的操作很简单,功能也非常齐全。只是比较Oracle数据库而言,在处理大量数据方面有些不如。

MySQL

MySQL是一个小型关系型数据库管理系统,是开源的,MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。MySQL服务器工作在客户/服务器或嵌入系统中。有大量的MySQL软件可以使用。MySQL是多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年, Sun又被Oracle收购。对于MySQL的前途,没有任何人抱乐观的态度。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

SQL Server

SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。只能在windows上运行,C/S结构,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据库。并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,通过Web对数据进行轻松安全的访问,具有强大的、灵活的、基于Web的和安全的应用程序管理等。而且,由于其易操作性及其友好的操作界面,深受广大用户的喜爱。

DB2

能在所有主流平台上运行(包括windows)。DB2就是IBM开发的一种大型关系型数据库平台。它支持多用户或应用程序在同一条SQL 语句中查询不同database甚至不同DBMS中的数据,最适于海量数据。DB2在企业级的应用最为广泛,在全球大型企业中,有很高的时长份额。具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点或数据库节点性能最高, 保持开放平台下的TPC-D和TPC-C的世界记录。性能较高适用于数据仓库和在线事物处理。跨平台,多层结构,支持ODBC,JDBC等客户。操作简单,同时提供GUI和命令行,在windowsNT和unix下操作相同。在巨型企业得到广泛的应用,向下兼容性好。风险小。

Sybase

美国Sybase公司研制的一种关系型数据库系统,是一种典型的UNIX或WindowsNT平台上客户机/服务器环境下的大型数据库系统。 Sybase提供了一套应用程序编程接口和库,可以与非Sybase数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用。系统具有完备的触发器、存储过程、规则以及完整性定义,支持优化查询,具有较好的数据安全性。性能较高,支持Sun、IBM、HP、Compaq和Veritas的集群设备的特性,实现高可用性。性能接近于SQL Server,但在UNIX平台下的并发性要优与 SQL Server。适应于安全性要求极高的系统。具有较好的并行性,速度快,对巨量数据无明显影响,但是技术实现复杂,需要程序支持,伸缩性有限。使用命令行操作,对数据库管理人员要求较高。同时提供GUI和命令行。但GUI较差,常常无法及时状态。

除以上介绍之外,还有一些不常用的数据库,比如:Informix、PostgreSQL、Access、FoxPro等。

后台开发语言

这里写图片描述

目前一般公司的后台用的开发语言大概有以下几种:java,python,php,asp.net,c++,rubyon rails 等。国内的大公司偏业务的一般都用 Java 做后台开发比如淘宝,网易,美团等. Python国内一般是一些体量不是这么大的公司使用,例如豆瓣,知乎等。其实,各种语言都有优缺点,没有哪一种是绝对好的。各公司也不是单单只使用一种后台语言,都是结合起来开发的。同公司用不同后台开发语言也有各自的原因。比如,要看需求是重展现还是重业务逻辑,重展现就用php等,重业务逻辑就用Python等,也有原因是由于技术积累,比如腾讯一直主要用C++。

Java

Java比较成熟:1995年就已出现。对于商业网站而言,Java是使用最广泛的语言,性能好,适合大中项目,跨平台,安全性高,稳定可靠,运行效率高(尤其是JIT的出现之后差距更大了),不容易犯错(强类型、预编译、必须拦截异常等等),能有效的提高复用度,提升性能和吞吐能力,能规避安全问题。但是开发复杂,开发和发布的效率相对较低,维护成本高,开发人员费用高。Java的生态系统非常成熟(IDE、框架等)。

PHP

灵活,上手快,易修改,发布快捷,环境好部署。容易犯错,行效率不高,缺乏全局缓存。由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS、Mac OS、Android等平台。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多。PHP最大的优势是学习门槛低。它基本可以在任何地方被执行,托管和非常简单。

ASP.NET

微软公司推出的新一代脚本语言。ASP.NET基于.NET Framework的Web开发平台,不但吸收了ASP以前版本的最大优点并参照Java、VB语言的开发优势加入了许多新的特色,同时也修正了以前的ASP版本的。跨语言, 中小型项目上性能好,开发快,适合windows平台,维护成本低。代码逻辑混乱,难于管理,代码的可重用性差。ASP.NET具备开发网站应用程序的一切解决方案,包括验证、缓存、状态管理、调试和部署等全部功能。在代码撰写方面特色是将页面逻辑和业务逻辑分开,它分离程序代码与显示的内容,让丰富多彩的网页更容易撰写。同时使程序代码看起来更洁净、更简单。

Python

简单易学,开发快,语言简洁,易于维护,开源,可移植,可扩展。速度慢,格式强制,容易犯错。用Python可以做日常任务,比如自动备份你的MP3;可以做网站,很多著名的网站包括YouTube就是Python写的;可以做网络游戏的后台,很多在线游戏的后台都是Python开发的。

Node.js

Node.js自从2009年发布一下,使用十分广泛。Node.js具有异步,事件驱动以及可扩展的特性。Node.js应用是由JavaScript开发的,因此它具有JavaScript的所有优点:享受到了JavaScript V8引擎的好处,灵活而轻量级的语法,跟Java一样,JavaScript出现在1995年。所以语言本身发展历史很长,相对稳定。 Node.JS逐渐发展成一个成熟的开发平台,吸引了许多开发者。有许多大型高流量网站都采用Node.JS进行开发,此外,开发人员还可以使用它来开发一些快速移动Web框架。

除以上介绍之外,还有其他一些后台开发语言,比如:C++、C#、C、Go、Ruby等。

原创粉丝点击