关于服务
翻译我是一名在 dotnet 平台和 C# 语言上的后端开发者,我设计的服务器系统是可以真正依赖的。我的大部分工作是 ASP NET Core 上的 web API:整洁的 REST 或 gRPC 端点,正确的身份验证和授权,验证,结构化日志记录和版本控制。一切都被组装得如此稳定,以便合同保持稳定,实施可以平稳演变。我考虑的是层和边界,而不是一堆控制器,因此代码在发布几个月后仍然可读,新功能的集成不会破坏已经工作的部分。
在数据方面,我依赖于 Entity Framework Core,但从不将其视为黑箱。我编写高效的查询,关注 N+1 问题,仔细准备迁移,并在必要时降级到原始 SQL 或存储过程,当查询规划器需要坚定的手时。当一个服务变得不足时,我将责任拆分为通过消息队列或设计良好的网关进行通信的微服务,在合理的地方添加缓存,并通过实际指标监控延迟和吞吐量,而不是猜测。后台任务、调度程序和长期运行的进程是同一学科的一部分。
集成是我工作的重要部分:支付提供商、CRM、存储、电子邮件和外部 API,包装在具有重试、超时和断路器的弹性客户端中,以便一个不稳定的依赖项不会使整个系统崩溃。我编写单元和集成测试,将服务打包在容器中,并提供您的团队可以使用的文档。无论您是从头开始的新项目,还是需要现代化的老旧代码库,我都会将其从架构转变为在监控下部署的服务。
— ASP NET Core 上的 Web API (REST 和 gRPC)
— Entity Framework Core,SQL 优化和迁移
— 微服务、消息队列和 API 网关
— 身份验证、授权和 JWT 安全
— 与支付和外部服务的集成,弹性客户端
— 单元和集成测试,Docker,CI
在数据方面,我依赖于 Entity Framework Core,但从不将其视为黑箱。我编写高效的查询,关注 N+1 问题,仔细准备迁移,并在必要时降级到原始 SQL 或存储过程,当查询规划器需要坚定的手时。当一个服务变得不足时,我将责任拆分为通过消息队列或设计良好的网关进行通信的微服务,在合理的地方添加缓存,并通过实际指标监控延迟和吞吐量,而不是猜测。后台任务、调度程序和长期运行的进程是同一学科的一部分。
集成是我工作的重要部分:支付提供商、CRM、存储、电子邮件和外部 API,包装在具有重试、超时和断路器的弹性客户端中,以便一个不稳定的依赖项不会使整个系统崩溃。我编写单元和集成测试,将服务打包在容器中,并提供您的团队可以使用的文档。无论您是从头开始的新项目,还是需要现代化的老旧代码库,我都会将其从架构转变为在监控下部署的服务。
— ASP NET Core 上的 Web API (REST 和 gRPC)
— Entity Framework Core,SQL 优化和迁移
— 微服务、消息队列和 API 网关
— 身份验证、授权和 JWT 安全
— 与支付和外部服务的集成,弹性客户端
— 单元和集成测试,Docker,CI