阿里云函数计算使用手札2

前言

时隔半年 没想到之前写的接口不够用了,需要加新的接口了.又要把云函数给拾起来. 隔了这么久 云函数也发展了好多. 现在使用起来也方便了不少.

VSCode 导出快捷键配置

这个是上次搞时候没有弄明白的.中途黑苹果重装了一次 导致全部软件清空.原先配置好的快捷键全部失效.需要重新来一次. 好在现在知道如何导出快捷键了. 以后无需再痛苦的配置一次了.

全局搜索keybindings.json

会在/Users/$your_user_name/Library/Application Support/Code/User/keybindings.json 这个目录找到配置好的文件.
直接复制粘贴百度云. 下回重装直接覆盖即可.

VSCode 使用文件夹图标

shift+cmd+p 后输入Icon 激活

没想到VSCode还挺好用. 要不是Rider用习惯了 真有心切到VSCode上来. Google了一下 这IDE也有对应的Unity插件. 主要还免费😄

VSCode编辑器整体缩放

帖子中有提到

1
2
3
4
5
6
Try playing around with a combination of the following user settings:

{
"editor.fontSize": 18,
"window.zoomLevel": 1.5,
}

这功能相当的👍🏻 . 那么问题来了 Unity 你啥时候能学学呢!!!

阿里云函数使用第三方库

在编辑器内部建立好云函数后 直接cd到相应目录 npm install xxx 即可. 这个之前好像不可以 不太确定. 因为之前也不需要第三方库支持. 目前在做七牛的云存储. 所以才用到

阿里云函数共享私有类库

这个是我之前一直特别头疼的问题. 我有N个云函数 然后每个函数之间要共享一部分Utils的代码. 我之前只能写脚本进行同步.但是使用起来超级不方便.生怕一个地方改了点什么,另外一个地方忘了改了.

这次过了这么久我特意查了一下 发现这问题居然还没解决. 后来我查了一下 npm的link功能. 原以为这个方法可行. 后来发现 想法很美好 实时很骨感..

不过看了一下link的原理 是用的mac软链接. 于是我灵机一动. 软的不行 来硬的试试? 后来一试居然可以!!!


在所有的Service的上层建立ShareCode文件夹 然后里面放入通用部分的代码
使用
ln $source_file_path $target_folder命令建立 硬链接. 注意是硬链接 不要加-s 否则无效.

后续就可以正常的修改操作+使用了.

阿里云函数使用别名进行版本管理

因为类库共享了.所以就有可能存在一个很严重的问题. 改了共享库中的部分代码 然后导致旧的Service不能用了. 这里就要用到别名了. 也就是上线后测稳定了.给当前代码打个Tag 以后一直用这个打了Tag的版本. 后面再怎么改也都不影响了.

官方文档说的有点乱 尤其是他们文档的界面和新界面还不一样. 不过功能比较简单. 自己写个Demo测一下就能明白了.

首先正常deploy函数.

第一次构建

切到版本管理 然后发布版本

发布完版本后就可以 点下方的 新建别名(上面截图的右下角) 选择一个别名. 比如Eran

Http类型的 需要切换到每个具体的函数内. 新建一个使用别名的触发器.

也就是访问的Service后面会加上 .Eran 作为别名访问.

后续更新

客户端以后一直使用带别名的URL进行访问即可. 比如后续上线后 版本有改变了.

按之前的流程发布一个新的版本. 然后切换到 别名标签下. 选择更新别名. 重新把这个别名指向新的版本即可. 客户端不用做任何改变.

这样以后即使出现共享库改错了导致旧函数无法使用,然后又手欠的给发布出去了. 也无所谓. 只要旧函数没有更新版本即可.

坚持原创技术分享,您的支持将鼓励我继续创作!