阿里巴巴|Serverless 调试大杀器:端云联调( 二 )


就可以派上用场了 ,只需要在 s.yaml (s.yaml 中定义了函数的 VPC 配置) 所在目录下执行: $ s proxied setup 该命令会和云端 VPC 环境建立安全的网络通道 , 并在本地启动应用实例 。 此时本地实例可以无缝访问云端 VPC 环境内的资源 , 比如使用内网地址访问注册中心、RDS、 Kafka 等 。 这意味着您的应用配置不需要任何改变 , 就可以在本地和云端环境内的资源交互 。与此同时 , 直接使用这个SpringBoot后端项目对应在函数计算 FC 上的自定义域名 , 流量将被路由到本地应用实例上 。 比如 , 您的前端项目部署到 FC 的函数名字是 frontend 对应的自定义域名是 frontend.abc.com 。 前端依赖的后端服务部署在 FC 上的函数名字是 backend , 对应的自定义域名是 backend.abc.com 。 这个时候 , 您直接浏览器打开 fronted.abc.com , 进行有后端请求的操作 , 流量就自动从线上路由到本地的 SpringBoot 实例 , 同时 SpringBoot 的日志在终端实时显示 , 甚至您也可以使用断点调试来自线上的流量 。假设本地启动 SpringBoot 后端项目的实例失败 , 可能的原因包括函数计算的 VPC 配置不对 对应的下游服务有白名单限制等等 。 此时您在本地就可以重现和云端环境实例相同的启动过程 , 这对排查实例启动方面的问题极其有帮助 。 如下图所示: 我们从本地实例的启动过程信息就可以明确定位到原因是 Nacos 访问不通 , 我们需要查看函数是否正确配置了 Nacos 所在的 VPC 信息 , 或者 Nacos 是否有白名单限制等等 。总结 最后我们简单用一张表格总结本地调试和端云联调的差异: Serverless 作为云计算下一年十年默认的计算范式 ,目前调试在 Serverless 最大的挑战之一 ,相比其他友商只提供本地调试的能力 , 阿里云函数计算创新性地提出了端云联调 ,并通过工具实现了很好的开发者体验 ,大大提升了Serverless 应用的开发者的开发效率和幸福感 ,人生苦短 ,我用 Serverless! 作者:西流 原文链接:http://click.aliyun.com/m/1000325902/ 本文为阿里云原创内容 , 未经允许不得转载 。