F5如何帮助应用实现非公能需求以及DevOps如何提升App品质?

简介:

  众所周知,不论是产品还是服务,品质决定竞争力,而对于一个App来说,功能是生命线,确定能否安身立命,而非功能需求则是它的品质。在App如过江之卿的今天,用户们翻身奴隶把歌唱,分分钟可以卸载掉一个哪怕只有一点点让自己不爽的App,转身下载一个同类的,所以在当下的App爆发式增长,并且同质化严重的情况下,非功能需求这些个“软服务”会更好的体现出App差异化的特点,向用户传递特定观点,提供优质服务,从而能够俘获用户的“芳心”。 F5可以帮助应用实现非公能需求,DevOps还能提升App品质。

  非功能需求都包括哪些“软”指标。下面是ISO/IEC 25010 软件质量管理模型:
  001

  F5如何帮助应用实现非公能需求以及DevOps如何提升App品质?

  可以看到,除了功能性外,影响软件产品质量的关键因素还包括效率、兼容性、易用性、安全性、可靠性、可维护性和可移植性7个维度,每个维度又包括了许多方面,涉及到架构、内容、交互、运营、安全等,这些都属于非功能需求的范畴。

  非功能需求服务化

  非功能需求的有一些共同点:

  1、当不仅存在于开发阶段,还存在于运维阶段与运营阶段;
  2、在实现自身需求的同事,会涉及或者引发新的需求;
  3、对实现手段的灵活程度和后续的管理与维护的便捷度有要求。

  基于以上三个特点,F5发现基于非功能性需求的实现不论是单单放在开发阶段,还是只放在运维阶段,都是不完美的,因此,F5大胆假设,独立设计一个应用服务层,用户实现非功能需求的场景,并且贯穿与开发与运维的生命周期内。

  非功能需求在运维工作中的体现

  F5的应用交付层,能够提供计算、分流、安全、卸载等功能,并且能够无视数据中心数量与形态的变化,与应用紧密结合在一起,旨在为用户提供高品质的应用和服务。针对运维工作中提供非功能需求实现与维护的场景,F5为了弥补环境多样化、效率低、需求不明确等诸多不足,应该做到以下几点:
  002

  F5如何帮助应用实现非公能需求以及DevOps如何提升App品质?

  01.构建跨平台的应用服务交付层,建设一致交付的能力,满足可靠性的要求;
  02.应用服务交付层应具备优秀的应用交付服务能力,满足效率的要求;
  03.实现应用的部分非功能性需求解耦,满足易用性与可维护性的要求。
  04.要能够实现服务交付即代码,及所有运维平面的工作,能够通过代码来实现;
  05.要能够与运维平面的服务等级与能力保持一致性;
  06.实现的非功能需求的服务能力要是安全的,可控的;
  07.所有开发测代码实现的非功能需求,可以无缝转化为服务交付层的服务能力。

  非功能需求在开发工作中的体现

  F5的应用独立设计一个服务交付层,将非功能性的需求实现放在这里,而这些需求可以采用更专业的实现的同时,同时也隔离了一些公共代码和库的安全问题,更妙的因为代码实现的场景能够无缝的部署在运维侧,所以能够和运维打通,互通有无,能做更多的事情,提升应用的品质。
003

  F5如何帮助应用实现非公能需求以及DevOps如何提升App品质?

  如上图,可以在代码code阶段就设计为App code 和ADC Code,然后再build阶段先集成App的code,然后做测试,在Deploy阶段的时候由CI Server从github上拉取ADC的code,然后一起部署App和ADC Service到服务器或者容器平台,ADC的code部门还可以再细分成ADC code 和Security Code,后者用来做应用层的安全防护,在这样的情境下,在每一次code的阶段就设计好ADC 和Security的实现,和App Code 同时Deploy,实现了整体应用和安全交付的CI/CD和快速迭代,极大的提高了生产和运维效率。

  如果想实现开发侧的应用交付层的设计,需要具备以下的能力:1要能够实现独立的服务交付层,与应用核心代码解耦;2要够无缝的集成CI/CD;3实现的功能无开发语言无关为佳。

  DevOps提升App品质

  前文提到,软件的非功能需求决定了软件的品质,这在某些程度上与DevOps是不谋而合的。在DevOps的文化里,不紧紧的打通了运维与开发的屏障,更是将各个阶段形成了一个生生不息的循环,形成一个持续集成、持续交付的生态,如果说DevOps是一种文化,一种氛围,追求高品质的App是目的,那么,努力发展非功能需求的实现及优化则是一种行之有效的手段。

 004

  F5如何帮助应用实现非公能需求以及DevOps如何提升App品质?

  由于实现了非功能需求的服务化,在一个良好的DevOps的氛围里,甚至可以利用这些服务来做在线BI甚至精准营销,由运营侧提出需求,指定基于App的用户行为分析图,然后分析收集的数据,反向推动优化非功能需求的实现甚至是主线功能需求的优化,从而达到提升客户满意度,提升市场占有率的目的。由于F5已经打通了应用交付服务的关节,所以这些数据和分析与每个部门各自为战比起来,要精准、快速、高效的多。

  总之,F5不但可以帮助应用实现非公能需求,在一个良好的DevOps的氛围里,还可以提升App品质。如果你公司的APP或应用服务有类似的诉求,F5可以帮你很好的解决。

相关文章
|
5天前
|
开发框架 监控 .NET
【Azure App Service】部署在App Service上的.NET应用内存消耗不能超过2GB的情况分析
x64 dotnet runtime is not installed on the app service by default. Since we had the app service running in x64, it was proxying the request to a 32 bit dotnet process which was throwing an OutOfMemoryException with requests >100MB. It worked on the IaaS servers because we had the x64 runtime install
|
2月前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
2月前
|
Devops jenkins 持续交付
DevOps实践:构建和部署一个Docker化的应用
【9月更文挑战第14天】在当今快节奏的软件开发领域,DevOps已经成为提升效率、加速交付的关键。本文将引导你理解DevOps的核心概念,并通过一个实际的示例—构建和部署一个Docker化的应用—来深入探讨其实践方法。我们将从简单的应用出发,逐步实现Docker容器化,并最终通过CI/CD流水线自动化部署过程。这不仅是对DevOps流程的一次实操演练,也是对现代软件开发理念的一次深刻体验。
|
2月前
|
运维 Cloud Native Devops
云原生架构的崛起与实践云原生架构是一种通过容器化、微服务和DevOps等技术手段,帮助应用系统实现敏捷部署、弹性扩展和高效运维的技术理念。本文将探讨云原生的概念、核心技术以及其在企业中的应用实践,揭示云原生如何成为现代软件开发和运营的主流方式。##
云原生架构是现代IT领域的一场革命,它依托于容器化、微服务和DevOps等核心技术,旨在解决传统架构在应对复杂业务需求时的不足。通过采用云原生方法,企业可以实现敏捷部署、弹性扩展和高效运维,从而大幅提升开发效率和系统可靠性。本文详细阐述了云原生的核心概念、主要技术和实际应用案例,并探讨了企业在实施云原生过程中的挑战与解决方案。无论是正在转型的传统企业,还是寻求创新的互联网企业,云原生都提供了一条实现高效能、高灵活性和高可靠性的技术路径。 ##
184 3
|
3月前
|
Prometheus 运维 监控
Grafana 在 DevOps 中的应用
【8月更文第29天】Grafana 是一个开源的数据可视化平台,它可以连接到多种数据源,从简单的指标到复杂的查询,都能轻松创建出漂亮的图形化仪表板。在 DevOps 领域,Grafana 被广泛应用于性能监控、故障排查、服务可用性监控等方面。本文将详细介绍 Grafana 如何支持 DevOps 团队的工作,并提供一些具体的使用案例和代码示例。
38 1
|
3月前
【Azure Logic App】在逻辑应用中开启或关闭一个工作流是否会对其它工作流产生影响呢?
【Azure Logic App】在逻辑应用中开启或关闭一个工作流是否会对其它工作流产生影响呢?
|
3月前
|
存储 SQL JSON
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据
|
3月前
|
敏捷开发 运维 监控
DevOps 在敏捷开发中的应用
【8月更文第30天】随着软件开发行业对快速迭代和持续交付的需求不断增加,敏捷开发方法论已经成为标准实践。DevOps 作为一种文化理念和技术实践的结合,强调开发与运维团队之间的紧密协作,以提高软件产品的质量和交付速度。本文将探讨 DevOps 如何支持敏捷开发流程,并通过具体的代码示例来展示其在迭代发布和反馈循环中的应用。
156 0
|
3月前
|
安全 前端开发 网络安全
【Azure App Service】访问App Service应用报错 SSL: WRONG_VERSION_NUMBER
【Azure App Service】访问App Service应用报错 SSL: WRONG_VERSION_NUMBER
137 0
|
3月前
|
存储 Linux 网络安全
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Linux/Linux Container)
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Linux/Linux Container)

热门文章

最新文章