@
ch2 之前调研并上线了 Lambda 的代码, 怎么跟你说的不大一样, 还是 lambda 比较特殊么. 纯讨论, 不是挑刺哈, 实在对这个领域特别感兴趣, 想多了解一些以后看有没有机会 all-in
1. go 看起来确实香, 但是作为 FaaS 想导入 function handler 时候也并不方便, 还要导入 lambda 库写 handler, 但实际体验在我这边不如可以"依赖代码隔离"以及指定某个函数名字(不用具体写入口函数)
https://docs.aws.amazon.com/lambda/latest/dg/golang-handler.html2. 前面提到依赖代码隔离, Python 那边可以放比较重的不常变的依赖(一般把依赖也打包到 zip 代码里有些浪费) 到 Layer 里面导入就行了, Java 也是可以的, 所以依赖锁到 Layer 上面, 具体代码实际就一点点, 上传流量很小, 对 go 来说上传整个编译程序反而会大了一些, 而且解释型语言调试阶段(没自动上线)在后台直接改代码就发布运行了...
3. 现在 lambda 貌似支持直接部署一个 Docker 了, 不过底层本质是不是 Docker 我不确定, 没注意到
4. JVM 看起来确实冷启动不友好, 不过据说做了各种优化, 以及预热实例相关能满足, 所以之前看到的结论是 Java 在 Serverless 领域其实并不稀少(美团那边也发了博客说 Java 实践), 冷启动以后的 Java 调用速度还是很可观的, 毕竟编译了的
5. 有关内存数据库 Redis 做持久化或者有状态这方面, 之前也是这么想来着, 不过当时看了提到需要 VPS 凑内网, 这个似乎会导致成本上升, 如果走外网, 流量又会很高, 白名单的话 IP 不固定, 所以最后不得不妥协改造成了事件驱动的. 用 Redis 有什么建议解决上面提到的问题么
6. 提到 Serverless 数据库, 以前只听说过具体不太了解, 那个 CAP 放弃的是 P 么, 这个主要卖点是快还是便宜啊? 产品化遥遥无期那还是不期待了...