最近用阿里云的函数计算部署 stable-diffusion 玩,发现竟然可以挂载 nas ,所以它就能实现数据持久化。 (题外话,跑 stable-diffusion 并不便宜)
在程序的的访问量少的情况下,成本会低得离谱,要比直接部署在 ECS 服务器上便宜得多。
昨天试着跑了几个程序:
nas 文件存储服务,也是按量付费的,在占用不多的情况下,会被抹零。我目前是 500 多 M 的大小,每小时费用都是 0 元。
所以,如果程序只是间歇性的需要使用,不需要提交大文件,价格就可以很低。可以用来部署 在线备忘录、git 仓库、密码管理器、webhook 。
缺点是可能会破产。放在公网上公开访问,如果被刷流量,账单估计很难看,这个就不太可控了。
但是如果在域名不对外公开的情况下,只部署一些自用的服务,这个应该是最不花钱的方案了。
1
woooooOOOO 364 天前
云函数是支持 GPU 的吗?
|
2
woooooOOOO 364 天前
@woooooOOOO 是不是可以搞个模型调用集合
|
3
whileFalse 364 天前
我理解 sqllite 几乎没有扩展性,并发到了一定程度还是要换正经的 DB/nosql 。
把“玩 lambda”本身当目的还不错,真想用还是算了 |
4
cdlnls OP @woooooOOOO 是的,现在是支持 GPU
@whileFalse 确实没什么扩展性,但是单实例并发不高的情况下还是可以用的。现在主要是看到还可以挂载自己磁盘,数据能持久化,可以玩的就比纯“lambda"多一点了。 |
5
Conantv2 364 天前 2
云函数很适合帮非交互式产品剥离很少用到的用户交互功能,比如企业网站的咨询表单、应用的用户反馈、博客的评论框,如果把这些挪到云函数,服务器本身就可以做到非交互式,提升一个安全等级。
|
6
Bingchunmoli 364 天前 via Android
还有个问题,用的流量上来请求数和流量带宽是不是单独计费的
|
7
caomingjun 364 天前 via Android
gitea 还能挂云函数上?有教程吗?
|
8
coolcoffee 364 天前 1
云函数目前的商业模式还是比较鸡肋。小客户群体用量少,云厂商赚不到什么钱就开始各种改规则;大客户用量大,发现还不如服务器包月划算。
|
9
perfectlife 364 天前
多说一句 个人感觉 用函数计算部署服务可维护性比较差,数量多了维护起来太累了
|
10
laminux29 364 天前
不可维护的玩意,真有人敢用?
|
11
cdlnls OP |
12
cdlnls OP @caomingjun 基本上部署项目,需要用到数据持久化时,设置 NAS 挂载数据目录就行。 所以这里 gitea 部署的时候只要把 NAS 挂载到 gitea 的数据目录就可以了。
|
13
woooooOOOO 364 天前
我试了一下,部署了一个图片转动漫风格的模型,总是生成失败,5 次成功一次的感觉
|
14
caomingjun 364 天前
@cdlnls 但是 gitea 不是需要持续运行的吗,比如内部有很多定时任务的( actions, mirroring, ...)。直接 Docker 部署居然能用?
|
15
joyanhui 364 天前
@caomingjun 我这几天也在测试阿里云的 servless,确实你说的这个问题很难受。
golang 的协程 、定时任务,基本没法用。 如果选择保留实例,费用就又上来了。而且保留实例虽然能保证 cpu 不会冻结,但是新换起的弹性实例是没法不冻结的。依旧会导致协程被冻结。 有一些后台功能调整代码可以实现比如每次响应的时候用检查时间戳的方法来触发某些不是很严格的定时任务,有一些就没办法搞定了。 |
16
cdlnls OP @caomingjun 异步的任务都处理不了
|
17
keepRun 364 天前 via Android 2
被盗刷问题可以应该可以通过鉴权解决吧,比如套个 cdn ,根据生成的 sign 检验,或者让 cdn 回源鉴权服务器来判断是否允许访问,阿里云都在 cdn 配置里给出了解决方案,建议仔细研究下,再配合 cdn 的云监控的下行流量告警、带宽封顶规则,就解决了盗刷问题。
|
18
lyc8503 364 天前
个人用起来很方便, 随便写的代码就可以发布, 还不用刻意维护, 用量小几乎不要钱(以前还是有免费额度的, 现在没了)
不过对大型应用很不友好了, 适配 serverless 开发成本高, 迁移困难, 加上云函数在用量大时价格大于 ECS. 再者难以确定的预算可能也是个问题... |
19
ibegyourpardon 364 天前 4
作为主功能来说确实不是很适合,但作为非主业务的补充,一些边缘化的事情,写进主单体或者部署个微服务反而头疼,如果正好用量占比又不大,云函数我觉得非常合适,我自己就有大概二三十个类似的云函数。
它们有一些共同特征,本身逻辑简单,没太多状态,放进哪个仓库或者服务都觉得不是很符合语义或者模块划分,单起个又恶心,这个云函数的服务本身甚至可有可无,也许只是个实验特性,这一类我现在优先会选择用个简单的云函数快速跑起来,先满足了业务需求再说。 当然云函数也有一些问题,本身写起来如果依赖的东西多,放云函数里跑限制一堆,很麻烦,数量也很容易暴涨。但数量保障我觉得就是没规划好,说明不是一些适合放到这里面的服务。 我大概二三十个,有的一两年前的我都快忘了代码了,真要更新迭代我十有八九不会去修改这个云函数,而是去直接快速重写一个,很大可能一天内就搞定了。这也是我会把云函数用的地方,有一些属于不需要长期更新迭代,但会长期使用的轻量级业务,我都会扔进去。 而一个足够大型的系统,十有八九总能找到这样一些类似的边缘的业务。当然要不要上云函数那是见仁见智。 我这周才刚又写了一个近似于采集系统的东西,非典型业务,不适合抽象起来放进现有架构,又急需,以后又基本没什么更新,用量不大,一天目测就几百次调用,这种我就是一天写完,一天测试,丢上去完事。 过几个月也许有迭代了再说,大迭代就重写拉倒。 |
20
huyujievip 363 天前 via iPhone
@joyanhui 云函数主打无状态服务呀,你这起点就错了,强人所难
|
21
snylonue 363 天前
sd 跑一张图大概多少钱
|
22
nananqujava 363 天前
有个缺点是如果用 docker 的方式冷启动很慢, 保留实例又贵
|
23
joyanhui 363 天前 via Android
@huyujievip 额,但是异步完全不能用,是没想到的
|
24
AItsuki 363 天前
|
25
greensea 363 天前
好像有点贵? 50 元的资源包,包含 50 万 GB*秒,等于 138.88GB*小时,也就是 0.36 元/GB*小时。如果用一个 8G 显存的话,每小时就要两块多钱,一个月下来就上千块钱了。
但是我没看到它的 GPU 规格,不知道速度如何,如果速度足够快的话可以考虑,否则还不如买张显卡丢机房里面 |
26
Rehtt 362 天前
@whileFalse sqlite 不能并发写入,但做单体应用数据库还是可以的
|
27
Rehtt 362 天前
stable-diffusion docker 冷启动太慢了
|
28
zealotxxxx 362 天前
云函数其实你们可以接入 MongoDB 。我曾经一个超大流量项目用过,性能完全扛的住。但是吧,维护性就比较 emmm 了。后期云函数破 200 个了,简直维护不动
|
29
zealotxxxx 362 天前
异步可以通过 kafka 之类的队列来解决
|
30
cp19890714 362 天前
函数计算能省钱的场景, 非常非常有限.
|
31
wanniwa 362 天前
公司一堆机器人就搞到云函数了,成本降了非常多
|
32
IdJoel 362 天前
额,我上个单位全部业务都上函数云计算了。。。上面那些人说的缺点其实现在完全都解决掉了,而且极其省钱。。。
1.测试环境基本完全弹性,省了一大笔钱 2.干掉了负载均衡,函数云计算自带,服务并没有拆分,打包成 docker 直接部署的,维护根本没压力 3.预留实例,基本没有冷启动的问题,还可以根据时间或者请求数量动态伸缩,多少人也不怕服务器炸了 4.原来用过 k8s 一套,基础服务就干了不少钱,还得有专门的人维护,函数云计算在基本做到同样功能的情况下节省了各种基础服务的费用 5.数据库也有弹性的啊,闲时成本并不高 6.我们是 PHP ,冷启动也很快,🦊🦊 |
33
IdJoel 362 天前
但是真的不建议用,这玩意用多了,第一会绑死在阿里云上没办法迁移,第二就是会失业
|
34
cdlnls OP @IdJoel 昨天看了一下默认的 runtime ,迁移的话,大概也就是重新打包个镜像的事情。
只要绑定了阿里云提供的 SDK ,用上了就等于绑定了,才是真无法迁移。这种只是提供计算资源的服务,迁移起来问题感觉不大。 现在已经失业了。。。 |
35
ashuai 362 天前
用了很久了,跑 http 超省,本来跑了个服务在上面,发现费用不比 ecs 便宜。
然后买了台 1k 一年的 2c4g ecs ,把服务迁过去了,http 继续跑在 fc 。 免运维的弹性伸缩,谁用谁知道 |
36
IdJoel 362 天前
@cdlnls
比如要部署的话得用他的那个 sererless cli ,总不能手动去点点点把,然后 MySQL ,如果用固定大小的话好像弹性就没啥意义了,就切换到 Mysql serverless 服务,然后每家的函数计算要求、打包方式也不同。 迁移的成本特别大。 |
40
KgM4gLtF0shViDH3 360 天前 via iPhone
sqlite 是直接跟函数一起打包吗
|
42
KgM4gLtF0shViDH3 359 天前
@cdlnls #35 还能这样,那也太舒服了,不过容器 serverless 总感觉不纯粹
|
43
KgM4gLtF0shViDH3 359 天前
serverless 有个问题,特别是国内,本身 serverless 函数很便宜,但是云数据库巨贵。。
|