你还在生产环境改代码么?函数计算版本管理(三)使用别名进行灰度发布

通过了解阿里云函数计算新功能版本管理在事件驱动模式中的使用,我们看到了别名是如何简化新版本上线的过程的。然而现实是残酷的,直接更改别名指向的版本来升级服务时,往往会出现新版本引入带来的不稳定,有没有更好的方法呢?别名的灰度发布功能该登场了。函数计算提供的别名,可以指向一个主版本和一个灰度版本,并指定灰度版本的权重。这样就可以灵活调整两个版本间的流量分布,很大限度地减少上线新版本引起的不稳定。

dark launch

如上图所示,假设我们已经有别名Prod指向稳定的版本1,此时版本2也已经发布好准备上线。我们可以采用灰度发布的方式,更改Prod别名将灰度版本设定为2,灰度百分比设置为5%。更新后Prod指向的主版本仍然为版本1,函数计算会转移5%的流量到版本2,剩余95%的流量仍然由版本1来服务。当确定版本2稳定运行后,再更新别名Prod的主版本为版本2,从而完全切换到新版本。

 

当别名的灰度发布功能被使用时,您可以通过以下三种方式来确定被调用的服务版本:

  1. 如果您为自己的服务配置了日志服务,每次函数调用,都可以查看到相关日志。日志中的“isDarkLaunch”字段表示此次调用命中的是灰度发布的版本,“externalServiceVersion”字段表示此次调用使用的具体服务版本。
  2. 每次函数调用,Context对象的Service信息中会包括版本信息,其中 “qualifier”字段表示调用函数时传入的版本信息,“versionId”表示根据qualifier解析出的具体版本号。

  3. 每次同步函数调用,响应中都包含 “x-fc-invocation-service-version” header以指示调用的服务版本。

通过别名的灰度发布功能,流量可以在不同的版本间轻松切换,让新版本的上线更安全!总结一下:

  1. 使用别名Prod指向稳定的版本1,线上的调用都通过别名来进行。
  2. 当新版本2准备上线时,将Prod的灰度版本设为版本2,权重从5%开始。
  3. 观察版本2在线上表现稳定后,更新别名Prod指向版本2。

版本管理功能文档:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用matplotlib库读取彩色图片并以灰度形式展示时,首先需要理解彩色图片包含红、绿、蓝个颜色通道,而灰度图像是单通道的,它将彩色信息转换为亮度值。以下是一个简单的步骤,通过这些步骤可以将彩色图片转换为灰度形式展示: 1. 导入matplotlib.pyplot模块,通常我们使用`plt`作为别名。 2. 使用`matplotlib.image`模块中的`imread`函数读取图片文件。 3. 将读取的彩色图片数据转换为灰度。这可以通过使用`matplotlib.colors.rgb_to_hsv`函数将RGB数据转换到HSV色彩空间,然后直接取V(Value,即亮度)通道,或者更常见的是使用`scipy.misc`(在新版本中为`imageio`)中的`rgb2gray`函数来实现。 4. 使用`imshow`函数展示灰度图片,并且可以选择使用`cmap='gray'`参数来确保图片以灰度形式展示。 下面是一个简单的代码示例: ```python import matplotlib.pyplot as plt from matplotlib.image import imread from scipy.misc import imresize import numpy as np # 读取图片 img = imread('path_to_image.jpg') # 转换为灰度 # 注意:imread可能已经将图片读取为浮点数格式,所以需要确保转换后的灰度图也是浮点数格式 gray_img = np.dot(img[...,:3], [0.2989, 0.5870, 0.1140]) # 展示图片 plt.imshow(gray_img, cmap='gray') plt.axis('off') # 不显示坐标轴 plt.show() ``` 在上述代码中,我们通过计算RGB个通道的加权和来转换为灰度图。这种方法基于人眼对不同颜色敏感度的差异。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值