首页 > 其他分享 >让 sdk 包静默升级的 SAO 操作,你见过几种?

让 sdk 包静默升级的 SAO 操作,你见过几种?

时间:2024-01-04 21:01:19浏览次数:44  
标签:SAO 方式 升级 静默 snapshot 替换 sdk

拓展阅读

让 sdk 包静默升级的 SAO 操作,你见过几种?

业务背景

有时候为业务方提供了基础的 sdk 包,为了保证稳定性,一般都是 release 包。

但是每一次升级都非常痛苦,也不可能写一个一步到位的 jar 包,因为业务一直在变化。

那有什么方式,让 sdk 包静默升级呢?

今天学习到一个骚操作,和大家分享一下。

骚操作

方式1-snapshot

以 java 的 maven 包管理为例,如果使用 snapshot,那么就可以随时方便的升级包内容。

优点

非常简单,maven 天然支持、

缺点

  • 包信息不够稳定,一般为了追求生产的稳定性,都会要求去 snapshot。

  • 升级失败,不兼容等,没有回滚的余地。

方式2-nexus 等内部仓库直接替换

方式:直接替换指定版本的仓库中的包。这种方式的核心和上面类似。只不过是看起来不是 snapshot,但是依然无法保障安全。

方式3-shell 脚本结合 CI

方式:使用 shell 脚本,在升级的时候,先备份,再替换。

流程:一般结合 ci 流水线使用,部署打包的时候替换包版本到指定版本,相比较而言更加灵活,也有回旋的余地。

缺点:要求比较多,比较麻烦。且要求应用必须通过 ci 流水线部署,否则就会被绕过。

注意点

1)需要保证 jar 版本之间的向前兼容性,避免升级导致问题。

2)应用环境比较复杂,可能会出问题。所以一定要逐步的升级,让用户测试环境经过验证。

3)提前通知用户,让用户知道这个事情。而且允许用户不做升级操作。

小结

这种方式给我的感觉是无可奈何,但是又非常巧妙。

上一次有这种感觉的,还是运维怕磁盘爆,预留 500MB 放一个垃圾文件,磁盘满了直接移除,快速解决问题。

你在日常工作中,见到过哪些 SAO 操作?

标签:SAO,方式,升级,静默,snapshot,替换,sdk
From: https://blog.51cto.com/u_9250070/9104964

相关文章

  • 使用OHOS SDK构建filament
    参照OHOSIDE和SDK的安装方法配置好开发环境。从gitee下载源码。执行如下命令:gitclonehttps://gitee.com/oh-graphics/filament.git-bv1.32.1-ohos构建过程分为两步,先构建Windows平台的工具链,然后再构建OHOS平台的库文件。Windows平台进入源码所在的目录,创建批处理文件......
  • 使用vcpkg和OHOS SDK构建开源软件
    安装OHOSSDK参照OHOSIDE和SDK的安装方法,安装构建工具。创建用户环境变量OHOS_NDK_HOME,指向OHOSSDK的安装路径,比如D:\Tools\Huawei\OHOS\SDK\9。构建vcpkg.exe下载定制过的vcpkg-tool项目的代码,执行如下命令:gitclonehttps://gitee.com/oh-graphics/vcpkg-tool.git-boh-......
  • OHOS IDE和SDK的安装方法
    参照OpenHarmony应用开发环境安装流程,下载安装OHOS的IDE,过程中需要全程联网。IDE,安装至D:\Tools\Huawei\DevEcoStudio。IDE安装成功之后,按照提示下载安装HOS和OHOS的SDK。nodejs,安装至D:\Tools\Huawei\nodejs。HOS的SDK,安装至D:\Tools\Huawei\HOS\SDK。OHOS的SDK,安装至D:\Too......
  • 开发一个简单易用的SDK的详细步骤(超详细,超适用)
    开发一个简单易用的SDK的详细步骤创建starter步骤1.新建一个springboot初始化项目 2.添加依赖,Lombok,SpringConfigurationProcessorSpringConfigurationProcessor的作用是自动生成代码提示 3.修改pom文件的版本号,并删除build 4.删除原本自动创建的主类,新......
  • 安装 .NET7 sdk
    CentosLinux安装.NET之前,请运行以下命令,将Microsoft包签名密钥添加到受信任密钥列表,并添加Microsoft包存储库。打开终端并运行以下命令:sudorpm-Uvhhttps://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm查找可安装包yumlistdotnet*安装SD......
  • 海康威视WebSDK_V3.3.0 集成vue2项目避坑+解决方案
    最近新需求项目集成WebSDK_V3.3.0的视频插件,开发过程中遇到了一些问题,如下:无法正确引入插件/InitPlugin报错使用文档中写的I_DestroyPlugin报错并且再次Init插件后无法正常播放,报错如下:如果你也有类似问题请往下看首先开发包如下:1.无法正确引入插件/InitPlugin报错首......
  • 私有云 SDK 集成后数据库加密、解密失败、崩溃
    问题原因私有云IMLib提供了数据库加密功能,并且其中包含了一份sqlite3的源码,所以使用私有云IM库的项目中就不能再引入其它sqlite库了,引用系统的或者手动加入的都可能会造成异常解决方案在Xcode中查看对应TARGETS的BuildPhases→LinkBinaryWithLibraries下是否有......
  • Azure Machine Learning的API和SDK:实现高效开发
    1.背景介绍AzureMachineLearning是一个云端服务,可以帮助数据科学家和机器学习工程师更快地构建、训练和部署机器学习模型。它提供了一套可扩展的工具和API,以便开发人员可以轻松地将机器学习功能集成到其他应用程序中。在本文中,我们将深入了解AzureMachineLearning的API和SDK,以......
  • 安防视频管理平台EasyCVR v3.5新增宇视SDK接入
    EasyCVR安防系统采用开放式网络架构,在网络通信方面,可支持4G、5G、WiFi、有线等方式进行视频的接入与传输、处理和分发。平台能在局域网、公网、专网等复杂的网络环境中,将场景中分散的海量网络监控设备进行统一接入与汇聚管理,并能提供实时远程视频监控、视频录像、录像回放与存储、......
  • 解决Android sdk无法下载的问题
    android  SDK Manager下载:https://www.androiddevtools.cn/#android-sdk_r24.4.1-windows.zip 解压后有:SDKManager.exe(参考https://blog.csdn.net/m0_67695717/article/details/131918276) 由于android官网在国内无法正常访问,在安装androidsdk时经常会出现http://dl.......