本周系统设计复习:
- 系统设计很难 - 直到你知道权衡,第 2 部分
- REST API 设计最佳实践速查表
- 30 个常用 AWS 服务
- 大型语言模型术语表
- ByteByteGo 招聘
REST API 设计最佳实践
设计良好的 API 表现一致、可预测增长无摩擦。一些最佳实践包括:
1. 面向资源的路径和正确使用 HTTP 动词
帮助 API 与标准工具对齐。
2. 使用适当的 API 版本控制方法
3. 生成 API 响应时使用标准错误代码
4. API 应该是幂等的
它们通过使重复请求产生相同结果来确保安全重试,特别是对于 POST 操作。
5. 幂等键允许客户端安全地去重有副作用的操作
6. API 应支持分页
以防止性能瓶颈和负载膨胀。一些常见分页策略是基于偏移、基于游标和基于键集。
7. API 安全对设计良好的 API 是强制性的
使用适当的认证和授权与 API,使用 API 密钥、JWT、OAuth2 和其他机制。HTTPS 也是生产环境中 API 的必备。
30 个常用 AWS 服务
我们将它们按类别分组并了解它们的作用。
计算服务
- Amazon EC2:云中的虚拟服务器
- AWS Lambda:用于事件驱动工作负载的无服务器函数
- Amazon ECS:托管容器编排
- Amazon EKS:Kubernetes 集群管理服务
- AWS Fargate:容器的无服务器计算
存储服务
- Amazon S3:可扩展安全对象存储
- Amazon EBS:EC2 实例的块存储
- Amazon FSx:完全托管的文件存储
- AWS Backup:集中备份自动化
- Amazon Glacier:备份的归档冷存储
数据库服务
- Amazon RDS:托管关系数据库服务
- Amazon DynamoDB:低延迟 NoSQL 数据库
- Amazon Aurora:高性能云原生数据库
- Amazon Redshift:可扩展数据仓库解决方案
- Amazon Elasticache:使用 Redis/Memcached 的内存缓存
- Amazon DocumentDB:NoSQL 文档数据库(MongoDB 兼容)
- Amazon Keyspaces:托管 Cassandra 数据库服务
网络和安全
- Amazon VPC:安全云网络
- AWS CloudFront:内容分发网络
- AWS Route53:可扩展域名系统(DNS)
- AWS WAF:保护 Web 应用免受攻击
- AWS Shield:AWS 工作负载的 DDoS 保护
AI 和机器学习
- Amazon SageMaker:构建、训练和部署 ML 模型
- AWS Rekognition:使用 AI 进行图像和视频分析
- AWS Textract:从扫描文档中提取文本
- Amazon Comprehend:AI 驱动的自然语言处理
监控和 DevOps
- Amazon CloudWatch:AWS 性能监控和警报
- AWS X-Ray:应用分布式追踪
- AWS CodePipeline:部署的 CI/CD 自动化
- AWS CloudFormation - 基础设施即代码(IaC)
大型语言模型术语表
此术语表可分为高级类别:
模型
包括模型类型,如基础、指令微调、多模态、推理和小型语言模型。
训练 LLM
训练从预训练 RLHF、DPO 和合成数据开始。微调通过数据集、检查点、LoRA/QLoRA、护栏和参数调整增加控制。
提示
提示驱动模型如何使用用户/系统提示、思维链、少样本/零样本学习进行响应。提示调度和大上下文窗口帮助塑造更精确的多轮对话。
推理
这是模型如何生成响应。关键因素包括温度、最大令牌、种子和延迟。幻觉是一个常见问题,模型编造听起来真实的东西。
检索增强生成
RAG 通过获取真实世界数据提高准确性。它使用检索、语义搜索、块、嵌入和向量数据库。重新排序和索引确保最佳答案浮现,而不仅仅是最可能的答案。
本文为学习目的的个人翻译,译文仅供参考。
原文链接:EP161: A Cheatsheet on REST API Design Best Practices。
版权归原作者或原刊登方所有。本文为非官方译本;如有不妥,请联系删除。