简介:软件项目工作量估算是软件项目成本估算的基础。合理的软件成本估算有助于业主方在以下方面做出理性的决策:在软件项目投资、招标、软件项目外包以及对软件项目开发过程中的监督管理等方面。COCOMO模型是目前应用于软件项目成本估算方法中最广泛、最受欢迎的模型之一。本文首先研究并给出了软件项目工作量估算的常用方法,详细介绍了COCOMO模型和COCOMOII模型估算方法,并指出了模型修正的意义所在;然后介绍了工作量估算中软件项目规模度量的常用方法,重点介绍了基于功能点分析的软件规模度量方法;最后,通过研究分析前人提出的软件项目工作量估算“三步法”,针对算法的问题和不足,提出了完善的建议和改进的方法,并据此提出了新的软件项目工作量估算流程模型;同时,阐述了本文提出算法的合理性和有效性。
简介:本文探讨了使用不同负载均衡技术,将负载分给多个服务器分担,以解决Internet服务器面临的大量并发访问造成的CPU或I/O的高负载问题。关键词负载均衡;网络中图分类号TP393.18文献标识码A文章编号1007-9599(2010)04-0000-01PromoteCampusNetworksFunctionsUsingLoadBalancingHaoMinchai,QiaoZhenmin(1.ShijiazhuangTechnologyCollege,Electrical&ElectronicEngineeringDepartment,Shijiazhuang050081,China;2.ShijiazhuangTechnologyCollege,OfficeShijiazhuang050081,China)AbstractThisthesisfocusesondividingpressureinseveralserversthroughloadbalancingtechnologytosolvetheproblemofheavyloadofCPUorI/Ocausedbysimultaneousaccessing.KeyWordsLoadbalancing;Network随着网络应用的不断深入,网内的信息流量快速增长,当用户量及其应用量很大时,在同一时刻主机服务器可能要承受大量用户的来访请求,然而一台主机的处理能力是有限的,倘若访问量的增长超过了主机的处理极限,主机的处理能力就会成为网络应用的瓶颈,这将制约网络应用的继续发展,对于提供解决以上问题的应用系统至关重要,负载均衡系统应运而生。一、主要的两种解决方法(一)要从硬件和网络结构上尽量提高网络和系统性能和效率采用高性能的PC服务器作为网络服务器,提高服务器的计算和负载能力。采用大容量、高传输速率的存储系统和利用RAID5技术实现很高的读写速度和性能。对于流媒体服务和WEB应用,采用千兆技术实现到INTERNET的高速接入;选用高性能的防火墙用于提供内外网访问,实现高效的WEB访问。(二)使用流量分担技术在网络内增加多台主机服务器,并让这些服务器保存和处理相同的应用内容。这样的主机服务器并不一定要求是技术最先进、性能最强大的,所以投资可以相对较少,但是由它们组成的服务器群,却能够共同完成网络的服务功能。优点当用户来访时,这些服务器轮流响应不同用户的请求,通过流量分担技术把大量的用户请求自动地分散到了不同的主机服务器中处理,从而减少了单个主机上的任务量,实现了网络流量在多台主机间的平衡处理,在完成同样功能的多个网络设备之间实现合理的业务量分配,使之不至于出现一台设备过忙、而别的设备却未充分发挥处理能力的情况。二、负载均衡实现的方式(一)基于软件的负载均衡通过自己的agent(由负载均衡产品厂商开发)或者使用一些系统管理工具的模板,来收集关于后台服务器的信息,并根据这些信息调整对资源的分配。Agent是为特定的软件和硬件服务的,它能够非常严密地监视应用状况。使用现有系统管理工具的负载均衡产品可以通过API和公共协议监视更多的软件和硬件。优点如果你的网络发生了变化,或者你需要一些特殊的功能,软件能够非常快地进行升级并满足你的需要。(二)基于硬件的负载均衡产品基于硬件的负载均衡通常是由路由器和switch完成的。这些设备使用ASIC(application-specificintegratedcircuits),以线速运行。优点这是最快的负载均衡产品。三、负载均衡产品实现的方案在市场上有几代不同的负载均衡的方案,它们的功能从简单逐渐变得复杂。第一代负载均衡产品只是简单的round-robinDNS机器它能够把HTTP进程在几个IP主机里进行分配。这类系统使用简单的PING命令来保证进程请求不会被送到一个状态不佳的服务器那里,并为多服务器引入了一个变量来表示容错率。第二代负载均衡产品不仅仅检查服务器是否还在运行,它还要检查服务器的性能状态。也就是说,如果一台服务器负载过重,发进来的请求就会被转发到其他机器上以保证负载在所有能够获得的资源里均衡分配了。第三代负载均衡产品覆盖了整个内容分发系统。随着Web和网络服务变得越来越成熟,仅仅监视Web服务器的某一层是远远不够的。如果一个Web主机非常健康,但是它的后台服务器或/和应用有问题的话,把请求发给这台主机也是毫无意义的。新的服务,比如在线销售,都已经开始使用多层服务器来管理内容、数据库和事务处理引擎。由于电子商务目前已经关系到客户的钱,这就要求我们必须保证能够为客户提供尽可能好的性能和可靠性。因此,负载均衡厂商开发了第三代负载均衡产品以保证整个内容分发系统的健康、良好运行。不仅处理网络和服务器性能问题,还能够根据前台请求和后台内容来分配资源,会识别请求,然后把该请求挂起,直到所请求内容已经准备好了,这叫做delayedbinding。这种能够识别内容的路由非常有用,服务器集群可以为特定的应用(比如CGI、流媒体、cookie服务等等)进行调整,而且负载均衡会处理并分发所有的请求到保持连接的客户端。四、结束语负载均衡只是一个策略,负载均衡技术实现的方法根据系统的软硬件不同而有所区别,有通用方法也有专用方法,有的网络系统还为此提供了专门的服务,负载均衡技术最终目的是减轻单个主机服务器的负载压力,但不能牺牲网络其他方面的性能。而对于我们校园网为基础的教育网站,可能涉及到多方面的网络应用,各种办公业务都往上迁移,所传送不仅是一般的文本信息,还有很多视频和语音。如远程教学方兴未艾,不少院校都在全国各地设立网络教学点,进行远程教学和在线辅导,各个站点都必须能够同网络教学中心进行实时交流,在这种情况下,势必也会产生大量并发访问,因此要求网络中心服务器必须具备提供大量并发访问服务的能力,这样,网络中心服务器的处理能力和I/O能力已经成为提供服务的瓶颈,如果客户的增多导致通信量超出了服务器能承受的范围,那么其结果必然是服务器无法提供服务,所以要对我们的校园网络进行统筹规划,应该根据实际需求来选择能够满足应用的负载均衡方案,解决我们面临的问题。参考文献1E.Kata,M.Butler,andR.McGrath.AscalableHTTPserverthencsaprototype.ComputerNetworksandISDNsystems,1994.Vol27,P155-1642RalfS.Engelschall.LoadBalancingYourWebSite.WebTechniquesMagazine(http//www.WebTechniques.com),May1998,vol.3,iss.5