aws 性能

至关重要的是扩展软件应用程序,以避免由于网站的客户群或需要处理大型数据集的应用程序等导致的工作负载增加而导致性能瓶颈的情况。云服务提供商通常是访问其他应用程序的最佳方法随需应变的资源,可根据应用程序的负载变化来放大或缩小。

1.什么是可伸缩性?

可伸缩性是解决方案可以通过添加计算和存储资源的一种有能力的方式来处理增加的工作负载或事务的特性。 如果您当前的解决方案可同时支持100万用户,那么具有高度可扩展性的软件将通过添加额外的资源而对数十亿用户有效。 为了处理更多负载,有两种类型的缩放比例:垂直缩放比例和水平缩放比例

1.1垂直缩放(或向上缩放)

在这种类型的扩展中,您将添加更多具有容量增加的高级硬件,例如更多的RAM,强大的处理器等,以增加应用程序的负载。 垂直扩展的问题在于,容量可以增长多少始终存在限制。 由于硬件成本,这种类型的缩放非常昂贵,并且花费时间来获得新的硬件。 如果要快速扩展应用程序以增加负载,则这种扩展类型不是一个好选择。

1.2水平缩放(或横向扩展)

在这种类型的扩展中,可以将更多服务器添加到现有容量中,以增加应用程序的负载。 应用程序增加的负载通过负载均衡器分布在群集中的所有服务器上。 如果您想快速增长软件并且成本不高,则这种类型的扩展是最佳选择。

通过配置更改即可轻松扩展Cloud Environments中的应用程序,配置更改会根据性能监控指标自动将其他服务器添加到群集中。

通过配置更改即可轻松扩展Cloud Environments中的应用程序,配置更改会根据性能监控指标自动将其他服务器添加到群集中。 在本文中,我们将讨论可用于在AWS Cloud Environment中自动缩放AWS EC2 Auto Scaling组的不同Autoscaling选项。

2.什么是自动缩放?

自动缩放是云计算环境中的一项功能,当使用情况指标达到配置的阈值时,该功能会自动从实例群集中添加或删除虚拟机等计算资源。 自动缩放或动态缩放功能可确保将新的计算资源无缝地添加到群集中,以满足需求峰值,并在需求下降时终止实例。

AWS自动扩展

3.为什么需要自动缩放?

无论应用程序上的负载如何,自动缩放都有助于获得更好和一致的性能。 自动缩放还可以通过在需求减少时自动终止资源来帮助降低成本。

使用自动缩放,您可以配置在满足需求阈值时要添加或删除的服务器数量。 另外,您可以配置可以添加到群集的最大服务器数量。 不应将任何数据存储在属于Autoscaling组的实例上,而是将数据持久保存到分布式存储系统中。

4.自动缩放组件

请按照此处概述的步骤从AWS Console创建Autoscaling Group。 以下是自动缩放的主要组成部分。

EC2实例 :EC2是Amazon Web Services(AWS)云环境中用于运行应用程序的虚拟服务器。 EC2实例是从AMI(Amazon Machine Images)创建的。

Auto Scaling Group(ASG) ASG是具有相似特征的EC2实例的集合,并且是从同一AMI创建的。 使用自动缩放功能,可以根据负载从动态缩放组中动态添加或删除实例。 Autoscaling组通过执行定期的运行状况检查来维护所需的实例数。 如果发现任何不正常的实例,ASG会终止该不正常的实例并启动新实例。

启动配置 :启动配置是ASG用于启动EC2实例的模板。 在启动配置中,您需要指定AMI Id,实例类型,密钥对,安全组等。您可以使用相同的启动配置来创建多个自动伸缩组。

伸缩标准伸缩标准配置指示ASG有关何时以及如何伸缩。

5. AWS上不同类型的Auto Scaling?

以下是AWS云环境上可用的三种不同类型的自动扩展选项:

5.1React式自动缩放

在“ React式缩放”中 ,您定义缩放标准以根据需求的变化进行缩放。 根据平均CPU消耗或EC2实例的内存使用情况(基于Cloud Watch指标)等,对Auto Scaling组(ASG)中的Amazon EC2实例进行缩放。例如,如果您不希望ASG的CPU使用率超过80%,您可以设置缩放标准以在达到此阈值时自动缩放。 当达到配置的阈值时,将添加新的EC2实例或从ASG中删除现有的EC2实例。

5.2主动自动缩放

主动式自动缩放是一种机制,它基于对ASG流量周期性峰值的历史观察,调度EC2实例以实现可预测的负载变化。 例如,如果您的视频应用在黄金时段(例如6pm – 9 pm)使用率较高,则可以安排自动缩放以在6 pm之前添加其他实例,并在9 pm之后终止其他实例。

要创建主动式自动伸缩组,您需要创建一个计划操作,该操作应在该操作应生效的开始时间,最小,最大和所需容量上进行。 计划操作告诉ASG在指定时间执行横向扩展或纵向扩展操作。

请按照以下步骤创建主动或计划自动缩放。

5.3预测性自动缩放

在AWS re:Invent 2018即将发布之前,AWS推出了AWS EC2最受期待的功能Predictive Scaling 。 借助Predictive Scaling EC2实例,可以在流量变化之前扩展容量。

预测性自动缩放基于训练有素的机器学习(ML)算法,该算法可与时间序列数据一起使用。 这项经过训练的ML算法可根据您实际EC2使用情况中的数据以及从AWS观察中得出的数十亿个数据点来预测预期的流量和EC2使用情况。 该模型至少需要一天的历史数据才能开始进行预测; 每24小时进行一次重新评估,以创建下一个48小时的预测。 ML模型会随着时间的推移而变得更好,因为它可以从Autoscaling组生成的实际使用情况数据中学习。

只需单击即可启用预测性自动缩放。 通过主动扩展,可以避免EC2资源的过度配置,这将减少EC2成本。 可以按预测比例设置缓冲区,因此新启动的实例可以在准备好在预测时间处理流量之前进行预热。 使用预测缩放功能没有任何成本。 预测性自动缩放有助于优化EC2成本,非常适合负载峰值为周期性的应用。

配置预测伸缩计划:

预测缩放配置
来源: AWS Blog

您可以同时使用预测缩放和动态缩放。 预测性伸缩有助于进行预测,而动态伸缩则有助于基于云监视指标进行横向扩展。 您可以根据预先填充的指标或自定义指标进行预测。

基于CPU使用率指标的样本预测。

预测扩展:CPU利用率
来源: AWS Blog

注意 :预测性自动缩放在美国东部(弗吉尼亚北部),美国东部(俄亥俄州),美国西部(俄勒冈),欧洲(爱尔兰)和亚太地区(新加坡)地区可用

6.总结

自动缩放是一项强大的功能,可以在应用程序负载变化时解决应用程序中的性能瓶颈。 当对应用程序的需求较少时,通过终止Autoscaling组中的实例,还可以帮助节省成本。 预测性自动缩放功能可通过利用历史性的车队使用指标来帮助预测前方的负载并相应地缩放车队,而无需人工干预。

翻译自: https://www.javacodegeeks.com/2019/02/application-auto-scaling-on-aws-options-and-impact-on-performance.html

aws 性能

aws 性能_AWS上的应用程序自动扩展–选项和对性能的影响相关推荐

  1. AWS上的应用程序自动扩展–选项及其对性能的影响

    扩展软件应用程序是至关重要的,以避免由于网站的客户群或需要处理大量数据集的应用程序等增加而导致工作负载增加的性能瓶颈.云服务提供商通常是访问其他应用程序的最佳方法随需应变的资源,可根据应用程序的负载变 ...

  2. aws服务器_AWS无服务器应用程序镜头—摘要

    aws服务器 The whitepaper on AWS Serverless Application Lens is a treasure trove of information on how t ...

  3. 手机android怎么关闭自动更新,如何停止Android手机上的应用程序自动更新

    有几个原因可以阻止Play Store自动更新应用程序. 也许新的更新破坏了功能,或者您需要跟踪您的数据使用情况,并且不想通过蜂窝数据LIM. 不管是什么原因,这里是如何阻止自动更新发生在你的Andr ...

  4. node aws 内存溢出_在AWS Elastic Beanstalk上运行生产Node应用程序的现实

    node aws 内存溢出 by Jared Nutt 贾里德·努特(Jared Nutt) 在AWS Elastic Beanstalk上运行生产Node应用程序的现实 (The reality o ...

  5. aws 删除ec2实例_如何在AWS EC2实例上部署Spring Boot应用程序

    aws 删除ec2实例 你好朋友, 在本教程中,我们将看到如何在AWS EC2实例上部署Spring Boot应用程序. 这是我们将要执行的步骤. 1.使用Spring Boot Initialise ...

  6. 如何在AWS EC2实例上部署Spring Boot应用程序

    你好朋友, 在本教程中,我们将看到如何在AWS EC2实例上部署Spring Boot应用程序. 这是我们将要执行的步骤. 1.使用Spring Boot Initialiser创建一个Spring ...

  7. 开发者实测 M1 芯片报告:除了大型应用程序启动慢点,整体性能优秀!

    苹果新出的M1芯片推出已经有一段时间了,这个让人兴奋的Mac专用芯片对于开发者来说究竟是不是友好?PSPDFKit的创始人.开发者Peter Steinberger购置了一台新版MacBook Air ...

  8. 如何在Hadoop上编写MapReduce程序

    1. 概述 1970年,IBM的研究员E.F.Codd博士在刊物<Communication of the ACM>上发表了一篇名为"A Relational Model of ...

  9. aws部署ssh_将Quarkus应用程序部署到AWS Elastic Beanstalk

    aws部署ssh Elastic Beanstalk允许在AWS云中部署和管理应用程序,而无需了解运行这些应用程序的基础架构. 使用Elastic Beanstalk,您可以运行可处理HTTP请求的网 ...

最新文章

  1. 深入Garbage First垃圾收集器(三)G1中的垃圾收集
  2. 原来安全也能像足球那么踢的
  3. Android之app引导页(背景图片切换加各个页面动画效果)
  4. python字符串字面量有哪四种定义方式_Python学习笔记(四)字符串型
  5. ffmpeg 分辨率 压缩_Ffmpeg 视频压缩的几个关键参数
  6. MySQL系列教程(三)
  7. python3+Neo4j+flask,汽车行业知识图谱项目实战
  8. webdriver 等待页面加载完成_Python爬虫,登陆神器Selenium等待(waits)页面加载的三种方法...
  9. 开发自己的工作流(一)
  10. 8.3.2 构建组合行为
  11. chm 乱码 掌阅_CHM乱码解决
  12. 如何复制他人csdn博客文章到自己博客下
  13. IDEA Schemas and DTDs
  14. 看苹果出的面试难题!!!
  15. windows2012装sql 2000 sql 2005 vs2005的解决办法
  16. 几种冗余机械臂逆向运动学方法(带公式推导)
  17. 计量经济学计算机实验,《计量经济学》上机实验答案.doc
  18. 风险管理系列课程二:利用图技术优化反洗钱解决方案
  19. 潍坊学院计算机工程学院天一楼地址,我院志愿汇APP系统培训会
  20. 利用turtle库绘制图形---Python

热门文章

  1. 【学习笔记】WQS二分详解及常见理解误区解释
  2. [SDOI2016] 生成魔咒(后缀数组SA + st表 + set)动态不同子串个数
  3. codeforces:CF750 复盘
  4. 9.27模拟:至暗时刻
  5. jzoj4815-ksum【堆】
  6. 牛客小白月赛17-记录(附题解)
  7. 洛谷P1462-通往奥格玛瑞的路【日常图论,二分查找,最短路,SPAF】
  8. 【树链剖分】Milk Visits G(luogu 5838)
  9. Network of Schools POJ - 1236 tarjan强连通分量缩点
  10. 6 道 BATJ 必考的 Java 面试题