首页 > 代码库 > 企业计算模式
企业计算模式
计算机应用系统中数据与应用(程序)的分布方式称为企业计算机应用系统的计算模式,有时也称为企业计算模式。
自世界上第一台计算机诞生以来, 计算机作为人类信息处理的工具已有半个多世纪了,在这个发展过程中计算机应用系统的模式发生了几次变革。计算机应用系统已经历了四种计算模式,它们分别是:单主机计算模式、分布式客户/服务器计算模式(Client/Server—C/S)和浏览器/服务器计算模式(Browser/Server—B/S) ,云计算模式。这几种计算模式的出现与计算机、网络及数据库技术的发展一脉相承,并决定了计算机应用系统的硬件、软件结构的特征。
1985 年以前,计算机应用一般是以单台计算机构成的单主机计算模式。 单主机计算模式又可细分为两个阶段。单主机计算模式的早期阶段,计算机应用系统所用的操作系统为单用户操作系统,系统一般只有一个控制台(见图9),限于单项应用,如劳资报表统计等。
分时多用户操作系统的研制成功, 以及计算机终端的普及使早期的单主机计算模式发展成为单主机——多终端的计算模式(图10)。
在单主机——多终端的计算模式中,用户通过终端使用计算机。每个用户都感觉好象是在独自享用计算机的资源, 但实际上主机是在分时轮流为每个终端用户服务。
单主机——多终端的计算模式在我国当时一般称为“计算中心” ,在单主机模式的这个阶段中,计算机应用系统中已可实现多个应用(如物资管理和财务管理)的联系,但由于硬件结构的限制,我们只能将数据和应用(程序)集中地放在主机上,因此单主机——多终端计算模式有时也被称为集中式的企业计算模式。
20世纪 80 年代个人计算机(PC)的蓬勃发展和局域网技术趋于成熟,使用户通过计算机网络共享计算机资源, 计算机之间通过网络可协同完成某些数据处理工作。虽然 PC机的资源有限,但在网络技术的支持下,应用程序不仅可利用本机资源,还可通过网络方便地共享网上其它计算机资源,在这种背景下形成了分布式客户/服务器(C/S)的计算模式。
在客户/服务器模式中,网络中的计算机被分为两大类:一是向其它计算机提供各种服务(主要有数据库服务,打印服务等)的计算机,称为服务器,二是享受服务器提供服务的计算机,称为客户机。
客户机一般由微机担当,运行客户应用程序模块(也就是说应用程序被分散地安装在每一台客户机上!这是 C/S 模式应用系统的重要特征! )。部门级和企业级的计算机作为服务器运行服务器系统软件(如数据库服务器系统,文件服务器系统等),向客户机提供相应的服务。
在C/S 模式中,数据库服务是最主要的服务,客户机将用户的数据处理请求通过客户端的应用程序发送到数据库服务器,数据库服务器分析用户请求,实施对数据库的访问与控制并将处理结果返回给客户端。在这种模式下,网络上传送的只是数据处理请求和少量的结果数据,网络负担较小。
应当指出的是,在复杂 C/S 模式的应用系统中,数据库服务器一般情况下不只有一个, 而是按数据的逻辑归属和整个系统的地理安排可能有多个数据库服务器(如各子系统的数据库服务器及整个企业级数
C/S 模式是一种较为成熟且应用广泛的企业计算模式,其客户端应用程序的开发工具也较多,这些开发工具分两类:一类为针对某一种数据库管理系统的开发工具(如针对 Oracle 的 Developer 2000),另一类为对大部分数据库系统都适用的前端开发工具(如Power Builder,Visual Basic,Visual C,Delphi,C++ Builder,Java 等)。
采用C/S 模式的企业计算机应用系统中,每一个客户机都必须安装并正确配置相应的数据库客户端驱动程序。这样,应用程序(也必须安装在客户机上)才能访问数据库。由于应用程序被分布在各个客户机上,这种形式使系统的维护困难且容易造成不一致性。
浏览器/服务器(B/S)模式是在C/S模式的基础上发展而来的。导致 B/S模式产生的源动力来自不断增加的业务规模和不断复杂化的业务处理请求, 解决这个问题的方法是在传统 C/S 模式的基础上,增加中间应用层(商业逻辑层),由原来的两层结构(客户/服务器)变成三层结构(图12)。
在三层应用结构中,用户界面(客户端)负责处理用户的输入和向客户的输出(出于效率的考虑,它可能在向上传输用户的输入前进行合法性验证)。商业逻辑层负责建立数据库的连接,根据用户的请求生成访问数据库的 SQL 语句,并把结果返回给客户端。数据库层负责实际的数据库存储和检索,响应中间层的数据处理请求,并将结果返回给中间层。
B/S 模式就是上述三层应用结构的一种实现方式,其具体结构为:浏览器Web 服务器/数据库服务器。采用 B/S 模式的计算机应用系统的基本结构见图13。
由于 Internet 及企业 Intranet的应用采用B/S模式因此B/S模式也称为网络计算模式。在B/S模式中除了数据库服务器外,应用程序以网页形式(用超文本标识语言(HTML)编写)存放于 Web 服务器上,用户运行某个应用程序时只须在客户端上的浏览器中键入相应的网址(URL),调用Web服务器上的应用程序并对数据库进行操作完成相应的数据处理工作,最后将结果通过浏览器显示给用户。可以说,B/S 模式的计算机应用系统中,应用(程序)在一定程度上具有集中特征。
由上述可以看出, 按 B/S模式建立的应用系统的特征是客户端只须安装普遍使用的浏览器(如微软公司的 IE 或Firefox等),而应用程序被相对集中地存放在Web 服务器上。
以B/S 模式开发企业管理信息系统,由于在客户端只须一个简单的浏览器,因此减少了客户端的维护工作量,方便了用户使用。同时,也正是这样的“瘦”客户端, 使我们能够方便地将任何一台计算机通过计算机网络或互连网连入到企业的计算机系统,成为企业管理信息系统的一台客户机。
B/S 模式的出现,极大地扩大了管理信息系统的功能覆盖范围,从而革命性地改变了计算机应用系统
与C/S 模式相比,以 B/S模式建立的计算机应用系统中,客户端变的简单(只要安装浏览器即可!) ,应用程序以网页的形式存放在 Web 服务器上,这不仅方便了企业内用户的应用,也使企业的客户和供应商方便地通过计算机网络与企业进行业务活动,扩大了企业计算机应用系统的功能覆盖范围,可以更加充分利用网络上的各种资源,同时应用程序维护的工作量也大大减少。
虽然B/S 模式的计算机应用系统有如此多的优越性,但由于 C/S模式的成熟性且C/S模式的计算机应用系统网络负载较小,因此,未来一段时间内,管理信息系统开发中企业计算模式将是B/S 模式和 C/S 模式共存的情况。
狭义云计算是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的资源(硬件、平台、软件)。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。这种特性经常被称为像水电一样使用IT基础设施。
广义云计算是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的服务。这种服务可以是IT和软件、互联网相关的,也可以使任意其他的服务。
云计算的特点有:
(1)超大规模。“云”具有相当的规模,Google云计算已经拥有100多万台服务器,Amazon、IBM、微软、Yahoo等的“云”均拥有几十万台服务器。企业私有云一般拥有数百上千台服务器。“云”能赋予用户前所未有的计算能力。
(2)虚拟化。云计算支持用户在任意位置、使用各种终端获取应用服务。所请求的资源来自“云”,而不是固定的有形的实体。应用在“云”中某处运行,但实际上用户无需了解、也不用担心应用运行的具体位置。只需要一台笔记本或者一个手机,就可以通过网络服务来实现我们需要的一切,甚至包括超级计算这样的任务。
(3)高可靠性。“云”使用了数据多副本容错、计算节点同构可互换等措施来保障服务的高可靠性,使用云计算比使用本地计算机可靠。
(4)通用性。云计算不针对特定的应用,在“云”的支撑下可以构造出千变万化的应用,同一个“云”可以同时支撑不同的应用运行。
(5)高可扩展性。“云”的规模可以动态伸缩,满足应用和用户规模增长的需要。
(6)按需服务。“云”是一个庞大的资源池,你按需购买;云可以象自来水,电,煤气那样计费。
(7)极其廉价。由于“云”的特殊容错措施可以采用极其廉价的节点来构成云,“云”的自动化集中式管理使大量企业无需负担日益高昂的数据中心管理成本,“云”的通用性使资源的利用率较之传统系统大幅提升,因此用户可以充分享受“云”的低成本优势,经常只要花费几百美元、几天时间就能完成以前需要数万美元、数月时间才能完成的任务。
云计算的鼻祖之一亚玛逊公司将曾经大家称作为网格计算的东西,取了一个新名称“弹性计算云”(EC2),并取得了商业上的成功。 云计算被它的吹捧者视为“革命性的计算模型”,因为它使得超级计算能力通过互联网自由流通成为了可能。企业与个人用户无需再投入昂贵的硬件购置成本,只需要通过互联网来购买租赁计算力,“把你的计算机当做接入口,一切都交给互联网吧”。用户只需要640K的内存就足够了。”比尔•盖茨1989年在谈论“计算机科学的过去现在与未来时”时就这样预测。
云计算的基本原理是,通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将更与互联网相似。这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。这可是一种革命性的举措,打个比方,这就好比是从古老的单台发电机模式转向了电厂集中供电的模式。它意味着计算能力也可以作为一种商品进行流通,就像煤气、水电一样,取用方便,费用低廉。最大的不同在于,它是通过互联网进行传输的。只需要一台笔记本或者一个手机,就可以通过网络服务来实现我们需要的一切,甚至包括超级计算这样的任务。从最根本的意义来说,云计算就是利用互联网上的软件和数据的能力。
如果说云计算给大型企业的IT部门带来了实惠,那么对于中小型企业而言,人力资源不足,IT预算吃紧,那种动辄数百万美元的IT设备所带来的生产力是难以想象的,而如今,云计算为它们送来了大企业级的技术,并且先期成本极低,升级也很方便。云计算抹平了企业规模所导致的优劣差距,使得当今世上最强大最具革新意义的技术已不再为大型企业所独有。云计算让每个普通人都能以极低的成本接触到顶尖的IT技术。
对云计算的主要担忧来自于对安全问题的考虑。云计算意味着数据被转移到用户主权掌控范围外的机器上,也就是云计算服务提供商的手中。那么,如何保证这些数据的安全性?如何能相信服务商不会将数
Google、亚马逊、IBM与微软、Sun公司都开始开发云计算市场。尽早进入市场的好处显而易见:赢得良好的公关形象,吸引学界与业界的关注,通过与学界和自由智库的磨合发展技术。
开源软件一直以来都受到关注,影响也越来越大。平时大家关注的开源软件案例也多是些政府、大企业集团。这里要给大家介绍一个普通的民营小企业通过应用开源软件,提高竞争力,从而减弱经济危机影响的案例。
复鸣乐器在江苏泰兴,虽然有着近十年的提琴乐器生产历史,但一直没上规模,除了几个提琴师傅外,其余工人都是周边的农民,主要生产各种小提琴,提琴配件等产品,为国外乐器企业进行代工生产,出卖廉价劳动力,进行对外贸易。但是2008年经济危机来袭,外贸订单开始减少,工厂也慢慢出现问题,陷入困境。
是关门大吉,让农民工回家,还是寻求突破,减少或化解危机带来的问题,企业负责人开始思考。复鸣乐器厂经过半年多的摸索,终于开始找出了一条适合乐器企业,乃至各种制造业企业的信息化突围之路:充分运用开源软件进行信息化改造与电子商务运营。结果通过转型不仅救活了自己,还带动了周边数家乐器制造企业转型。
复鸣乐器厂采用开源软件进行了全面的信息化:在Linux操作系统、Mysql数据库基础之上,使用PHP语言建立了小提琴吉他网上直销平台,在线协同办公系统,CRM客户管理系统,ERP系统。
在线小提琴吉他销售平台的服务器使用Linux系统,网站选择国外成熟开源电子商务系统,再由开发人员进行本地化定制。直销平台使得公司生产的小提琴等产品直接在线销售.在线销售与财付通,网银在线等网络支付公司合作,开通了在线支付渠道,公司与邮政EMS等快递公司合作开通提琴产品配送渠道,省去了各种中间环节,可以直接让利给消费者。
复鸣乐器直销网站在试运行的一个月中,直接销售过万,这大大增强了企业的信心,并吸引了数家周边乐器企业加盟,大家共同进退,互相分工合作,组成了整个小提琴、吉他、提琴配件、吉他配件的产品
公司部署了开源客户管理系统:vTiger CRM,用以对客户进行相关管理维护。通过CRM系统与复鸣乐器商城(在线产品销售平台)的对接,客户通过网站进行留言,注册,提交订单等事件都能及时反馈到CRM系统之中,极大的缩短了客户服务的响应时间,提高了客户满意度。
目前,公司正在对各个开源ERP系统进行评估筛选,近期会考虑实施。公司还计划在业务增长到一定阶段时,对各个开源呼叫中心产品评估。通过这些软件的应用,建立一个完全由开源软件支撑的乐器企业。
谈到这里,大家都关心,公司进行这些投入花费了多少资金?公司的开支近乎0(不含人力成本)。服务器采用Linux系统,和Mysql数据库,免去了采用微软系统和数据库的大笔授权费;网站系统与CRM系统也是网上免费下载的,而同类的商业软件价格都是要数万块钱的;公司唯一的开支就是技术人员工资,公司决定让技术人员技术入股、这不仅调动了相应技术人员与网络营销人员积极性,也节约了公司的短期成本压力。
以下是公司选择开源软件时的一些标准:
1.这个软件目前的功能和它的发展路线图应该满足当前和发展的功能需求;
2.尽量选择和现有软件同一架构的软件,因为现有软件是PHP的,那么不应选择.Net的,哪怕那个.net软件也很成熟。
3.开源项目应该具备足够的活跃度。活跃度可以从开发人员数量,代码库的每日更新等信息看出来,入股可能的话也参与到开源软件的开发组中,以方便添加各项自己需要的功能。
4.考察该开源软件是否是遵守该领域内的国际规范,遵守规范的软件会给系统集成、二次开发等带来便利。
5.在同类产品中,要挑选有比较优势的。并且要考虑可能存在的移植代价。这个移植指的是采用了这款开源软件后现有系统的移植,或者是从这个开源软件到其他软件的移植。
从复鸣乐器的经验看,对于企业级系统、互联网应用来说,采用开源软件不仅可以降低成本,更重要的是能够真正了解软件的内部工作机制。还可以在现在的基础上进行增强和定制,也能够从开源软件中借鉴到很多好的设计和实现。
1.开源软件的维护开发小组存在一定不稳定性,很多开源软件会陷入缺乏支持和更新的困境,请问对企业信息化过程中,如何避免此种风险?
2.使用开源软件的成本是零吗?如何才能降低企业信息化的成本?
3.有人认为“由于可以看到软件的源代码,我们可以研究了解软件内部的工作过程、原理。这对于应用设计、开发、查错、优化、二次开发都是非常有帮助的。如果没有二次开发,我们也就无法将网店系统与CRM系统进行集成。开源软件不再是一个黑盒子,你可以清楚的了解到内部到底是怎么运作的,到底在运行的时候发生了什么事情,你可以很清楚的知道有什么问题。这一点是非常重要的。”你如何看待这种观点,这对你选择管理信息系统有何启示?
企业计算模式