08 | 运行时(下):不同语言形态下的函数在容器中是如何执行的?
静远
你好,我是静远。这节课,我们继续来看运行时的原理和实践。
在上一节课里,我跟你分享了运行时的基本理念以及不同语言下运行时的区别,并且通过 GoLang 的例子让你对运行时有了一个具象化的理解。
今天我将重点介绍后半部分:解释型语言的实现和异同。通过今天的课程,相信你会对运行时有一个从 1 到 N 的认知,并从中抽象出一套构建思路,用于自己的实战中。
Python 运行时
通过 GoLang Runtime 运行时的学习,相信你已经了解运行时需要完成的工作以及整个处理流程了。
在前面我也提到了,编译型语言的业务逻辑与依赖通常都存在着强绑定的关系,需要将运行时和用户编写的函数代码统一编译成一个二进制文件或者 Jar 包、War 包后再被执行,但解释型语言不需要。这也从一定程度上说明了很多函数计算平台只对编译型语言运行时进行开源的原因。
接下来,我以 Python 语言为例来介绍一下解释型语言的运行机制,带你进一步加深对函数计算运行时的理解。
如果你使用 Python 或者 Node.js 开发过函数计算的代码,你会发现,其实上传的文件完全不需要任何依赖,甚至两行代码就可以定义好你的函数入口,比如下面这个 Python 的案例:
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文深入介绍了不同语言形态下函数在容器中的执行方式,重点关注了解释型语言的实现和异同。以Python语言为例,详细介绍了解释型语言的运行机制,并结合阿里云函数计算FC中的实例登录功能进行了演示。通过示例代码和命令演示,展示了如何在函数代码内执行shell命令来查看运行时代码。此外,对Python运行时的核心流程进行了分析,包括服务初始化、获取请求和执行用户代码等步骤。文章还提供了分析运行时的小技巧,以及构建自己的运行时的思路。最后,鼓励读者利用所学知识构建自己的运行时,或者基于云厂商的工具和平台定义一个自己的运行时。通过具体的示例和分析,帮助读者深入了解了不同语言形态下函数在容器中的执行方式,为读者提供了一套构建思路,用于实战中的应用。文章内容丰富,适合技术人员深入学习和应用。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Serverless 进阶实战课》,新⼈⾸单¥59
《Serverless 进阶实战课》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论