2022云栖精选—多来点云原生数据库多活实践

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云原生内存数据库 Tair,内存型 2GB
云数据库 Redis 版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: 李岩多来点高级技术总监

lQLPJxbcF2cqNBvMiM0FeLCMz4ifcSGHeANpqgFLAEAA_1400_136.png

一、哗啦啦高速发展的业务挑战

image.png

哗啦啦公司是国内头部餐饮系统服务商,为商户提供安全可信、一体化、全链路餐饮SaaS服务。2021年,该平台交易总额超7000亿人民币,行业大盘中占比15%。服务餐饮商户超40万家,日活跃店铺数近40万。公司研发人员超1500人,技术支持人员超1000人。

公司当IT现状如下:

第一,混合多云多数据中心。公司主要采用阿里云服务,并依托视频互联机房,建立了本地数据中心。

第二,核心业务。公司提供超3600个服务,月均构建超93千次,月均服务上线超81千次。

第三,数据库。拥有包含超1500台顶配服务器的数据库,范围涵盖MySQLRedisTiDBMongoDBClickHouseDoris等。

image.png

哗啦啦高速发展阶段面对的业务挑战需要多活来解决主要得益于多活的以下几个优势:

第一,能够应对核心业务故障。

第二,能够应对整个机房级别故障的需求。

第三,能够实现业务单元化。

第四,能够实现客户端就近接入。


二、云原生与异地多活解决方案

image.png

哗啦啦多活架构的设计原则主要遵从以下四个方面。

第一,业务内聚。尽量使单个下单在一个机房内完成,不要跨机房调度。

第二,可用性优先。发生故障切换机房时,优先保证系统可用性。

第三,数据保护。在数据可用的情况下,保护数据的完整性。

第四,业务感知。需要对代码进行一些改造。

image.png

建设异地多活存在诸多挑战

第一,流量管理难度高。需要具备多维的分流能力、动态调整能力。

第二,数据同步策略复杂。实现远距离数据同步,对同步性能、带宽有很高的要求,同步策略无法深入压测和调研。

第三,切换数据质量保障难。数据切换时需要检查所有数据状态,对技术及经验要求较高。

第四,多数据中心统一管控难度大。自行开发多数据中心统一管控平台需要对接众多基础设施,大量增加研发成本。

阿里云原生方案具备以下四点优势:

第一,云数据库的高可用性。能够实现自动化秒级故障切换,数据库更加敏捷和有弹性,能够实现分钟级扩展,相比自建数据库性能明显提升。

第二,同步工具成熟。DTS在哗啦啦使用深入,且对数据库多活场景充分适配。

第三,数据质量保障。阿里云在数据保证方面有许多可靠性验证及深度的系统实验。

第四,一体化解决方案。有统一管理和路由规则,实现从多活建站到容灾演练能力全覆盖。

image.png

当前哗啦啦采用DTS+RDS为用户提供产品化的全球多活数据库能力,主要优点在于。

第一,产品化组件使用大幅降低实施成本及运营成本。

第二,提供低延时的全球就近访问能力。

第三,提供延时接口支持业务单元切换。

第四,对后续架构进一步拓展、统一平台建设提供能力支持。

image.png

哗啦啦基础云平台的技术组件包括技术点主要有。

第一,GZS,多活数据库。主要管理订阅的业务单元、商务ID、客户ID等。

第二,API Route。能够针对网关层进行切入,针对业务单元进行迁移。

第三,SOA proxy&DAL。控制数据访问逻辑。

第四,DTS。最底层技术组件,是阿里云提供的数据复制服务。

image.png

哗啦啦整体云原生技术体系包括:POS、订单、支付、商城、会员、供应链、小程序及其他。业务承载下层为K8s,其上还有三个主要部分。

第一,资源整理平台。包括资产管理、数据库管理、配置管理、中间件管理、审批审计等功能。

第二,研发效能平台。面向产研,具有CICD、服务治理、立体观测、告警服务、流程管理、应用商店等功能。

第三,稳定性平台。包括告警、流量管理、流程管理、应用商店、经验平台、IT平台等。


三、哗啦啦后续的技术演进规划

image.png

哗啦啦后续技术规划包括以下三个方面。

第一,IT基础设施全面云化,全面采用公有云。

第二,应用全面云原生化。全面改造成云原生数据库,使得平台可以灵活运用,并易于管理。

第三,业务全球多活。从两地三中心到三地五中心,针对海外进行整体的基本建设。

lQLPJxbcF2cqM2TM-M0CnrCgW_7LDpyh1wNpqgFKAPsA_670_248.png

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
2天前
|
Kubernetes Cloud Native 持续交付
云原生技术在现代应用开发中的角色与实践
【9月更文挑战第9天】 随着云计算技术的飞速发展,云原生(Cloud Native)已经成为推动企业数字化转型的核心力量。本文将深入探讨云原生的基本概念、关键技术及其在实际开发中的应用案例,旨在为读者提供一条清晰的云原生技术学习路径和应用指南。通过实例分析,我们将揭示云原生如何优化资源管理、提升应用性能及加快部署速度,进而帮助企业构建更加灵活、可靠和高效的软件系统。
|
6天前
|
监控 Cloud Native 持续交付
云原生时代的微服务架构实践
【9月更文挑战第5天】随着云计算技术的飞速发展,云原生已成为现代软件开发的重要趋势。本文将深入探讨在云原生环境下,如何有效实施微服务架构,包括服务拆分、容器化部署、持续集成与交付等关键环节。通过具体案例,我们将展示如何在云平台上构建弹性、可扩展的微服务应用,并讨论在此过程中可能遇到的挑战及解决策略。
|
4天前
|
监控 Cloud Native 安全
云原生时代的微服务架构实践
【9月更文挑战第6天】在数字化转型的浪潮中,云原生技术以其灵活性、可扩展性成为企业架构升级的首选。本文将通过浅显易懂的语言和生动的比喻,带你一探微服务架构的世界,从理论到实践,逐步揭示如何利用云原生技术构建高效、可靠的微服务系统,同时穿插代码示例,为有志于云原生领域发展的技术人员提供一份实操指南。
20 2
|
7天前
|
Cloud Native 持续交付 Docker
云原生技术实践:Docker容器化部署教程
【9月更文挑战第4天】本文将引导你了解如何利用Docker这一云原生技术的核心工具,实现应用的容器化部署。文章不仅提供了详细的步骤和代码示例,还深入探讨了云原生技术背后的哲学,帮助你理解为何容器化在现代软件开发中变得如此重要,并指导你如何在实际操作中运用这些知识。
|
5天前
|
运维 Cloud Native 持续交付
云原生时代下的微服务架构实践
在数字化转型的浪潮中,云原生技术以其高效、灵活的特性成为企业IT架构升级的首选。本文将通过深入浅出的方式,探讨云原生环境下微服务架构的设计原则、关键技术及实施策略,旨在为读者提供一条清晰的技术路线图,帮助理解和掌握在云平台上构建和管理微服务的实用方法。
|
9天前
|
运维 Cloud Native Devops
云原生时代的DevOps实践:自动化、持续集成与持续部署
【9月更文挑战第3天】未来,随着人工智能、大数据等技术的不断融入,DevOps实践将更加智能化和自动化。我们将看到更多创新的技术和工具涌现出来,为软件开发和运维带来更多便利和效益。同时,跨团队协作和集成也将得到进一步加强,推动软件开发向更加高效、可靠和灵活的方向发展。
|
11天前
|
Kubernetes Cloud Native Docker
探索云原生技术:从容器化到微服务的实践之旅
在数字时代的浪潮中,云原生技术如同一艘航船,带领企业乘风破浪。本文将带你领略云原生的奥妙,从容器化技术的基石Docker讲起,到Kubernetes集群管理的航海术,再到微服务的架构设计,我们将一起构建、部署并运行一个简单的云原生应用。准备好,让我们启航!【8月更文挑战第31天】
|
11天前
|
Kubernetes Cloud Native 调度
云原生技术实践:构建高效、可扩展的微服务架构
本文深入探讨了云原生技术在现代软件架构中的应用,特别是如何利用这些技术构建高效、可扩展的微服务架构。文章首先介绍了云原生的基本概念和优势,然后通过一个实际案例,展示了如何使用Kubernetes和Docker等工具来部署和管理微服务。最后,文章还讨论了云原生技术面临的挑战和未来的发展趋势。 【8月更文挑战第31天】
|
11天前
|
运维 Kubernetes 监控
自动化运维:使用Python脚本实现系统监控云原生技术实践:Kubernetes在现代应用部署中的角色
【8月更文挑战第31天】在现代IT运维管理中,自动化已成为提高效率和准确性的关键。本文将通过一个Python脚本示例,展示如何实现对服务器的自动监控,包括CPU使用率、内存占用以及磁盘空间的实时监测。这不仅帮助运维人员快速定位问题,也减轻了日常监控工作的负担。文章以通俗易懂的语言,逐步引导读者理解并实践自动化监控的设置过程。 【8月更文挑战第31天】本文旨在探索云原生技术的核心—Kubernetes,如何革新现代应用的开发与部署。通过浅显易懂的语言和实例,我们将一窥Kubernetes的强大功能及其对DevOps文化的影响。你将学会如何利用Kubernetes进行容器编排,以及它如何帮助你的
|
11天前
|
Kubernetes Cloud Native Docker
探索云原生技术:从容器化到微服务的实践之旅
【8月更文挑战第31天】在数字时代的浪潮中,云原生技术如同一艘航船,带领企业乘风破浪。本文将带你领略云原生的奥妙,从容器化技术的基石Docker讲起,到Kubernetes集群管理的航海术,再到微服务的架构设计,我们将一起构建、部署并运行一个简单的云原生应用。准备好,让我们启航!

相关产品

  • 云原生数据库 PolarDB