解决方案\需求
数字化转型正在成为社会发展的新常态,智能AI技术、大数据和5G网络新技术将推动社会各行各业迈入数字新基建的新时代,构建一套完美的解决方案方能扬帆领航。
了解更多了解更多

确保企业应用的高性能和良好体验

作者:容域科技 发布时间:2021-04-12 17:03

1  引言
与企业信息管理相关的应用,已经从一种具有竞争优势的创新行为,进化为企业至关重要的基础设施。随着这些应用的成熟,它们的部署已经从企业内部的局域网络系统扩展到分布式的广域网络中,并每天接受雇员、合作伙伴和客户不同程度的接入和使用。
应用的网络化在企业中已经非常普遍,并且有越来越多的业务承载其上。应用中断或服务水平下降会影响日常业务,导致直接丢失订单或间接的生产力下降,减少企业收入。因为应用数量的激增和系统复杂度的提升,很难说一套应用系统部署到现网中会表现如何,也很难在系统出现性能问题时找出它的原因。因为企业应用很少在广域网条件下进行测试,预期的性能与实际性能经常差异明显。
Ixia Anue网络仿真器是有效地开发和部署企业应用的必要工具。在应用部署前期,它具有准确和精确地仿真现实网络环境的能力,能缩短部署周期和支持成本,避免服务中断和现网排错,以增强竞争优势,实现收入不断增长。仿真现实网络能让用户在上线前更深入地理解应用行为,能让用户评估应用行为是否符合服务等级目标(SLO)并正确地识别影响性能的因素。网络和应用的表现是基于数据而不是猜测或推断,在上线前要确保应用的性能、健壮性和弹性能够符合业务需要。

2  企业应用系统
分布式信息系统已经从简单的会计和存货管理程序,发展为企业资源计划系统(ERP)、客户关系管理系统(CRM)、供应链管理系统(SCM)、业务处理管理系统(BPM)、电子商务系统等为企业解决大部分问题的系统。
企业采用和部署这些应用系统的最大驱动力来自于财务层面——降成本、增加收入和提高竞争优势。通过整合各个位置、各个子公司的职能部门,整个IT系统的成本就可以缩减。
 
2.1  架构
网络化的应用通常采用三层架构,包括数据层、应用层和客户层。
数据层储藏文件和数据库等系统管理所需的信息。这些基本上是基于SQL的数据库或传统数据系统。应用层通过一个API接口与数据层通信,这个接口通常是CORBA、DCOM、RMI、RPC或私有系统。为了保持业务持续性,数据都是通过离线或实时异地备份来保护的。
应用层会执行多种功能并可以划分子层部署到一个或多个服务器上。网站和应用服务器就属于这一层,它通过接口与其他两层通信,接收客户层的事务请求、处理请求、查询数据层然后返回结果给客户层。业务逻辑属于中间这层,包括流程的实施和业务规则(如定价、操作、订单处理的算法化)。为了保持这个架构的分布式特性,应用层的服务器可能与数据层的服务器分布在异地。实际上,光是应用层负责不同功能的服务器都可能是分布在各处的。
客户层就是通向应用的接口。它可以是瘦客户端(通常是一个不需要安装仅使用HTML或Java的浏览器)、胖客户端(需要安装的客户端程序,通常是用C语言编写的)或混合型客户端。虽然大的趋势是瘦客户端,但许多供应商都同时提供胖瘦两种客户端。客户端通过一个界面从用户收集信息并返回结果。为了减少网络流量,客户端通常在发送事务请求到应用层前会做输入验证。客户端可能与应用层共处一处,但大部分情况客户端与其他层级都是分隔两地,通过一个低速链路或宽带链路相连。

3  应用网络化面临的问题
3.1  应用的管理
单个企业应用就是一套复杂的系统,而且现实是大部分组织都会有多个互不相干的应用,这带来的复杂度很可能变得失去控制。大部分应用都有一定程度的管理功能,比如系统的失效、服务器错误配置或达到系统瓶颈会产生很多告警。应用专家必须在纷繁的告警中理出头绪来判断底层问题并提出解决方案。像这样的问题在企业数据中心内可能一天要出现几十次,排错和问题隔离是一件非常耗费时间和金钱的工作。
3.2  应用的安全性
企业级应用管理着大量敏感信息,包括专利设计、商业秘密、财务数据、客户资料和社会安全号码等私人信息。非授权的使用这些信息会对企业造成严重影响,包括收入下滑、信誉受损和官司缠身。
防火墙、数据加密和用户认证一般部署在网关而不是网络内部。随着企业应用上线,原来在后台被保护的功能有暴露给外部威胁的潜在可能。
应用层和数据层之间的会话通常被认为是被保护的,所以应用层接入数据层经常是不受限的。但是第一层的安全措施可以通过各种办法突破,包括动态SQL命令、密码破解、针对一个开放SQL服务器端口的漏洞攻击。一旦外围被突破,入侵者就可以通过应用层来获取读取数据层的权限。所以,为了安全考虑,防火墙不仅需要部署在网关,而且要在各层级之间部署。
还有一些威胁来自内部。数据层使用者有可能被木马诱骗而运行恶意代码,使非法用户和管理员监听网络中传输的密码和数据。为了基本的安全考虑,有必要采取一些措施例如对操作系统、服务器应用和数据库系统进行定期更新和打补丁,各层之间应尽量使用加密信道。
3.3  应用的性能
企业网应用分布式的特性会导致性能问题。另外,为解决一个性能问题的方案,比如压缩来减少数据的传输量,可能会带来更多的问题。
 
拥塞:当在不同地点之间传输大量数据,比如在主服务器和站外镜像或备份服务器之间做灾备和业务连续性业务时,LAN局域网络里和WAN广域网里带宽的差异就会导致拥塞。
 
延时:距离会产生延时问题,特别是对于有连接的协议比如TCP,需要交互若干次来建立会话和确认每次传输。
 
处理密集型功能:压缩通常用来减缓拥塞,加密用以化解安全担忧。这两个功能都高度依赖服务器CPU,会直接影响服务器处理业务的速率。
 
应用的性能问题可以通过两种方式解决:第一是对应用进行优化以适应WAN广域网通信,第二是部署广域网加速器。应用优化最好在研发阶段完成而不是部署后,调优算法可以优化信道把多个请求合并到同一个消息中。广域网加速器方案可以给现有网络增加有效吞吐量。大部分方案在响应时间或业务速率上都可以获得10~40倍的提高。
 
压缩:传统的压缩技术在数据放到广域网前会把数据中重复的比特组合替换为一个短标签。在接收方把标签去掉并替换回原始的比特组合,这样传输的数据量最高可以减少70%。
 
TCP优化:TCP协议通过周期性的应答机制来维持端到端的连接。滑动窗口(收到下一个应答之前能够发送的数据包)机制可以控制拥塞。广域网加速器通过本地发送TCP应答而不是穿越整个广域网来实现吞吐量的增加。
 
应答报文不用再穿越广域网,所以感受不到高延迟。加速器之间运行的是更高效的连接协议。
 
缓存和镜像:客户端广域网加速器在网页和其他数据通过时会进行它们的拷贝,这样后续请求可以直接由加速器本地答复而不用再向远端服务器再次请求。
 
通过QoS进行流量整形:对延时敏感的业务比如视频和音频,通过QoS可以优先和保证传输。传统的数据业务,比如邮件或网页请求,只在有可用带宽时才允许传送,在更高优先级的流量已经占用所有带宽的时候会被丢弃。
 
卸下CPU密集型业务:通过卸下CPU密集型业务,比如压缩、加密和XML处理,到另外一个设备,不仅可以提高广域网性能,而且还可以在不增加处理器的前提下处理更多的业务。
 
前向纠错:在易丢包的网络环境中一些广域网加速器运用前向纠错技术来减少重传的需要。前向纠错技术发送带内恢复信息以便接收方重组丢包。
 
现实情况是,应用的性能直到部署后才会去评估,当响应时间不符合预期的时候,IT部门就成了众矢之的。在线排错非常困难,重压之下往往是快速获取替代方案而不是耐心地查找根本原因和有效解决方案。

4  迎接挑战
部署前期的性能测试和网络仿真测试是企业应用能够成功部署的关键。
 
性能测试通过产生真实的流量/业务来模仿系统承载的压力。
 
 
网络仿真通过重现真实网络条件和行为来创造预期的环境。
 
两者对于部署前的应用性能摸底都非常关键。比如,在完美无损伤的网络环境下,尽管加载的是真实的流量,还是会得到错误的预期。只有通过网络仿真测试才能真正了解应用的性能,设定具体的性能预期,给管理层和用户更好的交代。
(1)在无损伤网络中:建立基线
作为预期应用真实性能的第一步,基线确定了应用在无损伤网络中的性能表现。
QA测试团队通过观察组织内的网络状况,可以了解一些周期性或事件驱动的行为差异,比如日夜差异、月末/季度末/年度末需求和一些每个组织独特的要素。这些结果组成了流量负载和用户行为模板,这些模板会被用到基线测试和网络仿真测试中。
对应用的测试第一步是在良好的网络条件下加载流量/行为模板的测试。实验室可以提供这样的无丢包、无乱序和低延迟环境。针对每个模板得到的结果组成了应用的性能基线,把它与SLO作对比。如果在良好的网络环境里都达不到SLO要求或只是正好通过的话,这样的应用是不能部署到广域网里的。
第二步,极限测试。极限测试不采用典型的流量负载/行为模板。而是采用步进法逐步提高流量负载直到测试结果不能通过SLO为止。极限测试有助于管理者了解应用的扩展性,做好扩张计划,知道基础设备的投资应该花到哪里。
(2)真实场景测试:真实性检查
在基线测试和极限测试之后,下一步就是真实场景测试。在基线测试中做过的每一个测试需要在真实场景中再做一遍。
 
网络部门需要提供能够反映不同类型用户的网络模板。
 
 
驻站用户模板具有LAN接入速率和最小的网络损伤。
 
 
远程办公室模板具有WAN广域网接入速率和较多的网络损伤。
 
 
家庭办公模板可能有宽带接入速率和VPN接入的延迟。
 
 
移动用户可能有不同的接入方式,包括拨号,包括直接接入公司网络或通过运营商网络然后VPN接入。
 
应用加载每个流量负载模板和每个网络损伤模板进行测试,然后把测试结果与SLO作对比以验证在预期网络条件下应用依然可以达到可接受的性能。如果没有达到SLO的要求,就需要查出根源并进行修正。
在网络仿真测试中,两种性能极限都得到了摸底。比如,在基线测试中,流量负载的极限被测出来了;而在网络仿真测试中,流量负载的极限是在有网络损伤的情况下确定的。两个结果与基线性能对比后可以正确地预估将来的网络扩展性。另外,有损网络的极限也知道了。网络延时和其他损伤是逐步递增的,应用失效时的网络状况就确定了。网络损伤极限测试有助于企业与WAN供应商协商SLA条款,以保证远端用户的应用体验。
应用上线前的每一步准备测试都提供了非常有价值的信息,可以用来设计评审、优化应用、计划战略战术、做预算、向管理层汇报和排错。
5  结束语
企业应用系统对于企业的业务开展是非常必要和重要的组成部分。差强人意的应用性能会影响日常业务、降低生产率。而应用和网络的复杂性又让性能预判和性能问题根源查找变得十分困难。
对于那些上线后非常成功的应用,关键的要素就是提前在真实的流量和网络条件下做好了健壮性测试。通过基线测试和网络仿真测试来评估应用性能和损伤极限这种两层的模型,有助于用户汇总需要的信息以便作出决策和在组织内全方位沟通真实的预期。
Ixia Anue网络仿真器是企业能有效开发和部署应用系统必备的工具,它提供如下强大的功能:
 
部署前精确和准确的仿真真实网络条件。
 
 
有效测试不同类型网络用户。
 
 
减少开发周期和售后开销。
 
 
有效避免现网问题。
 
 
提高收入和竞争优势。
 
有无网络仿真测试带来的可能是平滑部署和灾难的区别,请确保拥有合适的工具来保障应用成功上线。
 

全部方案

数字新基建
等保云灾备