亚马逊云科技 re:Invent 大会 - ElastiCache Serverless 模式来袭

news2024/11/19 17:33:54

大会介绍

亚马逊云科技的 re:Invent 大会是一年一度的,面向全球技术开发者科技盛会。几乎每次都会发布云科技、云计算等相关领域的产品重磅更新,不但将时下主流热门的技术不断整合,也未将来的发展标明了方向。

亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、活动与竞赛等。帮助中国开发者对接世界最前沿技术,观点,和项目,并将中国优秀开发者或技术推荐给全球云社区。如果你还没有关注/收藏,看到这里请一定不要匆匆划过,点这里让它成为你的技术宝库!

其中的内容不仅仅展现了亚马逊云科技自身产品的更新,也为该行业的从业者提供了一个很好的学习和发展参照。回顾最近十年,科技领域的发展逐渐迅猛,技术的更替以及开发模式的变更都越来越快,尽早的了解科技的发展方向是尤为重要的。

2023年的 re:Invent 大会上,一口气发布了十余款核心产品的重磅更新,其中包括 AI、芯片、对象存储、Serverless、ETL等等。本篇文章就主要来说说工作中常用的 Amazon ElastiCache 数据缓存服务。

一、Amazon ElastiCache

image.png

1.产品介绍
  • 产品链接:Amazon ElastiCache 云缓存_分布式缓存

引自官方描述:Amazon ElastiCache 是一项完全托管且兼容 Redis 和 Memcached 的服务,可为现代应用程序提供实时、成本优化的性能。ElastiCache 可扩展至每秒数亿次操作,并保持微秒级响应时间,同时提供企业级安全性和可靠性。

在进行高并发、大用户量的应用或平台开发时,核心的业务流程通过服务端代码与持久化存储共同构建,但除此之外还应具备缓存层,主要用于应对频繁、高频率的数据查询,以减轻数据库的压力。同时,在缓存层中也可以构建各种数据结构,快速实现各种排序列表的更新,或作为数据同步的中转层,可以发挥十分重要的作用。

2.升级对比

根据本次官方文章的内容: Three-Serverless-Innovations-to-Help-Customers-Analyze-and-Manage-Data-at-Any-Scale,宣布了三项新的无服务器创新技术,这些技术旨在帮助客户更快速、更轻松地扩展其数据基础设施,以支持最苛刻的使用案例。涵盖了数据库和分析领域,简化了大规模数据管理和分析的操作。新的 Serverless 模式使创建高可用缓存变得更快、更简单,并且可以即时按应用需求垂直和水平扩展,无需管理基础设施。

本文将重点介绍 Amazon ElastiCache Serverless ,11月底宣布推出新的 Serverless 模式,可以简化缓存管理,即时扩展,这些都是 Servless 的标准特性。小编个人感觉这也是云存储的整体发展趋势,不断的封装以达到开箱即用,不断的优化以降本增效。

3.应用案例

image.png

  • 更低的总拥有成本

通过使用缓存层,降低数据持久层的开销,更重要的是,对于用户的响应时间能够得到有效的优化。当然,实现的前提是合理构建查询逻辑,维护好缓存层的数据更新。缓存层的应用不仅仅是因为转换为了更加快速的读写服务,依然要重视相关读写规则的设计。

  • 实时应用程序数据缓存

缓存层得以快速响应的主要原因之一是将数据存储在内存中,并且大部分都是基于 Key-Value 模式的,想要取什么,直接拿走就是,对于使用者来说,只需要关心如何对 Key 进行设计。

  • 实时会话存储

实时的会话存储可以覆盖很多场景,比如电商场景的购物车数据,是不会直接持久化写入数据库的,最多是做延时存储,那么在此之前存储在缓存层是十分合适的,包括对于未登录状态的用户相关数据也可以根据预定义的会话标识进行存储,实现一些数据的保存。

  • 实时排行榜

实时排行榜可以说是缓存层的经典应用之一了,毕竟排行榜本身的特性就是实时变化,使用关系型数据库来进行支撑是不合理也不合适的。而 Redis 中的zset等结构就可以很好的进行支持,当数据有变化时自动进行排名,可以将排行榜相关的业务与数据库实体恰当的分离出来。

二、使用体验

由于本次更新主要是体现在 Serverless 模式与性能优化上,因此小编在这里就带大家体验一下整个产品,在这个过程中会尽量解读与传统模式的区别。

1.免费试用

image.png

Amazon ElastiCache 同样在新用户免费套餐中,点击 开始使用 Amazon ElastiCache 按钮开始创建。点击 开始使用 这里以 Redis 为例:

image.png

2.创建 Redis

部署选项中选择无服务器

image.png

设置中定义名称后,检查默认设置

image.png

可以看到默认使用的引擎版本为7,如果需要更改引擎或者修改使用区可以点击自定义默认配置,最后点击创建按钮。

image.png

3.与传统对比

可以看到,这样就完成了对于 Redis 引擎的缓存服务创建,因为是 Servless 模式,我们不需要具体指定详细的配置。与 按量付费 模式不同的是,按量付费模式中我们依然要选择不同的硬件配置,对整体的承载量要有一个评估,而 Serverless 则可以动态的调配。等待创建完成后,可以看到状态显示 Available :

image.png

4.创建 EC2

这里演示一下通过 EC2 连接测试的流程,首先我们确认可用区为 us-east-1,这里大家查看自己的可用区,然后在对应的区域下创建一个 EC2,也就是云服务器,同样是可以免费使用的:

image.png

通过搜索打开 EC2 面板,点击 启动实例 按钮,创建前确认区域正确:

image.png

填写名称:

image.png

选择带有 符合条件的免费套餐 字样的镜像,并且选择 Amazon Linux 2,继续下一步:

image.png

点击 网络设置 的 编辑:

image.png

按照之前创建的 Amazon ElastiCache 网络进行配置【重要】:

image.png

点击创建一个新的密钥对,用于本地远程连接时使用【本例中将在云端直接连接】:

image.png

创建后密钥文件将会自动下载,保存好即可。

image.png

免费套餐中最大可以使用 30GB 的存储空间,如果打算长期使用这个实例,可以修改的大一些:

image.png

最后点击右侧的 启动实例 按钮:

image.png

5.网络配置

这里需要说明一下,默认创建的 Amazon ElastiCache 所在的安全组的规则是,允许任意来自同一个 VPC 下的地址访问,这也是我们创建 EC2 来进行访问的原因,这样可以极大的提高安全性。现在,我们需要为这个安全组单独开放一个 22 端口,这样我们可以连接到 EC2 进行操作。首先来到安全组设置:

image.png

点击要修改的安全组:

image.png

特别强调一下,因为 Amazon ElastiCache 创建后对应的 IP 解析后并不是公网 IP,所以我们必须要借助 EC2 来直接访问,实际使用时,也可以通过在同一网络下的其它 Amazon 云产品来调用。

6.连接测试

EC2 创建完毕后,可以看到如下界面:

image.png

或者也可以在实例详情页面点击 连接 按钮:

image.png

然后输入如下命令安装 redis-cli :

sudo amazon-linux-extras install epel -y
sudo yum install gcc jemalloc-devel openssl-devel tcl tcl-devel -y
sudo wget http://download.redis.io/redis-stable.tar.gz
sudo tar xvzf redis-stable.tar.gz
cd redis-stable
sudo make BUILD_TLS=yes

接下来通过 Amazon RlastiCache 中的端点信息得到连接参数,如:

# 以小编自己的信息为例
my-redis-jdkpnh.serverless.use1.cache.amazonaws.com:6379
# 拆解后的命令为
redis-cli -h my-redis-jdkpnh.serverless.use1.cache.amazonaws.com --tls -p 6379

然后执行相应的命令即可连接成功:

image.png

特别注意:编译时必须添加 BUILD_TLS ,连接时也必须使用 –tls 才可连接成功!

结语

可以看到,目前对于云数据库类存储产品都在向 Serverless 方向发展,这个过程中使用者不再需要去维护存储服务本身。比如说,之前需要搭建一个 Redis 集群,需要自行管理节点,评估性能,控制权限等等。而现在我们只需要管理好 VPS 就可以控制权限,很多小伙伴第一次接触 安全组、VPC、子网 等还比较懵,此前可能只是简单开放一下端口就行了,但是现在学习一下整个云资产的运作以及相互之前的关系是十分必要的。

文章来源:
https://dev.amazoncloud.cn/column/article/658a36c65d096603bb1bad40?sc_medium=regulartraffic&sc_campaign=crossplatform&sc_channel=CSDN

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1338011.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一键启动Python世界:PyCharm安装全攻略与pyinstaller魔法转换

文章目录 一、 前言二、PyCharm1.PyCharm的介绍2.PyCharm相比较cmd的优势3.PyCharm的下载4.PyCharm的安装4.1 第一步4.2 第二步4.3 第三步4.4 第四步4.5 第五步4.6 第六步4.7 安装完成4.8 同意条款4.9 数据共享4.10 软件界面4.11 新建项目4.12 项目编写和运行4.13 汉化 三、 打…

python消费rabbitmq

队列经常用,能保持信息一致性。也能跨语言,java写的生产者,推到队列中,python写的消费者消费。 这里,生成者,我们是java,已经发了一条消息了。 python是使用pika来链接rabbitmq 安装pika pip…

java SSM课程平台系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM课程平台系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S…

若依(Spring boot)框架中如何在不同的控制器之间共享与使用数据

在若依框架或Spring boot框架中,控制器共享和使用数据是为了确保数据一致性、传递信息、提高效率和降低系统复杂性。这可以通过全局变量、依赖注入或数据库/缓存等方式实现。共享和使用数据对框架的正常运行非常关键,有助于促进控制器之间的协同工作&…

After Effects 2021 for Mac(AE 2021)

After Effects 2021是一款由Adobe公司开发的视频特效和动态图形制作软件,它主要用于电影、电视和网络视频的后期制作。该软件可以帮助用户创建各种令人惊叹的视觉效果,包括动态图形、文字特效、粒子系统、3D渲染等。 After Effects 2021提供了数百种特效…

钦丰科技(安徽)股份有限公司携卫生级阀门管件盛装亮相2024发酵展

钦丰科技(安徽)股份有限公司携卫生级阀门管件盛装亮相2024济南生物发酵展! 展位号:2号馆A65展位 2024第12届国际生物发酵产品与技术装备展览会(济南)于3月5-7日在山东国际会展中心盛大召开,展会同期将举办30余场高质…

Linux应用程序管理与安装

一.Linux应用程序基础: 1.Linux应用程序与命令的关系: 两者的用途区别: 系统命令:命令文件一般在安装操作系统一起安装,用于辅助操作系统本身的管理。 应用程序:应用程序一般需要在操作系统之外另行安装&a…

学习笔记11——Spring的XML配置

学习笔记系列开头惯例发布一些寻亲消息 链接:https://www.baobeihuijia.com/bbhj/contents/3/192584.html SSM框架——IOC基础【BeanSetter注入加载xml】 框架总览 Spring Framework 谈谈我对Spring的理解 - 知乎 (zhihu.com)java - 【架构视角】一篇文章带你彻底…

PYTHON基础:K最邻近算法

K最邻近算法笔记 K最邻近算法既可以用在分类中,也可以用在回归中。在分类的方法,比如说在x-y的坐标轴上又两个成堆的数据集,也就是有两类,如果这个时候有个点在图上,它是属于谁? 原则就是哪一类离它比较近…

【Unity6.0+AI】Unity版的Pytorch之Sentis-把大模型植入Unity

本教程详细讲解什么Sentis。以及恶补一些人工智能神经网络的基础概念,概述了基本流程,加载模型、输入内容到模型、使用GPU让模型推理数据、输出数据。 官方文档 Unity Sentis: Use AI models in Unity Runtime | Unity 主页介绍 官方文档链接:Sentis overview | Sentis | 1…

常见的一些库函数

什么是库函数: 库函数是一组预先定义好的函数,可以通过包含相应的头文件来使用。它们提供了各种常用的功能和算法,使得编程更加方便和高效。 库函数的作用如下: 提供常用功能:库函数提供了各种常用的功能,…

深入探究MongoDB:从基础到实战,一个全面的指南

MongoDB:海量数据库的介绍 定义与命名由来: MongoDB源自词“humongous”,意味着“巨大无比”。因此,MongoDB可译为“海量数据库”。类型: MongoDB是一种非关系型(NoSQL)数据库。与传统的关系型数据库相比,它的显著特点是不使用SQL语句。数据结构更灵活,没有固定的数据类…

前端调用后端编写的导出excel表格接口

前提: 我在前人将excel工具封装好的基础上,实现前端导出后端编写的excel表格接口,出现过很多问题。 先看前人的代码: 前端 handleExport() {const params Object.assign({}, this.queryParams.value)this.download(/system/a/fe…

ubuntu多用户环境dockerbug,卸载重装docker流程

之前不小心误操作删除重装docker,结果删除没成功,更没法重装,每次apt install都会报一个docker错误,虽然不影响软件的常规安装~但是现在还是需要装一个完整docker,还是选择删除一下,重点是关闭服…

数据分析——数据预处理和数据管道构建

目标:对于拿到的一个任意数据集,编写类似数据加载程序,以适应深度学习的研究。 框架: 针对不同的时间序列数据集,可以总结如下关键步骤,以编写类似上述代码的深度学习数据处理流程: 1. **了解…

十一.MyBatis的缓存

11.1缓存介绍 为什么使用缓存? 使用缓存的主要原因是为了提高应用程序的性能和响应速度。缓存可以存储经常访问的数据或计算结果,从而避免重复进行相同的计算或查询数据库等耗时的操作。通过使用缓存,你可以减少对原始数据源的访问次数&…

Springboot整合MVC进阶篇

一、概述 1.1SpringBoot整合SpringMVC配置 SpringBoot对SpringMVC的配置主要包括以下几个方面: 自动配置:SpringBoot会自动配置一个嵌入式的Servlet容器(如Tomcat),并为我们提供默认的SpringMVC配置。这样我们无需手动…

电脑显卡驱动停止响应该怎么办?为什么会出现这种情况

显卡驱动停止响应的原因 当你电脑突然弹框说显卡驱动停止响应,你知道是出现什么问题了吗,下面我们为大家总结了有可能造成显卡驱动停止响应的原因。1. 过热:显卡在长时间高负载下可能会过热,导致驱动停止响应。过高的温度可能…

RM3100 stm32驱动(硬件i2c)

目录 RM3100接线HAL库I2C函数HAL_I2C_Mem_ReadHAL_I2C_Mem_WriteHAL_I2C_Master_Transmit / HAL_I2C_Master_Receive例子 HSHAKE寄存器 cubemx配置RM3100寄存器驱动最终效果 RM3100接线 原理图 SA0 SA1接地,此时i2c设备地址为0100000,即0x20 如果SA0接…

PDF编辑工具--Acrobat Pro DC 2023中文

Acrobat Pro DC 2023是一款功能强大的PDF编辑和管理软件,它可以帮助用户在创建、编辑、转换和共享PDF文档方面达到前所未有的高度。这款软件提供了丰富的编辑功能,使用户能够轻松添加注释、高亮、下划线、插入文本等,自由地编辑PDF文档。除了…