当前位置: 首页 > article >正文

阿里云 Serverless 助力海牙湾构建弹性、高效、智能的 AI 数字化平台

作者:赵世振、十眠、修省

“通过阿里云 Serverless 架构,我们成功解决了弹性能力不足、资源浪费与运维低效的痛点。SAE 的全托管特性大幅降低技术复杂度。未来,我们将进一步探索 Serverless 与 AI 的结合,为客户提供更智能的数字化解决方案。”

——海牙湾 CTO 夏磊

客户介绍

海牙湾(G-Town)是一家以"供应链+场景+技术+AI"为核心驱动力的科技公司,自 2006 年成立以来,始终致力于为各行业客户提供数字化转型升级解决方案。公司拥有近 300 人的专业团队,深度布局金融、美妆、能源等多个战略领域,与全国 16 家股份制银行、头部时尚美妆集团及能源企业建立了长期战略合作关系。

依托"数字化客户经营"与"数字化采购"两大核心业务体系,我们已成功服务超过 16 家全国股份制银行,主导实施 496 个营销平台运营项目,覆盖积分兑换、权益平台、智能电商、企业采购、礼品定制等多元化场景。目前,公司正加速构建新一代 AI 数字化平台,通过智能算法优化和机器学习技术,持续提升用户全生命周期体验与供应链智能决策能力,实现业务场景的精准匹配与效率跃升。

海牙湾坚守用户信息安全底线,构建三重权威保障体系:通过 ISO 27001 信息安全管理体系认证规范全流程数据治理,获得国家信息安全等级保护三级认证强化系统防护能力,并严格遵循 PCI-DSS(支付卡行业数据安全标准)完成支付系统安全建设。为金融、电商等高敏感场景提供符合国际安全标准的数字化解决方案,实现支付交易数据脱敏处理、用户隐私分级保护及核心业务系统的攻击自愈能力,护航客户信息资产安全。

凭借近二十年行业深耕,海牙湾持续为合作伙伴创造可量化的商业价值,在银行数字化营销领域保持市场占有率领先地位,并不断将成功经验拓展至快消品、能源等新经济领域,推动产业数字化生态的协同发展。

业务挑战

海牙湾的平台从一开始就构建在阿里云的服务器上。随着近几年业务规模的指数级增长,原有技术架构在可扩展性和弹性方面逐渐面临系统性挑战,特别是在应对重大活动期间的突增流量时,显得尤为突出。以下是其面临的核心技术挑战:

原有架构图

1. 资源浪费与弹性能力不足

  • 分散部署导致资源低效利用:业务系统分散部署在不同规格配置的 ECS 服务器上,由于负载差异显著,部分服务器 CPU 利用率长期低于 20%,甚至低至个位数,造成资源闲置与成本浪费。
  • 弹性扩容能力受限:传统云主机架构难以应对业务流量的波峰波谷(高峰期仅持续 1-2 小时),导致资源无法快速自适应动态调整,既无法满足突发流量需求,又无法在低谷期节省成本。

2. 系统可观测性不足

  • 依赖基础的系统性能指标和简单的日志关键字分析,业务异常排查效率低下,难以快速定位问题根源。

3. 运维效率低下与发布复杂度高

  • 手动部署易出错:应用发版需根据 ECS 服务器应用负载情况逐一分发,且发布期间,运维人员需参与控制每个节点的流量控制,无法实现业务的无损变更。
  • 脚本化部署局限性:尽管尝试通过脚本化部署提升效率,但在服务器组规模扩大后,脚本维护成本剧增,问题定位困难。

阿里云解决方案

为解决上述痛点,海牙湾技术团队经过深入调研,最终选择阿里云 Serverless 应用引擎(SAE)作为核心架构升级方案,并结合云原生 API 网关(原 MSE 网关)、MSE 微服务治理、ARMS 等产品,构建了全新的技术平台。

1. Serverless 应用引擎(SAE)

1.1 弹性扩容与资源优化
  • 水平扩容能力:SAE 支持根据业务负载自动调整实例数量,并结合定时策略应对周期性波峰波谷。例如,在业务高峰期自动扩容,应对突发流量,保障高并发场景下的稳定性,低谷期缩容至 1 实例,显著降低闲置资源成本。
  • CPU Burst能力:SAE 支持在应用启动过程中,将实例规格提升至两倍,解决应用启动过程中 CPU 利用率高,日常运行状态下的 CPU 利用率相对正常的问题。
  • 闲置能力:SAE 支持应用缩容到最小实例数且实例闲置时,闲置时 vCPU 成本降低 80%vCPU,有效降低运行成本。
  • Java 应用冷启动优化:针对 Java 应用冷启动耗时较长的问题,采用阿里云定制的 Dragonwell JDK,优化 JVM 性能,缩短启动时间 30% 以上。
1.2 自动化 CICD 与部署优化
  • kubectl-sae 集成:通过 kubectl-sae 工具链与现有 CICD 系统无缝对接,将 JAR 包构建、部署流程自动化。
    • 改造原有 CICD 流程:在 CICD 服务器上安装** kubectl-sae,通过 YAML 文件定义应用规格(如 CPU、内存、镜像路径),结合 Shell 脚本完成 JAR 包构建与上传,实现一键部署。
    • 版本回滚机制:SAE 默认为每次发布打上时间戳版本标签,支持一键回滚至历史版本,即使 JAR 包名称与路径固定,也可通过覆盖式部署更新,确保发布过程零中断。
  • 分批、金丝雀、全链路灰度:SAE 通过分批发布(逐步升级实例)、金丝雀发布(小流量验证新版本)和全链路灰度发布(跨服务版本一致性),确保新版本稳定验证后平滑上线,异常时一键回滚,显著降低故障风险。
1.3 全链路治理与稳定性保障
  • MSE 微服务治理能力:集成全链路灰度发布、无损上下线、流量防护等功能,确保发布过程无损,流量切换平滑,避免因版本更新导致服务中断。
  • 高可用架构设计:SAE 天然支持多可用区部署和同可用区亲和特性,实现流量的自动切换和故障的快速恢复,确保业务的连续性。

2. 云原生 API 网关(原 MSE 网关)

  • 高性能与低延迟:支持每秒数万次的 API 请求处理,满足海牙湾积分商城、分期商城等业务场景的高并发需求。
  • 安全防护:集成 DDoS 攻击防护、限流熔断、IP 黑白名单等机制,有效抵御恶意攻击,保障系统安全。
  • 灵活路由与策略管理:支持自定义路由规则、灰度发布策略及动态配置更新,适应不同业务场景的流量管理需求。
  • API管理:通过可视化控制台统一管理所有 API 接口,支持 API 设计、开发、测试、发布、下线等生命周期管理。

业务价值

通过采用阿里云 Serverless 架构,海牙湾在短短两个月内实现了技术架构的全面升级,业务价值显著提升:

1. 成本效益显著提升

  • 资源利用率提升:SAE 的弹性策略使资源利用率从不足 20% 提升至 50% 以上,开发测试环境一键启停,按需分配资源,成本节约超 60%。
  • 运维成本降低:自动化部署与监控流程减少人工干预,运维团队的工作压力减轻,整体工作效率提升 40%。

2. 系统稳定性与高可用性

  • 无损发布与灰度控制:通过 MSE 治理能力,实现全链路灰度发布与无损上下线,发布过程零中断,保障业务连续性。
  • 高并发场景应对:SAE 的弹性扩缩容能力轻松应对业务高峰,系统稳定性从 99.5% 提升至 99.99%,有效解决原有架构的瓶颈。

3. 运维效率与开发敏捷性

  • 自动化部署流程:CICD 集成后,SAE 业务项目的发布耗时,从小时级缩短至分钟级,研发团队可专注于核心业务开发,迭代速度提升 3 倍。
  • 快速故障定位:SAE 内置的监控解决方案的无缝集成,为海牙湾提供了快速、精准的问题定位能力,Bug 处理速度提升 30%,运维响应效率显著提高。

未来展望

海牙湾的实践证明,阿里云 Serverless 架构不仅是应对业务增长的技术选择,更是企业实现降本增效、提升竞争力的关键路径。通过 Serverless 与云原生技术的深度整合,海牙湾正在为更多行业的数字化转型提供标杆范例。

相关文章:

阿里云 Serverless 助力海牙湾构建弹性、高效、智能的 AI 数字化平台

作者:赵世振、十眠、修省 “通过阿里云 Serverless 架构,我们成功解决了弹性能力不足、资源浪费与运维低效的痛点。SAE 的全托管特性大幅降低技术复杂度。未来,我们将进一步探索 Serverless 与 AI 的结合,为客户提供更智能的数字…...

升级node@22后运行npm install报错 distutils not found

从node20升级到node22后,在运行 npm install 的时候报了很多 gyp 错误,其中包括 npm error npm error ModuleNotFoundError: No module named distutils。 问题原因是我在使用 brew install node22 的过程中自动把 python 升级到了 3.13。而 distutils …...

一个开源的多播放源自动采集在线影视网站

这里写自定义目录标题 欢迎使用Markdown编辑器GoFilm简介项目部署1、前置环境准备1.2 redis 配置 film-api 后端服务配置将 GoFilm 项目根目录下的 film 文件夹上传到 linux 服务器的 /opt 目录下 2. 构建运行1. docker 部署1.1 安装 docker , docker compose 环境 注意事项: 2…...

【PhysUnits】10 减一操作(sub1.rs)

一、源码 代码实现了一个类型级别的减一操作(Sub1 trait),通过Rust的类型系统在编译期完成数值减一的计算。 //! 减一操作特质实现 / Decrement operation trait implementation //! //! 提供类型级别的减一计算 / Provides type-level decrement operationuse su…...

深度检测与动态透明度控制 - 基于Babylon.js的遮挡检测实现解析

首先贴出实现代码: OcclusionFader.ts import { AbstractEngine, Material, type Behavior, type Mesh, type PBRMetallicRoughnessMaterial, type Scene } from "babylonjs/core"; import { OcclusionTester } from "../../OcclusionTester"…...

Linux下使用socat将TCP服务转为虚拟串口设备

Linux下使用socat将TCP服务转为虚拟串口设备 socat是一个强大的网络工具,可以将TCP连接转换为虚拟串口设备,这在嵌入式开发、工业控制等领域非常有用。下面详细介绍如何实现这一功能。 基本原理 socat可以通过创建伪终端(PTY)来模拟串口设备&#xff…...

docker push 报错 denied: requested access to the resource is denied

问题&#xff1a;当 docker logout -> docker login 用户登录&#xff0c;但仍然无法 docker push $ docker push <username>/nginx-custom:v1 The push refers to repository [docker.io/jagger/nginx-custom] 340e6d3ea0c7: Preparing 941dd9dd8ee4: Preparing f6…...

epub→pdf | which 在线转换??好用!!

1、PDF派&#xff08;free&quick) pdf转word_pdf转换成excel_pdf转换成ppt _纬来PDF转换器 评价&#xff1a;目前使用免费&#xff0c;转化的时候有进度条提示&#xff0c;总的来说比较快&#xff0c;50mb的文件在40秒内可以转换完成&#xff0c;推荐 2、pdfconvert(free…...

PBX、IP PBX、FXO 、FXS 、VOIP、SIP 的概念解析以及关系

PBX&#xff08;Private Branch Exchange&#xff09; 概念 &#xff1a;PBX 是专用交换机&#xff0c;是一种在企业或组织内部使用的电话交换系统。它允许内部用户之间以及内部用户与外部公共电话网络&#xff08;PSTN&#xff09;之间进行通信。例如&#xff0c;在一个大型企…...

MySQL数据高效集成到金蝶云星空的技术分享

MySQL数据集成到金蝶云星空的技术案例分享&#xff1a;SR新建调拨单内部供应商-深圳天一 在企业信息化系统中&#xff0c;数据的高效流动和准确对接是实现业务流程自动化的关键。本文将聚焦于一个具体的系统对接集成案例——将MySQL中的数据集成到金蝶云星空&#xff0c;以支持…...

git 命令之-git cherry-pick

今天得到一个通知&#xff0c;这个业务版本里面部分已经开发但还没测试的内容要新开一个分支提交&#xff0c;但是我已经有几个提交上去了&#xff0c;难道只能一个一个文件复制到新的分支吗&#xff1f;我不&#xff0c;我找到了这个git命令&#xff0c;可以解决我的困惑&…...

如何在STM32CubeMX下为STM32工程配置调试打印功能

为STM32工程配置调试打印功能 一、配置调试用的打印串口 #include <stdio.h> //标准输入输出库//1.在STM32CubeMX中打开并配置好某串口设备&#xff1b; //2.在main.c文件中添加如下代码行对输入输出重定向&#xff1b; //3.在文件开头包含stdio.h头文件。 #pragma im…...

Linux系统 - 基本概念

介绍一些Linux系统的基本概念 1 操作系统的核心—内核 “操作系统”通常包含两种不同含义。 1&#xff0e;指完整的软件包&#xff0c;这包括用来管理计算机资源的核心层软件&#xff0c;以及附带的所有标准软件工具&#xff0c;诸如命令行解释器、图形用户界面、文件操作工具…...

kerberos在无痕浏览器 获取用户信息失败 如何判断是否无痕浏览器

kerberos在无痕浏览器 获取用户信息失败 如何判断是否无痕浏览器 js 代码 其他地方用直接导入js getCurrentUserId 这是自己后端获取 域账号地址 我是成功返回200 //true普通浏览器 fasle 无痕浏览器 export const checkBrowserMode async () > {try {const response a…...

在h5端实现录音发送功能(兼容内嵌微信小程序) recorder-core

本文将通过一个实际的 Vue3 组件示例&#xff0c;带你一步步实现“按住录音&#xff0c;松开发送&#xff0c;上滑取消”的语音录制功能。 我们将使用强大且小巧的开源库 recorder-core&#xff0c;支持 MP3、WAV、AAC 等编码格式&#xff0c;兼容性较好。 &#x1f527; 项目…...

PDF电子发票数据提取至Excel

声明&#xff1a;本软件是吾爱大佬th4c3y原创&#xff0c;本人只是搬运工&#xff01; 发票识别更新记录 【2025-3-14】更新 v2.0 在字段设置中新增自定义字段&#xff08;仅在 PDF 正则式接口下生效&#xff09;&#xff0c;支持自定义正则表达式或固定字符。 自定义字段会…...

【身份证识别表格】把大量手机拍摄的身份证信息转换成EXCEL表格的数据,拍的身份证照片转成excel表格保存,基于WPF和腾讯OCR的实现方案

基于WPF和腾讯OCR的身份证照片转Excel方案 应用场景 ​​企业人事管理​​&#xff1a;新员工入职时批量录入数百份身份证信息&#xff0c;传统手动录入易出错且耗时。通过OCR自动提取姓名、身份证号等字段&#xff0c;生成结构化Excel表格&#xff0c;效率提升10倍以上。 ​​…...

FPGA高速接口 mipi lvds cameralink hdml 千兆网 sdi

mipi: https://blog.csdn.net/SDJ_success/article/details/146541776 cameralink CameraLink协议 CameraLink协议是一种专门针对机器视觉应用领域的串行通信协议&#xff0c;它使用低压差分信号(LVDS)进行数据的传输和通信。CameraLink标准是在ChannelLink标准的基础上多加了…...

Linux路径解析指南:逻辑路径 vs 实际路径详解

在 Linux 系统中&#xff0c;逻辑路径&#xff08;Logical Path&#xff09;和 实际路径&#xff08;Physical Path&#xff09;是两个不同的概念&#xff0c;主要区别在于它们如何解析文件或目录的位置。以下是详细解释&#xff1a; 目录 1. 逻辑路径&#xff08;Logical Path…...

Azure 公有云基础架构与核心服务:从基础到实践指南

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 Azure 的基础架构由多个核心组件构成&#xff0c;理解这些概念是掌握其技术框架的第一步&#xff1a; 地理区域&#xff08;Geographic R…...

【运维_日常报错解决方案_docker系列】一、docker系统不起来

今天忽然想起来哎&#xff0c;还有一台”尘封“着的服务器&#xff0c;好久没用了&#xff0c;就随便打开登了登&#xff0c;然后想看一下服务器上面还有正在跑着的容器服务吗&#xff0c;然后使用docker ps 发现报错了。 然后重启也是下面这个状态。 查看docker状态&#xf…...

C# 数组与字符串:全面解析与应用实践

在C#编程语言中&#xff0c;数组和字符串是两种最基础也是最重要的数据类型。无论是简单的控制台应用程序&#xff0c;还是复杂的企业级系统&#xff0c;数组和字符串都扮演着不可或缺的角色。本文将全面深入地探讨C#中数组和字符串的特性、使用方法、性能考量以及实际应用场景…...

前端vue中使用signalr

一、引入SignalR库 使用NPM引入SignalR库 npm install @microsoft/signalrJs文件中引入 import * as signalR from @microsoft/signalr;二、初始化连接 这一步需要指定SignalR Hub的URL。 const connection = new signalR.HubConnectionBuilder().withUrl("https://y…...

Stable Diffusion底模对应的VAE推荐

以下是主流Stable Diffusion底模对应的VAE推荐表格&#xff1a; 底模版本推荐VAE类型说明SD1.5SD1.5专用VAE通常使用vae-ft-mse-840000-ema-pruned.safetensorsSD2.0SD1.5兼容VAE或SD2专用VAE部分SD2模型需配套512-ema-only.vae.ptSD3内置VAESD3系列模型通常自带集成VAE无需额…...

centos7.5安装kubernetes1.25.0

centos7.5安装kubernetes centos7.5kubernetes1&#xff09;准备阶段准备2台虚拟机配置静态IP修改主机名桥接设置配置阿里云的repo源配置k8s切国际源配置时间同步安装基础软件包 2)安装containerd服务安装配置开启启动 3)安装k8s4)安装kubersphere下载helm安装包解压将helm配置…...

‌AT2659S射频前端芯片技术解析:L1频段低噪声高增益GNSS信号放大

以下是关于‌AT2659S L1频段卫星导航射频前端芯片‌的客观描述&#xff0c;严格基于用户提供的原始信息&#xff0c;采用分享式表述&#xff0c;保持参数和核心内容不变&#xff1a; AT2659S芯片概述‌ AT2659S是一款基于SiGe工艺的射频前端芯片&#xff0c;专为L1频段&#…...

ROS2学习(15)------ROS2 TF2 机器人坐标系管理器

操作系统&#xff1a;ubuntu22.04 IDE:Visual Studio Code 编程语言&#xff1a;C11 ROS版本&#xff1a;2 在 ROS 2 中&#xff0c;TF2&#xff08;Transform Library, v2&#xff09; 是一个非常核心的工具库&#xff0c;用于管理多个坐标系之间的 变换关系&#xff08;tran…...

每日c/c++题 备战蓝桥杯(洛谷P3382 三分法求极值详解)

洛谷P3382 三分法求极值详解 题目描述 P3382 三分法 要求在给定区间内寻找一个多项式函数的最大值点。题目保证函数在区间内先严格递增后严格递减&#xff08;单峰函数&#xff09;&#xff0c;适合使用三分法求解。 算法原理 三分法核心思想 对于单峰函数&#xff0c;在区…...

Vue+css实现扫描动画效果(使用@keyframes scan)

实现效果 扫描效果 参考链接 MDN Web Docs: CSS Animations 关键代码 示例代码 <div class"scanner-container"><div class"scanner-line"></div><div class"scanner-icon">&#x1f4f7;</div><p>Scan m…...

Windows 配置 ssh 秘钥登录 Ubuntu

在 Windows 上推送 SSH 公钥到远程服务器&#xff08;类似于 Linux 上的 ssh-copy-id&#xff09;可以通过以下几种方法实现&#xff1a; ** 手动复制公钥内容** 查看本地公钥内容&#xff1a;type $env:USERPROFILE\.ssh\id_rsa.pub登录远程服务器&#xff0c;将公钥内容粘贴…...