2.2 选择企业建立网站的方式
2.2.1 网站服务器的选择
网站是一种最基本的Internet应用,需要部署在面向Internet的网络服务器上。建立和发布网站首先需要考虑如何选择承载网站的服务器。下面列出目前常用的解决方案,然后给出如何根据需要进行选择的建议。
1. 自行管理服务器
企业选购自己的服务器,单独建设机房,租用专线接入Internet。采用这种方式,服务器完全由企业掌控,不受第三方约束,可以说是最安全、最可靠的,但是缺点很明显,具体列举如下。
□ 成本很高。需要投入高昂的专线及网络相关设备费用,配备专业的维护工程师。
□ 稳定性差。多数企业缺乏足够专业的团队对网站进行维护,难以达到365天全天候运营服务和监控服务。
□ 安全性不高。专线接入易受外部攻击,难以提供像专业数据中心一样的网络安全保障。
□ 运行环境差。网络的可用性、通信的稳定性、速度和带宽相对不足,电力持续供应不能保证,机房环境相对较差。
□ 扩展性差。自备机房空间和带宽有限,不易快速和稳定地进行升级和扩展。
2. 服务器的托管
企业自行购买服务器产品,然后将其托管到IDC(Internet Data Center,互联网数据中心)服务商的机房中,只需要支付通信带宽和托管费用。IDC具有完善的机房设施、高品质的网络环境、丰富的带宽资源和运营经验,可对用户的网络和设备进行实时监控。服务器仍然为用户所拥有,服务商一般提供线路维护和服务器监测服务,用户自己进行维护(一般通过远程控制进行),或者委托专业人员进行远程维护。服务器托管具有以下优点。
□ 服务器由企业自行配置,可以根据自身的发展需要,选择适合自己的配置,更好地匹配企业所选购的软件。
□ 与自建机房和租用专线上网相比,其整体运营成本有较大降低。不用自建机房,还可以节省高昂的专线、网络设备费用,以及相关的管理维护开销。
□ 稳定性好。专业机房提供365天全天候运营服务,专业服务商提供稳定的网络带宽,无线路拥塞之忧。有专业技术人员负责维护网络,有效保障网络的稳定和高速。
□ 安全性高。专业服务商提供高可靠结构的防火墙,365天监视、检测来自网络的攻击。
□ 运行环境优越。专业服务商拥有规模和容量较大的机房,拥有多条Internet网络通道,网络畅通性达到99.9%,电力持续供应保证两路市电。
□ 托管网络设备扩展方便。在数据部署以及迁移的过程中会比较方便。
3. 服务器的租用
这里特指传统的实体物理机整机租用。用户无需自己购买服务器,只需根据自己业务的需要,提出对硬件配置的要求,由服务商按需提供网络服务器,并提供从设备、环境到维护的一整套服务。通常由服务商管理维护服务器硬件和通信线路,用户可选择完全自行管理软件部分,包括安装操作系统及相应的应用软件,也可要求服务商代为管理系统软件和应用软件。整机租用由一个用户独享专用高性能服务器,在成本和服务方面的优势明显。服务器软、硬件更新换代快,淘汰周期是3年左右,租用有助于用户解决这方面的问题。现在IDC服务商提供的租用比较可靠,后期运维也有保障。
4. 虚拟主机的租用
虚拟主机依托于服务器,将一台服务器配置成若干个具有独立域名和IP地址的服务器,多个用户共享一台服务器资源。一般由服务商安装和维护系统,用户可以通过远程控制手段全权控制属于自己的空间,性能价格比高于自己建设和维护服务器。用于网站的虚拟主机有以下几种形式。
(1)网站租用空间。这是早期最简单的解决方案,由ISP提供磁盘空间用于承载用户的Web网站,用户没有自己独立的域名,空间的网络地址是一串URL地址,实际上使用网站虚拟目录作为子网站对外出租。这种解决方案只适合简单的展示类网站,不能满足商用需求。
(2)Web虚拟主机。这种技术是在一台服务器上建立多个Web网站。它将一台服务器主机划分成若干台“虚拟”的主机,每一台虚拟主机都具有独立的域名(有的还有独立的IP地址),具备完整的网络服务器(WWW、FTP和E-mail等)功能,虚拟主机之间完全独立,并可由用户自行管理。这种解决方案主要用于Web网站,是早期ISP主推的建站服务形式,也是中、小型企业在低投入情况下的一种很好的选择。与服务器托管和整机租用方式相比,这种方式可以节省开支,并且同样可以获得较高的访问速度。
(3)VPS。VPS全称为Virtual Private Server,可译为虚拟专用服务器。一台物理服务器可以通过服务器虚拟化和自动化技术虚拟成多个虚拟专用服务器。它主要采用操作系统虚拟化技术,基于共用操作系统内核,无需额外的虚拟化内核的过程,虚拟化过程资源损耗低,从而可以在一台物理服务器上实现更多服务器的虚拟化。
VPS以最大化的效率共享硬件、软件许可证以及管理资源。每个VPS都可分配独立公网IP地址、独立操作系统,实现不同VPS间磁盘空间、内存、CPU资源、进程和系统配置的隔离,为用户和应用程序模拟出“独占”使用计算资源的体验。VPS可以像独立服务器一样,重装操作系统,安装程序,单独重启服务器。IDC以资源租用的方式对外提供VPS租用服务。VPS主机技术同时支持Linux和Windows平台。
VPS可以运行单独的操作系统,管理方法同服务器一样。其中的CPU、内存都是共享的,一台物理服务器上可能会运行上百个VPS。一旦物理机宕机,它上面运行的所有VPS也都会跟着宕机,可用性就会得不到保障。
5. 云主机
云主机是一种基于云租用的新兴虚拟主机。云计算(Cloud Computing)是一种计算机软、硬件资源租用服务,目的是将计算、服务和应用作为一种公共设施提供给公众,使人们能够像使用水、电、煤气和电话那样使用计算机资源。IaaS(Infrastructure as a Service,基础设施即服务)是目前最主要的云服务模式,这种模式将数据中心、基础设施等硬件资源通过Internet分配给用户,提供的服务是虚拟机,即云主机。云主机是云平台提供的一个由计算、网络和存储资源组合而成的虚拟机。
具体来讲,云主机具有以下优点。
□ 快速部署。一般云服务商都提供快速开通能力,可以快速申请。
□ 按需配置资源。用户可以自行选择CPU、内存、硬盘以及带宽线路,选择操作系统和平台软件,选择租期,按需付费。
□ 弹性升级和扩容。云主机提供的是弹性计算服务(Elastic Compute Service,ECS),在集群内是弹性可伸缩的,用户可根据需求灵活地调整配置,可以随时在线增加服务器的CPU、内存、硬盘以及带宽等配置,或者增加服务器数量,无需担心低配服务器在业务突增时带来的资源不足问题。无需转移数据即可弹性扩容,这也是它特有的优势。
□ 安全系数高,不容易宕机。它是服务器集群在均衡负载之后产生的虚拟主机,集群中每个服务器上都有云服务器的一个镜像,除非集群内服务器全部出现问题,才会无法访问。主机中的数据由多重镜像备份,用户的数据安全更有保障。良好的物理隔离,将确保主机不会因其他用户主机故障而相互影响。
□ 管理方便。用户可以通过Web页面集中管理租用的分布在多个云计算节点的云主机。云主机提供有控制面板,能直接在线升级、更新打补丁、进行系统重启。
□ 高性价比。云主机全部采用高端服务器,每个用户都是独占主机资源。
云主机是虚拟化出来的,如果宿主机负载高,会影响其上的云主机。另外,机型配置一般都是通用版的,无法满足某些特殊的硬件或者系统配置。
6. 网站服务器选择建议
如果技术和设施条件都很好,可自行建设和维护服务器,就需要提供足够带宽的Internet线路。这种方式代价太高,仅专业机房的电力费用就不低,一般只有大企业才会考虑自建自管。另外,在开发或测试阶段也可使用自己的服务器。从性能价格比和管理维护角度考虑,面向Internet部署网站服务器时可选择服务器租用、服务器托管、虚拟主机或云服务器等外包服务。这些外包服务由IDC服务商或云服务商提供,这些服务商往往会提供包括域名注册、企业邮箱等在内的一揽子服务。
选择服务器托管的以大、中型企业居多,这类企业更注重服务器的稳定性和数据的安全性,根据自己的实际情况定制硬件,对硬件的要求较高,多选择品牌服务器。这种方式省去宽带接入、机房和设备维护等方面的投入,同时又享受到了高品质的网络服务,相对成熟的企业电子商务网站可以选择这种方式。托管业务一直是传统IDC行业主推的产品。服务器托管美中不足的是价格偏贵。
服务器整机租用业务是面向具备一定购买力,且比较关注短期投资回报率的企业推出的传统业务。IDC服务商有自己的渠道商,硬件价格方面会比自行购买更有优势。这种方式一次性投入小,对于小型企业和前期投入较少的用户来说非常实用。即使对服务器硬件配置要求不高,租用中也要确保是品牌机,并选择优质机房。初创阶段的企业电子商务网站可以考虑选择这种方式。不过随着云主机的流行,转向云主机的用户越来越多。
最为简单的形象宣传类网站使用租用空间即可,数据展示类网站则可以使用Web虚拟主机。这两类虚拟主机方案可以说是成本最低的,但服务品质往往缺乏保障,仅限于小流量的小型企业网站。如果网站应用偏重于性能、可靠性,需要满足较大访问量,则不能选择这类方案。
VPS是一种介于传统虚拟主机和独立服务器之间的技术,从性能、安全及扩展性上同独立服务器没有实质性的差别,而费用仅相当于租用独立服务器的1/4或1/5,并且无需额外支出后续的硬件维护管理成本。VPS拥有传统虚拟主机所不具备的系统独立管理权,解决了那些既需要独立主机性能、财力又不够充裕的网站的运营发展问题,无疑是一种比较实惠的选择,初创阶段的企业电子商务网站可以考虑选择这种方式。
目前,云主机作为一种新兴的网站托管平台,开始替代大量的虚拟主机和物理服务器。云主机相对于物理服务器的短板越来越少,而其优势(灵活性、时效性、低成本、快速开通、按需购买)相对于传统虚拟主机和物理服务器更为明显。最重要的是它拥有弹性扩张功能,快速发展的中、小企业随着业务量的增大直接升级即可,避免了使用传统服务器导致的前期资源浪费、后期资源不足的问题。电子商务网站初始阶段访问量小,只需要一台低配置的服务器即可,应用程序、数据库、文件等所有资源均在一台服务器上,选择低配的云主机即可。随着业务的增长,可以随时在线升级服务器的CPU、内存、硬盘以及带宽等配置,或者增加服务器数量,无需担心低配服务器在业务突增时带来的资源不足问题而导致用户流失。实践证明,大流量、高并发的商城类网站,云主机也足以胜任。
2.2.2 服务商的选择
网站的建设、维护和开发是企业开展网络营销的前提和基础。从网络平台的提供、网站的规划设计到网站建设的专业化,专业化技术服务商可以为企业创建一个完整的网络营销环境。无论是自建自管网站服务器,还是租用网站服务器,都需要与相关的服务商打交道。
1. 如何选择ISP
自建自管网站服务器需要接入Internet,就需要与ISP打交道。ISP是Internet Service Provider的缩写,其意为Internet的接入服务提供商。每一个ISP都有自己的服务器,且通过专门的线路24小时不间断地连接在Internet上。需要进入Internet时,只要与ISP端的服务器连接,就可与世界各地连接在Internet上的计算机进行数据交换了。
(1)考虑ISP的服务质量。决定ISP提供服务质量好坏的因素是专线带宽、中继线数量及数据流通时的最高通信速率。
□ 专线带宽。专线带宽指的是ISP的服务器与Internet连接时的专线数据传输速率。因为所有的ISP用户在与ISP服务器连通之后,都使用这条专线,所以专线的带宽越宽,用户的连线速度也就越快。国内大多数ISP都是使用CHINANET的国际出口与Internet连接,它们所提供的专线带宽是指与CHINANET连接专线的数据传输速率。
□ 中继线数量。中继线的多少决定了该ISP可以同时支持的用户数。也就是说,如果该ISP有100条中继线就可以支持100个用户同时上网。有的ISP租用中继线,而有的ISP是电信部门直接主办的。
□ 最高通信速率。目前ISP提供给拨号方式上网的用户的最高接入速率为56KB/s;ADSL用户的下行速度可以达到512kbit/s~8Mbit/s,最高上行速度可以达到35kbit/s~640kbit/s。
(2)考虑ISP的收费。收费及服务一直是各家ISP所竞争的焦点。目前的收费方式基本上有3种:主叫式计费方式、固定账户按实际使用时间收费和固定账户包月制。
□ 主叫式计费方式。主叫式计费方式是指该网络用户没有实际申请固定的账户,而是使用ISP提供的电话号码和公用账户及密码来上网。ISP会自行识别拨出电话的号码并计费,用户在交电话费时一并交纳使用网络的费用。该种方式的最大特点就是用户不需要办理任何入网手续即可上网,网费的交纳也非常方便。
□ 建立固定账户。这是最常用的做法,用户到ISP那里申请一个自己的账户,交纳开户费并存入一定数额的网费,ISP会根据用户实际的使用情况从中扣除。当存入的费用用完后,用户需再向账户中存入一定金额以便继续使用。
□ 包月付费。包月付费就是每个月交纳固定数额的费用,然后就可以不限时间地使用。通常ISP都会提供安装、调试、培训及网络基础讲解等服务。为用户注册域名是ISP所提供的又一服务,该服务通俗来说就是给用户在网络中建立一个家。
(3)慎重选择ISP。ISP会提供很多服务,可以让企业员工访问Internet,也可让企业将网站信息放到员工的主机上。选择ISP是很重要的决策,会直接影响到Web网站的成功与否。
ISP的选择不能以价格作为唯一标准,价格低廉可能会导致Internet链接的速度很慢,这样访问企业页面时,下载时间会很长,而访问者不可能久等,就会终止下载。如果所选择的ISP的服务不可靠,即使花再多的时间,也访问不到页面,就会影响到访问企业页面的人数,使顾客满意度下降并降低销售总额。
Web服务器是企业网上经营的驻留地,企业信息能否应访问者的浏览请求顺畅地播放出去,Web服务器与Internet骨干网的连接速率是否能够保持不断线是关键所在。所以,在选择ISP时,切不可只图便宜,不顾性能,不看技术支持和售后服务。
2. 如何选择IDC服务商
选择服务器托管、租用或传统虚拟主机的用户,需要考虑选择合适的IDC服务商:一是要选择具有正规营业执照和相关资质的IDC服务商;二是要考察服务商能够提供的宽带资源和服务质量。具体可以从以下几个方面入手。
□ 上网查询IDC企业的信誉。
□ 从IDC企业网站客服那里了解服务产品。
□ 不少IDC企业都是中间商,可以从互联网、代理企业、运营商多方面了解机房硬件及带宽情况,拥有好的机房才可以提供稳定的服务。
□ 不要只关注价格上是否够便宜,而忽视质量。服务器的价格高低取决于多方面的因素,配置、带宽、IP分配、硬盘、内存等,这些都与价格高低有关,一定要满足自己的实际需求。
3. 如何选择云服务提供商
一旦决定选择云主机,就要选择云服务提供商。面对各有优势的众多云服务提供商,选择时可以考虑以下几个方面。
(1)安全稳固性与防御力。用户选择云服务的目的是在减少成本的前提下,更好地获取IT资源。但是,即便成本再低,不安全也没有意义。
(2)访问速度与稳定性。这就关系到网站的用户体验,具备更优的访问速度与更稳定的访问状态对于企业来说尤其重要。
(3)升级扩展弹性与部署能力。
(4)优质的服务。首先要注重的是对方的服务能力,其次才是进行云服务器的性能比较。优质又贴心的售后服务非常必要,云服务提供商应有一支专门的售后维护团队,对于出现问题的用户一对一地进行服务。
(5)技术参数及其细节。除了主要参数CPU、内存、磁盘、带宽线路外,还有一些细节,如使用的磁盘是闪存磁盘还是普通云盘,前者存取速度更快。
(6)考虑品牌。大品牌的服务商有资金、有实力,质量一般没问题。目前选择阿里云的企业比较多,阿里云提供了丰富的产品,可以满足不同用户的需求。
值得注意的是,一些传统的IDC服务商也将业务转到云上。在选购云主机时要搞清楚提供的是VPS,还是真正的云主机。
2.2.3 网站服务器硬件配置
企业要建立一个电子商务网站,必须先搭建一个网络平台。这其中涉及许多硬件设备,如计算机、网卡、网线、网关、交换机、路由器和服务器等,此外,还要有网络操作系统和应用软件。而服务器的选择是其中最为重要的一项工作。
服务器的自建自管、托管都需要购置一台或多台服务器作为网站的核心设备。服务器选购得是否合适,对网站的正常运转影响很大。租用服务器,甚至租用虚拟主机或云服务器也需要了解服务器的硬件配置。
1. 服务器的概念
服务器(Server)是指在网络环境中为客户机(Client)提供某种服务的专用计算机。服务器管理着应用程序、数据和网络资源。客户机请求服务,而服务器提供服务。早期的服务器主要用来管理数据文件或网络打印机,现在的服务器则可以根据用户的不同需要,提供不同的服务(如Web服务、E-mail服务、Internet接入服务及基础安全性的访问等)。
服务器既可以是集中的,也可以是专用的。集中式服务器是指将网络上的多项任务集中到单个主机上,可用来处理网络上的所有打印机、应用程序和数据共享任务。集中式服务器必须是高性能的计算机,以便能及时有效地处理网络上的各种请求。专用服务器则是指一台服务器主机只对应于一种服务,如应用程序服务器、数据文件服务器、电子邮件服务器及打印服务器等。专用服务器可以支持不同用户,因为负载分布于多台机器上。
2. 服务器的性能及选购
服务器是整个网络的关键设备,与普通计算机相比,对服务器的处理速率、可靠性、稳定性等综合性能的要求都比普通计算机高。服务器的选购需考虑许多因素,所以用户有必要了解服务器的相关知识,以做出正确的选择。
(1)服务器的分类。首先要清楚目前主流服务器的分类、各类服务器的主要特点以及适宜的应用场合。下面根据服务器的应用领域和配置档次,把服务器大致分为以下4类。
□ 入门级服务器。入门级服务器主要是应用于Windows NT或NetWare网络操作系统的用户,可以充分满足办公室型的中小型网络用户的文件共享、数据处理、Internet接入及简单数据库应用等需求。这种服务器与一般的计算机有相似之处,有很多小型公司干脆就用一台高性能的品牌机作为服务器。这种服务器无论在性能上还是价格上都与一台高性能PC品牌机相差无几,但它所能连接的终端数量非常有限(一般为20台左右),并且稳定性、可扩展性及容错冗余性能较差,所以仅适用于没有大型数据库数据交换、日常工作网络流量不大、无需长期不间断开机的小型企业。
□ 工作组级服务器。工作组级服务器是一个比入门级高一个层次的服务器,但仍属于低档服务器之类。工作组级服务器通常是仅支持单或双CPU结构的应用服务器,可支持大容量的ECC内存和增强服务器管理功能的SM总线,功能全面、可管理性较强且易于维护。它能连接一个工作组(50台左右的终端),可以满足中小型网络用户的数据处理、文件共享、Internet接入及简单数据库应用的需求。工作组级服务器较入门级服务器来说性能有所提高、功能有所增强,有一定的可扩展性,但容错和冗余性能仍不完善,也不能满足大型数据库系统的应用,且价格比入门级服务器贵许多,一般相当于2~3台高性能PC品牌机。
□ 部门级服务器。部门级服务器一般为双CPU结构,集成了大量的监测及管理电路,具有全面的服务器管理能力,可监测如温度、电压、风扇、机箱等状态参数,并结合标准服务器管理软件,使管理人员能及时了解服务器的工作状况。同时,大多数部门级服务器具有优良的系统扩展性,能够让用户在业务量迅速增大时及时在线升级系统,充分保护了用户的投资。它是企业网络中分散的各基层数据采集单位与最高层的数据中心保持顺利连通的必要环节。部门级服务器可连接100个左右的终端用户,适用于对处理速度和系统可靠性要求高一些的中小型企业网络,其硬件配置相对较高,其可靠性比工作组级服务器要高一些,当然其价格也较高(通常为5台左右高性能PC价格的总和)。部门级服务器可用于金融、邮电等行业,一般为中型企业的首选。
□ 企业级服务器。企业级服务器属于高档服务器,一般采用4个以上CPU的对称处理器结构,有的高达几十个,有独立的双PCI通道和内存扩展板,具有高内存带宽、大容量热插拔硬盘和热插拔电源,更具有超强的数据处理能力。企业级服务器产品除了具有部门级服务器的全部服务器特性外,最大的特点就是它还具有高度的容错能力、优良的扩展性能、故障预报警功能、在线诊断功能和RAM、PCI、CPU等具有热插拔性能。企业级服务器可连接数百台终端,它适合运行在需要处理大量数据、对传输速率和可靠性要求极高的金融、证券、交通、邮电、通信等行业的大型企业。
在服务器CPU指令架构方面首选CISC架构的服务器,因为这种结构的服务器在目前来说比较普遍,技术也相对成熟。它主要采用IntelIA架构技术,即人们常说的“PC服务器”,能满足中小型企业所用服务器的各项技术需求。
以上是从服务器的分类上来考虑的,当然选择服务器不能仅从类别上考虑。其实各类别之间也没有严格的区分界限,选择服务器最关键的还是要看服务器的各项性能能否满足企业的实际需求。下面就介绍在选择服务器时还要考虑的主流技术。
(2)服务器的主流技术。服务器包括了许多普通PC所没有的技术,如RAID(Redundant Arrays of Independent Disks,磁盘冗余阵列)技术、智能输入/输出技术、冗余和容错技术、智能监控管理技术及热插拔技术等。为了便于用户对这些技术的认识与理解,下面就简单介绍一下各项主要技术。
□ 磁盘冗余阵列(RAID)技术。这一术语最先使用于美国加利福尼亚大学伯克利分校的研究员Patterson、Gibson和Katz在1988年撰写的一篇说明阵列配置和应用的论文中。过去,计算机系统往往只限于向单个磁盘写入信息。这种磁盘通常价格昂贵而又极易出故障。硬盘一直是计算机系统中最脆弱的环节,因为硬盘是在其他部件完全电子化的系统中唯一的机械部件。磁盘驱动器含有许多高速运行的活动机械部件,如盘片、磁头,硬盘容易损坏始终是网络管理人员最担心的。对于一个长期不间断运行的网络系统来说,人们所关心的不是硬盘驱动器是否会发生故障,而是在于何时发生故障,当故障发生时怎样去处理。采取“磁盘冗余阵列技术”就是为了在硬盘发生故障时,通过冗余阵列减少给网络带来的负面影响。RAID的实现机制就是通过提供一个廉价和冗余的磁盘系统来彻底改变计算机管理和存取大容量存储器中数据的方式。RAID将数据同时写入多个廉价磁盘,而不是写入单个大容量磁盘。最初RAID代表廉价磁盘冗余阵列,但现在已改为独立磁盘冗余阵列。RAID技术的原理是通过条带化存储和奇偶校验两个措施来实现其冗余和容错的目的。条带化存储意味着能以一次写入一个数据块的方式将文件写入多个磁盘。条带化存储技术将数据分开写入多个磁盘,从而提高数据传输速率并缩短磁盘处理时间。这种系统非常适用于交易处理,但可靠性却很差,因为系统的可靠性等于所写入磁盘中最差的单个驱动器的可靠性。奇偶校验通过在传输后对所有数据进行冗余校验来确保数据的有效性。利用奇偶校验,当RAID系统中的一个磁盘发生故障时,其他磁盘能够重建该故障磁盘。在这两种情况中,这些功能对于操作系统来说都是透明的,由磁盘阵列控制器(Disk Array Controller,DAC)进行条带化存储和奇偶校验控制。
□ 智能输入/输出技术。这项技术主要是为了适应不同节点对网络流量及速率的需要,以及相应网络设备的带宽限制,服务器能够根据局域网中各节点对输入/输出速率的要求进行自动调整,以满足节点的工作需求。一般来说,计算机的速率瓶颈主要在于总线接口和硬盘,为了满足大吞吐量的需求,服务器一般采用双PCI总线设计,或为了减轻CPU的工作压力,提高运行速率,采用专门的I/O处理芯片。
□ 智能监控管理技术。这项技术主要是为了方便网络管理人员对服务器的维护,具有这项技术的服务器能自动识别CPU的温度、CPU风扇及电源风扇的状态等,这些状态通过相应的内置软件可以明显地在显示屏上显示出来,方便及时进行必要的维护。
□ 热插拔技术。这项技术主要是为了避免当一个部件出现故障时的关机更换给服务器正常持续工作带来的影响,热插拔技术允许在开机状态下更换损坏的部件。当然,这与冗余和容错技术是相关联的,因为这要求服务器对主要易损部件备有冗余部件,同时系统要允许部件或设备出现错误时尽可能通过软件实现自动修复(一般需要拔下来人工处理)。在正常工作时,一台服务器由两台电源同时供电,两台电源各输出一半功率,从而使每一台电源都工作在轻负载状态,利于电源稳定工作。当其中一台发生故障时,短时间内另一台能接替其工作,并通过软件实现报警。系统管理员可在不关闭系统的情况下更换损坏的电源,采用热插拔冗余电源可以避免由于电源损坏而造成的死机。还有如PCI卡也具有同样的容错、冗余和热插拔技术,以方便及时更换。一般为了防止掉电,服务器都要求备有大功率的UPS电源,这个UPS电源就是在掉电的情况下通过储电池给服务器供电,以确保整个网络在短时间内能正常运行或在短时间内及时通知用户退出系统,从而使网络数据不因断电而丢失。这个服务器的UPS的功率一般要求在3 000 W以上,断电延时达1个小时以上,且有相应的监控软件,便于网络管理人员对电源供电情况进行监控并及时做出相应的决定。
另外,与普通计算机一样,服务器中有许多部件可以灵活选择,但作为服务器又不能像PC(特别是兼容PC)一样随便选择,其中的部件都有区别于一般PC的地方,如果不加注意很可能花高价买回来的只是一台PC。如服务器的主板要求支持较高的主频带宽,有的还支持多CPU对称多处理器技术、智能监测技术、高内存技术,或者要求具有SCSI接口、一二级甚至三四级缓存等;CPU一般选用服务器专用CPU,这种CPU一般同时具有一二级缓存,稳定性较高;硬盘一般选择SCSI接口,并且支持热插拔;内存方面要求支持大容量、高主频的内存,一般服务器的内存可高达几个GB,企业级服务器的内存最高可达到1/2 TB(1 TB=1 000 GB),还要求支持最新的ECC内存技术。
3. 服务器的选择原则
作为服务器的计算机一般是高档微型计算机或小型计算机。一般而言,选择服务器时通常要考虑以下几个方面的性能指标。
(1)可管理性。可管理性是指服务器的管理是否方便、快捷,应用软件是否丰富。在可管理性方面,基于Windows平台的PC服务器要优于UNIX服务器。
(2)可用性。可用性是指在一般时间内服务器可供用户正常使用的时间的百分比。提高可用性有两个方面的考虑:减少硬件平均故障时间和利用专用功能机制。专用功能机制可在出现故障时自动执行系统或部件切换机制,以避免或减少意外停机。
(3)高性能。高性能是指服务器综合性能指标要高,主要要求在运行速度、磁盘空间、容错能力、扩展能力、稳定性、监测功能及电源等方面具有较高的性能指标,尤其是硬盘和电源的热插拔性能、网卡的自适应能力的性能指标要高。
(4)可扩展性。为了使服务器随负荷的增加而平衡升级,并保证服务器工作的稳定性和安全性,必须考虑服务器的可扩展性能。首先在机架上要有为硬盘和电源的增加而留有的充分空间,另外主机上的插槽不但要种类齐全,而且要有一定的余量。
(5)模块化。模块化是指电源、网卡、SCSI卡、硬盘等部件为模块化结构,且都有热插拔功能,可以在线维护,从而使系统停机的可能性大大减小,特别是分布式电源技术可使每个重要部件都有自己的电源。
以上几个方面是所有用户在选购服务器时通常要重点考虑的,它们之间既互相影响,又各自独立。用户在具体使用时,这些方面的重要性因服务器工作任务的不同也有轻重之分,因此必须综合权衡。此外,品牌、价格、售后服务及厂商实力等因素也是需要考虑的。
2.2.4 网站服务器软件配置
电子商务网站的业务是由软件来实现的,包括平台软件和应用软件。
1. 网络操作系统
服务器上的操作系统就是网络操作系统。随着计算机网络的迅速发展,市场上出现了多种网络操作系统并存的局面。各种操作系统在网络应用方面都有各自的优势,都极力提供跨平台的应用支持。目前主流的网络操作系统主要有Windows系列、UNIX或Linux。Windows操作系统的突出优点是便于部署、管理和使用,深受国内企业的青睐。UNIX版本很多,大多要与硬件相配套,一般提供关键任务功能的完整套件,在高端市场处于领先地位。Linux凭借其开放性和高性价比等特点,近年来获得了长足发展,市场份额不断增加。Linux的内核源代码完全公开,系统源代码免费发放。特别是Internet外围开源软件,如Web服务器、动态页面编程语言和数据库软件的兴起,使Linux逐渐成为一种搭建Web网站软件平台的理想操作系统,实现了Web网站软件平台的最低成本。
选择网络操作系统最好的方法是先选择所需的应用程序、客户机、服务器及实用程序,然后再选择它们共同要求的网络操作系统。多数情况下服务器设备选用PC服务器,网络操作系统一般在Windows和Linux之间进行选择。下面介绍国内目前的主流版本。
(1)Windows Server 2012 R2。Windows网络操作系统目前的主流版本是Windows Server 2012 R2。它是微软首款支持云计算环境的网络操作系统,功能涵盖服务器虚拟化、存储、软件定义网络、服务器管理和自动化、Web和应用程序平台、访问和信息保护、虚拟桌面基础结构等。
Windows Server 2012 R2提供企业级数据中心解决方案。它能够更有效地提高性能和扩展能力,运行最大的工作负载,同时支持强大的恢复选项以防停电造成的损失。
Windows Server 2012 R2以应用程序为重心。其开放框架带来增强支持,解决本地环境和公有云与服务提供商云之间的应用程序移植问题,从而更灵活地生成、部署和扩展应用程序和网站。
Windows Server 2012 R2易于部署,成本效益高。它提供多租户感知存储和联网多租户功能,可以在成本低的行业标准硬件上进行存储和联网。
(2)CentOS。Red Hat Enterprise Linux(RHEL)是目前由众多厂商支持的主流的Linux发行版,但是如果要得到Red Hat的服务与技术支持,用户必须向Red Hat付费。而CentOS是一个基于Red Hat Linux提供的,可自由使用源代码的企业级Linux发行版本。由于出自与RHEL相同的源代码,因此有些要求高度稳定性的服务器用户选择CentOS来替代商业版的RHEL。
CentOS可以得到RHEL的所有功能,而且在RHEL的基础上修正了不少已知的Bug,相对于其他Linux发行版,其稳定性更值得信赖。CentOS是免费的,用户可以使用它搭建企业级Linux系统环境,达到与RHEL一样的效果,而无需向Red Hat支付任何费用。目前,CentOS在国内得到了广泛的应用,尤其是在Internet网站、电子商务、大数据、云计算等领域。
CentOS大约每两年发行一次新版本,而每个版本的CentOS会定期(大概每6个月)更新一次,以便支持新的硬件。每个版本的CentOS都会获得长达10年的支持。于2014年7月正式发布的CentOS 7是目前的主流版本。
(3)Ubuntu。Ubuntu是一个新兴的Linux发行版,也是目前最热门的Linux发行版之一。Ubuntu基于Debian发行版,与Debian的不同在于它每6个月会发布一个新版本。Ubuntu的父版本Debian是一个纯粹由自由软件组合而成的作业环境,是极为精简的Linux发行版,操作环境干净,安装步骤简易,拥有方便的套件管理程序,可以让使用者容易寻找、安装、移除、更新程序,或升级系统。Ubuntu旨在为广大用户提供一个最新的,同时又相当稳定的,主要由自由软件构建而成的操作系统。Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。
Ubuntu以其易用性受到青睐。Ubuntu Linux已成为重要的服务器平台,用户主要利用Ubuntu执行诸如网站、数据库、档案、打印及邮件服务器等一般任务,同时也有用户利用Ubuntu作为安全、备份及防火墙等重要平台。
目前两个最常用的版本是Ubuntu 14.04和Ubuntu 16.04。
2. 网络数据库
数据库技术自20世纪60年代出现以来发展迅猛,现已成为计算机科学技术中一个极为重要的分支,其应用无处不在。电子商务活动中,存在着海量的数据与信息,在电子商务系统中数据库存储系统更是一个必不可少的组件,而且电子商务系统对数据存取设备的容量、性能、安全性及灾难恢复能力提出了更高的要求。目前,数据库系统中的数据存储设备已从早期的主机内置的形式发展到外置存储系统,更进一步地发展到网络存储体系结构,并出现了许多相关产品。
电子商务是以数据库技术和网络技术为支撑的,其中数据库技术是其核心。每一个电子商务站点后台必须有一个强大的数据库在支撑其工作,从数据的管理到查询、生成动态网页、数据挖掘以及应用数据的维护都离不开网络数据库。在上述应用当中,关系数据库占有重要位置。
关系数据库最初设计为基于主机/终端方式的大型机上的应用,其应用范围较为有限。随着客户机/服务器方式的流行和应用向客户机方的转移,关系数据库又经历了客户机/服务器时代,并获得了极大的发展。关系数据库具有完备的理论基础、简洁的数据模型、透明的查询语言和方便的操作方法等优点。随着Internet应用的普及,目前,应用在网络上的数据库系统历经发展,已从传统的关系数据库发展为关系对象型数据库。
(1)Oracle。Oracle是以高级结构化查询语言(Structured Query Language,SQL)为基础的大型关系数据库,是目前最流行的客户机/服务器体系结构的数据库。它具有以下特点。
□ 从Oracle 7.x版本以来,Oracle引入了共享SQL和多线程服务器体系结构,这减少了Oracle的资源占用,并增强了Oracle的能力,使之在低档的软、硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千的用户。
□ 提供了基于角色(Role)分工的安全保密管理,在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。
□ 支持大量的多媒体数据,如二进制图形、声音、动画以及多维数据结构等。
□ 提供了与第三代高级语言的接口软件RPO*系列,能在C、C++等主语言中嵌入SQL语句及过程化语句对数据库中的数据进行操纵。它还有许多优秀的前台开发工具,如Power Builder、SQL * Forms、Visual Basic等,可以快速开发生成基于客户端PC平台的应用程序,并且有良好的移植性。
□ 提供了新的分布式数据库能力,可通过网络较方便地读写远端数据库里的数据。由网络相连的两个Oracle数据库之间通过数据库链接(DB-Links)建立访问机制,并使得在物理上存放于网络中的多个Oracle数据库在逻辑上可以看成是一个大的数据库。用户通过网络对异地数据库中的数据同时进行存取,而服务器之间的协同处理对于工作站用户及应用程序而言是完全透明的。
□ 系统提供了对称复制技术,这包含实时复制、定时复制、存储转发复制。对复制的力度而言,有整个数据库表的复制、表中部分行的复制。
Oracle公司在2007年推出的Oracle 11g版本具有以下产品特点及优势。
□ 在所有类型的数据处理操作中压缩数据,使其能够用于所有应用程序负载,通过减少磁盘输入/输出(I/O)和提高内存效率,提升查询性能。
□ 快速文件重复数据删除,消除Oracle数据库中存储的重复的文件副本,减少存储空间,提高涉及重复内容的写操作和复制操作的性能。
□ 快速文件压缩,压缩数据库中存储的非结构化数据或文件数据。
□ 备份和数据压缩,恢复管理器进行数据库备份时对备份数据进行压缩。
□ 网络流量压缩,当数据保护(Data Guard)解析重做差异时压缩,提高网络利用率并将差异解析速度提高两倍。
总之,Oracle作为目前一个流行的数据库平台,优势在于其安全性和海量数据处理能力,可以运行在UNIX、Windows系列和Linux等多种操作系统平台上。在Oracle套件中提供的Oracle Enterprise Manager(OEM)是一个新增的为企业管理员准备的管理工具。
(2)Microsoft SQL Server。Microsoft SQL Server是微软公司开发研制的数据库产品,性能高效稳健,并与Windows NT系列的操作系统完美兼容。它是一个客户机/服务器结构的关系数据库管理系统,具备C/S结构的一切优点。
Microsoft SQL Server 2012是微软发布的新一代数据平台产品,全面支持云技术与平台,并且能够快速构建相应的解决方案实现私有云与公有云之间数据的扩展与应用的迁移。它为用户带来更多全新体验,独特的产品优势定能使用户更加获益。
SQL Server 2012新增了支持Windows服务器核心(Server Core)的功能,让SQL Server的安装能够更简洁和高效,减小潜在的攻击面,减少打补丁的需要。
另外,AlwaysOn选项是SQL Server 2012最大的一项新功能,它为SQL Server添加了一项新的高可用性功能。AlwaysOn又称为高可用性和灾难恢复(High Availability Disaster Recovery,HADR),它可支持多个数据库的故障转移,可支持最多4个活动辅助站点,镜像站点中的数据可进行查询和用于备份。
SQL Server 2012在性能方面最重要的新特性之一就是列索引,列索引为数据库引擎带来了Excel的PowerPivot里面所用到的高性能、高压缩技术。有了列索引,索引数据按列的方式存储,只有需要的列作为列索引的查询结果返回来。由于减少了I/O操作,这项技术最多能提升查询性能10倍。
SQL Server 2012还新增了FileTable的特性,借助FileTable的支持可以对NTFS系统中的文件和目录执行查询。
电子商务网站的操作系统平台如果选择Windows,一般都将SQL Server作为网络数据库的首选。
(3)MySQL。MySQL是一个多用户、多线程的符合SQL标准的关系数据库服务器。SQL是世界上最流行的、标准的数据库语言,可以方便地存储、修改、访问信息。MySQL是一个自由软件,编码和各编译版本完全开放,而且能和Linux、PHP紧密结合。
MySQL的主要目标是快速、健壮、易用。MySQL最初的开发目的是在一个便宜的硬件设备上提供能够快速处理海量数据的SQL服务器。经过多年的测试,它已经是可以提供一组丰富实用功能的系统了。MySQL的主要特点:完全支持多线程、多处理器;支持多平台,如Linux、Macs、OS/2、Windows 9x/NT/2000等;可支持多种数据类型;支持Select语句;支持ODBC;可以在一个查询语句中对不同数据库中的多个表进行查询;索引采用快速B树算法,每个表允许有16个索引,每个索引可以有16个列,索引名称可长达256字节;支持定长和变长记录;可以处理大数据库;数据库中所有的列都有默认值;可以支持多个不同的字符集,如ISO-8859-1、Big5等;函数名和表名与列名之间不会产生冲突;服务器可以给客户端提供多种语言的出错信息,MySQL客户端使用TCP/IP连接、UNIX Sockets或者NT下的命名通道连接到服务器端;MySQL特有的Show命令可以查询数据库、表和索引信息等。
目前,官方公布的MySQL最新版本是8.0版本,用户可以直接从官方网站下载各编译版本和源码包,各种操作系统的安装包基本都有。电子商务网站的操作系统平台如果选择Linux,一般都将MySQL作为网络数据库的首选。
另外,MariaDB是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可,目的是完全兼容MySQL,包括API和命令行,使之能轻松地成为MySQL的代替品。在存储引擎方面,MariaDB使用XtraDB来代替MySQL的InnoDB。MariaDB之于MySQL,类似于CentOS之于Redhat。为避免法律纠纷,CentOS改用MariaDB来替代MySQL。
3. Web应用环境
除了网络操作系统和数据库服务器软件外,完整的Web应用环境还包括Web服务器软件和Web应用程序平台。目前有以下两类主流的Web应用环境。
(1)Windows+IIS+ASP/ASP .NET+MSSQL。如果网络操作系统选择Windows,一般会选择这种组合。Windows凭借其极强的易用性,一直受到国内用户,尤其是中、小企业的青睐。
IIS(Internet Information Server)是Windows网络操作系统内置的Web服务器软件,除了可用来建立Web网站之外,还可用来建立FTP站点。微软每个Windows版本提供配套的IIS版本。Windows Server 2012提供IIS 8.0,Windows Server 2012 R2提供IIS 8.5。通常将IIS 8.5与IIS 8.0统称为IIS 8。IIS 8是一个集IIS、ASP.NET、FTP服务、PHP和Windows Communication Foundation于一身的Web平台。它提供一个安全、易于管理的模块化和可扩展的平台,能够可靠地托管网站、服务和应用程序。
ASP即Active Server Pages,是微软早期开发的服务器端脚本环境,可用来创建动态交互式网页并建立强大的Web应用程序。ASP简单、易于维护,是小型Web应用程序的首选,在使用DCOM(Distributed Component Object Model)和MTS(Microsoft Transaction Server)的情况下,ASP可以实现中等规模的企业应用程序。
ASP.NET是微软.NET Framework中一套用于生成Web应用程序和Web服务的技术,是利用公共语言运行时(Common Language Runtime)在服务器后端为用户提供建立强大的企业级Web应用服务的开发框架,用于通过HTML、CSS、JavaScript及服务器脚本来构建网页和网站,可以使用任何.NET兼容语言(如Visual Basic、C#)编写Web服务文件中的服务器端(而不是客户端)逻辑。
MSSQL是Microsoft SQL Server,非常适合在Windows系统上作为数据库后端。
(2)Linux+Apache(Nginx)+MySQL+PHP。在Linux平台上部署Web应用最常用的方案是Apache+MySQL+PHP,这种组合方案简称为LAMP。LAMP是一个缩写,最早用来指代Linux操作系统、Apache网络服务器、MySQL数据库和PHP(Perl或Python)脚本语言的组合,由这4种技术的首字母组成。后来M也指代数据库软件MariaDB,P也可指代Perl或Python,这些产品共同组成了一个强大的Web应用程序平台。LAMP具有免费、高效、安全、稳定的优点,也是现在使用最广的服务器环境。
Apache是LAMP架构最核心的Web服务器软件,开源、稳定、模块丰富是Apache的优势。Apache提供了自己的缓存模块,可以有效地提高访问响应能力。作为Web服务器,它也是负载PHP应用程序的最佳选择。
Nginx是一款强大的高性能Web和反向代理服务器软件,在连接高并发的情况下,Nginx是Apache服务器不错的替代品。如果采用Nginx替代Apache,则Linux+Nginx+MySQL+PHP的组合方案简称为LNMP。
Web应用程序通常需要后台数据库的支持。MySQL是一款高性能、多线程、多用户、支持SQL、基于C/S架构的关系数据库软件,在性能、稳定性和功能方面是首选的开源数据库软件,可以支持百万级别的数据存储。中、小规模的应用可以将MySQL和Web服务器部署在同一台服务器上,但是当访问量达到一定规模后,应该将MySQL数据库从Web服务器上独立出来,在单独的服务器上运行,同时保持Web服务器和MySQL服务器的稳定连接。
PHP的全称是PHP Hypertext Preprocessor,是一种跨平台的服务器端嵌入式脚本语言。它借用了C、Java和Perl的语法,同时创建了一套自己的语法,便于编程人员快速开发Web应用程序。PHP程序执行效率非常高,支持大多数数据库,并且是完全免费的。Perl是一种拥有各种语言功能的脚本语言,号称Unix中的王牌工具,具有广泛的适用性。Python是一种面向对象、解释型的程序设计语言,语法简洁清晰,具有丰富和强大的库。Python能够将用其他语言开发的各种模块很轻松地联结在一起,因而常被昵称为“胶水语言”。Perl和Python在Web应用开发中不如PHP普及,因而LAMP平台中大多选用PHP作为开发语言。
2.2.5 建设网站所需费用的估算
目前,在国内网站的建设和运作费用主要包括以下几个方面。
(1)域名费用。注册域名之后,每年需要交纳一定的费用以持有该域名的使用权。
(2)线路接入费用和合法IP地址费用。不同ISP、接入方式和速率下的费用有差别,速率越高,月租费也越贵。
(3)服务器硬件设备费用。如果是租赁专线自办网站,还需要购置路由器、MODEM、防火墙等接入设备及配套软件,采用主机托管或虚拟主机则可以免去这一部分的费用。
(4)如果进行主机托管或租用虚拟主机,那么可能要支付托管费或主机空间租用费。托管费一般按主机在托管机房所占空间大小(以U为单位,通常是指机架单元)来计算,主机空间租用费则按所占主机磁盘空间大小(以MB为单位)来计算。无论托管还是主机空间租用,大部分都设置了网站访问带宽上限(以Mbit/s为单位)。
(5)系统软件费用。系统软件费用包括购置操作系统、Web服务器软件及数据库软件等软件的费用。
(6)开发维护费用。软、硬件平台搭建好之后,必须考虑具体的Web页面设计、编程和数据库开发及后期的平台维护费用。网站的开发维护可以委托给专业的网站制作商,费用可以一并算清。
(7)网站的市场推广和经营费用。