0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

六条以正确方式快速扩展应用程序的相关经验

如意 来源:企业网D1Net 作者:Nikita Ivanov 2020-09-05 09:44 次阅读

虽然新冠肺炎大流行仍在对社区生活和经济造成不利影响,但是在另一方面,在电子商务、物流、在线学习、送餐、在线商业协作等领域,用户对许多公司产品和服务的需求都出现了大幅飙升。对于这些公司中的许多公司来说,就地避难所和禁闭令造成了用户需求、以及交易和支付方式的改变,从而使一些公司的业务激增。这些激增使应用程序的使用量迅速飙升,从而可能会导致业务延迟和中断,这会让用户感到沮丧。

如果你所在的企业的业务和应用程序负载急剧增加,你会做些什么?你如何才能快速提高应用程序的性能和可扩展性,以确保良好的客户体验呢?以下是以正确方式快速扩展应用程序的6条经验。

了解全部挑战

只解决部分问题可能达不到预期的效果,一定要考虑以下所有的因素。

技术问题:负载下的应用程序性能(以及最终的用户体验)由延迟和并发之间的相互作用决定。延迟是特定操作所需的时间,例如网站响应用户请求所需的时间。并发性是指系统可以同时处理的请求数。当并发性不可伸缩时,需求的显著增加可能会导致延迟的增加,因为系统不能在接收到所有请求时立即响应它们。这可能会导致糟糕的客户体验,因为响应时间从几分之一秒增加到几秒,甚至更长,以至于可能导致无法响应所有请求。因此,虽然确保单个请求的低延迟可能很重要,但它本身可能无法解决并发激增带来的挑战。因此,必须找到一种方法来扩展并发用户数,同时保持所需的响应时间。此外,应用程序必须能够在多个云提供商和内部部署服务器的混合环境中无缝扩展。

计时:一个需要数年时间才能实现的策略,比如从头开始重新设计应用程序,对于解决眼前的需求没有什么帮助。采用的解决方案应该能够在几周或几个月内开始扩展。

成本:很少有公司在没有预算限制的情况下应对这一挑战,因此将前期投资降至最低并将增加的运营成本降至最低的战略至关重要。

做好短期和长期计划

即使解决了在降低延迟的同时增加并发性的挑战,也不要仓促进行可能付出高昂代价的短期修复。如果应用程序的完全重新设计不是有计划的,那么可以采用一种策略,使现有的基础设施能够根据需求进行大规模扩展。

选择正确的技术

事实证明,开源内存计算解决方案是在保持或降低延迟的同时快速扩展系统并发性的最具成本效益的方法。例如,Apache Ignite是部署在商用服务器集群上的分布式内存计算解决方案。它将集群的可用CPURAM池化,并将数据和计算分发到各个节点。Ignite部署在本地、公共云、私有云或混合环境中,可以将其插入现有应用程序和数据层之间的内存数据网格,而无需对其中任何一个进行重大修改。IGNITE还支持ANSI-99 SQL和ACID事务。

Apache Ignite内存数据网格就位后,数据库中的相关数据将“缓存”在计算集群的RAM中,并且可用于处理,而不会因正常读写基于磁盘的数据存储而导致延迟。Ignite IMDG使用MapReduce方法,并在集群节点上运行应用程序代码,以便在整个集群上执行大规模并行处理,同时最大限度地减少网络上的数据移动。这种内存中的数据缓存、将计算发送到集群节点和MPP的组合显著提高了并发性并降低了延迟,与基于磁盘的数据库构建的应用程序相比,应用程序性能提高了1,000倍。

Ignite的分布式体系结构只需添加新节点就可以增加集群的计算能力和RAM。IGNITE会自动检测额外的节点,并跨集群中的所有节点重新分配数据,从而确保CPU和RAM组合的最佳使用。轻松将节点添加到集群的能力还可实现巨大的可扩展性,以为业务快速增长提供支持。最后,IMDG通过将应用层对IMDG中的数据所做的更改写回源数据存储来确保数据一致性。

Apache Ignite还可以通过支持两个日益重要的战略来验证基础设施的未来。

数字集成集线器(DIH):DIH架构可以支持需要360度数据视图的实时业务流程。它提供了一个通用数据访问层,用于聚合和处理来自数据流以及内部和基于云的源(包括内部和云数据库、数据湖、数据仓库和SaaS应用)的数据。然后,多个面向客户的业务应用程序可以访问聚合数据并以内存中的速度处理数据,而无需通过网络移动数据。DIH自动将消费应用程序对数据所做的更改同步到后端数据存储,同时减少或消除对这些数据源的API调用的需要。

混合事务/分析处理(HTAP):HTAP是对事务和分析的相同内存数据集的高速处理。这样就不需要耗时的提取、转换和加载(ETL)过程来定期将数据从联机事务处理(OLTP)系统复制到单独的联机分析处理(OLAP)系统。HTAP由内存计算平台提供支持,可在不影响整体系统性能的情况下对运营数据运行预定义的分析查询。

考虑开放源码堆栈

要继续创建经济高效、可快速扩展的基础设施,请考虑以下其他经过验证的开源解决方案:

Apache Kafka或Apache Flink,用于构建实时数据管道,用于将数据从股票行情或物联网设备等流来源传送到Apache Ignite内存数据网格。

Kubernetes用于自动部署和管理已在Docker或其他容器解决方案中集成的应用程序。将应用程序放入容器中并使其管理自动化,这是在分布式、混合、多云世界中成功构建实时、端到端业务流程的关键。

Apache Spark,用于处理和分析大量分布式数据。Spark利用Ignite内存计算平台,利用通过Kafka或Flink流传输管道获取的海量数据,更有效地训练机器学习模型。

正确构建、部署和维护

由于希望在更快的时间内部署这些解决方案,同时延迟的后果可能非常高,因此必须对项目可用的内部资源进行现实的评估。如果缺乏专业知识或可用性,请毫不犹豫地咨询第三方专家。可以根据合同轻松获得对所有这些开放源码解决方案的支持,从而有可能获得所需的专业知识,而无需花费时间来扩大内部团队。

了解更多信息

许多在线资源可以帮助你快速掌握这些技术,并确定哪些策略可能适合你的组织。

无论你的目标是在业务活动激增的情况下确保最佳的客户体验,还是为大流行后的经济复苏做准备,由内存计算提供支持的开源基础设施堆栈都是将前所未有的速度与巨大的可扩展性相结合以实现实时业务流程的经济高效的途径。
责编AJX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 移动
    +关注

    关注

    1

    文章

    430

    浏览量

    38917
  • APP
    APP
    +关注

    关注

    33

    文章

    1574

    浏览量

    72561
  • 应用程序
    +关注

    关注

    37

    文章

    3283

    浏览量

    57745
收藏 人收藏

    评论

    相关推荐

    TMETRIC:简单步骤将工作区连接到时间跟踪应用程序

    将计时器按钮添加到组合门票 完成这三个简单步骤在 Assembla 中启用时间跟踪。设置时间不超过 3 分钟。 注册 TMetric 具有高级计费和报告功能的时间跟踪应用程序 安装浏览器扩展
    的头像 发表于 01-07 09:23 42次阅读
    TMETRIC:简单步骤将工作区连接到时间跟踪<b class='flag-5'>应用程序</b>

    扩展您的Chart FX应用程序:标准化升级适应更多领域

    扩展性基础设施标准化升级后,将会带来更好的集成体验和更轻松的Chart FX扩展部署。这些Chart FX扩展是.NET程序集,允许Chart FX
    的头像 发表于 12-31 09:42 74次阅读
    <b class='flag-5'>扩展</b>您的Chart FX<b class='flag-5'>应用程序</b>:标准化升级适应更多领域

    AWTK-WEB 快速入门(2) - JS 应用程序

    导读AWTK可以使用相同的技术栈开发各种平台的应用程序。有时我们需要使用Web界面与设备进行交互,本文介绍一下如何使用JS语言开发AWTK-WEB应用程序。用AWTKDesigner新建一个应用程序先安装AWTKDesigner
    的头像 发表于 12-05 01:04 125次阅读
    AWTK-WEB <b class='flag-5'>快速</b>入门(2) - JS <b class='flag-5'>应用程序</b>

    AWTK-WEB 快速入门(1) - C 语言应用程序

    导读AWTK可以使用相同的技术栈开发各种平台的应用程序。有时我们需要使用Web界面与设备进行交互,本文介绍一下如何使用C语言开发AWTK-WEB应用程序。用AWTKDesigner新建一个应用程序
    的头像 发表于 11-27 11:46 227次阅读
    AWTK-WEB <b class='flag-5'>快速</b>入门(1) - C 语言<b class='flag-5'>应用程序</b>

    J1五极管怎么接才正确

    J1五极管是一种电子管,通常用于音频放大器、无线电设备和某些特殊应用中。正确连接J1五极管对于确保设备正常工作和性能至关重要。 J1五极管概述
    的头像 发表于 09-24 15:30 481次阅读

    如何正确操作轴焊接机器人

    一起了解如何正确操作轴焊接机器人。 下面是一些基本的操作指南: 1. 操作前准备 设备检查:确保机器人、焊接电源和焊枪等设备状态良好,无损坏。 工件检查:确认待焊接工件的尺寸和焊接位置与程序一致。 参数设定:根据工件材料
    的头像 发表于 09-23 17:41 217次阅读

    为MCU扩展选择正确的多路复用器

    电子发烧友网站提供《为MCU扩展选择正确的多路复用器.pdf》资料免费下载
    发表于 09-18 11:52 0次下载
    为MCU<b class='flag-5'>扩展</b>选择<b class='flag-5'>正确</b>的多路复用器

    使用HIC启用外围扩展应用程序应用说明

    电子发烧友网站提供《使用HIC启用外围扩展应用程序应用说明.pdf》资料免费下载
    发表于 09-14 09:44 0次下载
    使用HIC启用外围<b class='flag-5'>扩展</b><b class='flag-5'>应用程序</b>应用说明

    ESP8266如何为应用程序选择正确的Wi-Fi模块吗?

    您能帮我为我们的新应用程序选择正确的 Wi-Fi 模块吗? 该模块的要求如下: - 从主机应用程序控制(通过STM32通过SPI、SDIO或最坏情况下的UART) - 接入点/软 AP,可以同时
    发表于 07-19 16:56

    名单公布!【书籍评测活动NO.33】做了50年软件开发,总结出60经验教训,每一都太扎心!

    。 每一经验教训都会简要阐述一个核心观点,然后就该观点对团队可采取的措施进行讨论和建议。 当你读完每一章时,你都有可能发现其与你息息相关。 在本书中,“书本”图标表示一个故事,该故事可能
    发表于 05-17 14:36

    【AWTK使用经验】如何设计立体电池进度

    AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何加载外部资源?如何设计自定义进度?这些都会在系列文章进行解答
    的头像 发表于 04-18 08:25 465次阅读
    【AWTK使用<b class='flag-5'>经验</b>】如何设计立体电池进度<b class='flag-5'>条</b>?

    SOLIDWORKS云应用程序:面向学生的全新机遇

    随着科技的快速发展和数字化转型的深入,SOLIDWORKS云应用程序的推出,无疑为学生提供了一个全新的学习和实践平台。SOLIDWORKS,作为一款工程设计软件,其云应用程序的推出,不仅提升了工作效率,还为学生提供了更为便捷的学
    的头像 发表于 03-25 15:39 291次阅读

    应用程序中的服务器错误怎么解决?

    在使用应用程序时,可能会遇到服务器错误的问题。这种错误通常会导致应用程序无法正常运行 ,给用户带来不便。下面将介绍应用程序中的服务器错误及其解决方法,帮助您快速解决这一问题。
    的头像 发表于 03-12 15:13 6297次阅读

    三星显示斥资打造全球首8.6代IT OLED生产线

    该生产线由三星显示通过对原有L8生产线进行升级改造而来,是全球规模最大的OLED生产线。这也是三星第六条OLED生产线,投产后将打造出全球最高世代的OLED生产工艺。
    的头像 发表于 03-10 14:54 1997次阅读

    麦爵士madrix麦觉仕幻彩灯灯带智能像素灯工程安装经验详解

    工程安装经验为基础,为麦爵士幻彩灯灯带智能像素灯安装提供合理的经验,以便提高工程施工效率,麦爵士madrix幻彩灯灯带智能像素灯安装
    的头像 发表于 02-27 19:55 1726次阅读
    麦爵士madrix麦觉仕幻彩灯<b class='flag-5'>条</b>灯带智能像素灯工程安装<b class='flag-5'>经验</b>详解