关于服务
翻译我是一名无服务器开发者,我编写的后端存在于函数中,而不是需要持续监控的服务器上。我的日常工作是AWS Lambda、Google Cloud Functions和Azure Functions,通过API Gateway、HTTP触发器、队列和事件总线连接。首先我设计流程:哪个事件触发,哪个函数处理它,接下来写什么,然后我才开始编码,因为在无服务器架构中,架构就是产品。我大部分工作使用Node.js和TypeScript,在Python生态系统更合适的地方我使用Python,所有代码组织为易于阅读和低成本运行的小型单任务处理程序。
我在事件驱动的工作中最有价值。我将函数连接到SQS、SNS、EventBridge、Pub/Sub和Kafka,添加死信队列和幂等性,以便重试不会重复收费或重复记录,并通过合理的内存分配、预置并发和轻量级依赖控制冷启动。成本对我来说和延迟一样重要:当没有流量时,无服务器账单应该几乎降到零,我调整超时、批量大小和并发限制以实现这一目标。一切都作为基础设施即代码交付 — SAM、Serverless Framework、CDK或Terraform,因此堆栈是可重复的、版本化的,并且可以安全回滚。
我还处理人们只有在生产中断时才会记得的事情:结构化日志、函数之间的追踪、错误警报和限流、分阶段部署,以及最小权限的IAM,以便每个函数仅接触其实际需要的内容。无论您需要一个Webhook处理程序、一个完整的事件API,还是将一个庞大的单体迁移到一组专注的函数 — 我将带您从设计到部署和可观察的解决方案。
— AWS Lambda,Google Cloud Functions,Azure Functions
— API Gateway和HTTP触发器上的事件驱动API
— 队列和事件:SQS、SNS、EventBridge、Pub/Sub、Kafka
— 在Node.js和TypeScript中处理,适当时使用Python
— 冷启动调优、并发和成本优化
— 基础设施即代码:SAM、Serverless Framework、CDK、Terraform
— 可观察性:日志、追踪、警报、最小权限IAM
我在事件驱动的工作中最有价值。我将函数连接到SQS、SNS、EventBridge、Pub/Sub和Kafka,添加死信队列和幂等性,以便重试不会重复收费或重复记录,并通过合理的内存分配、预置并发和轻量级依赖控制冷启动。成本对我来说和延迟一样重要:当没有流量时,无服务器账单应该几乎降到零,我调整超时、批量大小和并发限制以实现这一目标。一切都作为基础设施即代码交付 — SAM、Serverless Framework、CDK或Terraform,因此堆栈是可重复的、版本化的,并且可以安全回滚。
我还处理人们只有在生产中断时才会记得的事情:结构化日志、函数之间的追踪、错误警报和限流、分阶段部署,以及最小权限的IAM,以便每个函数仅接触其实际需要的内容。无论您需要一个Webhook处理程序、一个完整的事件API,还是将一个庞大的单体迁移到一组专注的函数 — 我将带您从设计到部署和可观察的解决方案。
— AWS Lambda,Google Cloud Functions,Azure Functions
— API Gateway和HTTP触发器上的事件驱动API
— 队列和事件:SQS、SNS、EventBridge、Pub/Sub、Kafka
— 在Node.js和TypeScript中处理,适当时使用Python
— 冷启动调优、并发和成本优化
— 基础设施即代码:SAM、Serverless Framework、CDK、Terraform
— 可观察性:日志、追踪、警报、最小权限IAM