Go开发工程师2023

步骤1:Go语言基础入门和并发编程

本阶段我们快速的完成go语言的基础入门和编程思想。go语言和其他语言有比较大的区别,我们将会通过和其他语言对比方式来加深大家对go语言的理解。不论是go的接口还是go的错误处理,本阶段将为你带来不一样的体验。

步骤2:Go电商项目- 微服务基础

作为微服务的最核心内容,本阶段我们需要从0开始详细的讲解go最流行的rpc框架-grpc,本阶段中我们需要完整的体验grpc的基础功能,为后续学习打下坚实的基础

步骤3:从0到1实现完整的微服务框架

本阶段我们通过用户服务完整的实现一个完整的微服务,当然更重要的是从0开始讲解完整的微服务的各个方面以及分布式系统开发中的核心功能。从本阶段开始我们将体会到分布式系统开发面临的挑战。

步骤4:微服务实现电商系统

有了前面阶段的分布式开发的基础结构,我们需要快速应用到商品服务、订单服务、库存服务、图片服务等。 在这些服务开发中我们会面临新的挑战,如分布式锁解决库存扣减、支付回调等大量电商系统的核心。

步骤5:分布式系统核心、微服务的部署

本阶段我们将深入分布式系统开发的核心部分,这些也是面试中会被经常问到的内容,比如如何解决分布式环境下的分布式事务、面向高并发的流量,我们仍然需要解决限流、熔断等方案保障系统的高可用。

步骤6:开发规范、设计模式、单元测试

实际开发中,编程规范非常重要,开发规范涉及到的方面较多,我们需要详细的介绍各个开发流程中的规范,同时在开发中,如何写出好的容易维护的代码,对于我们来说不仅自己写代码需要懂设计模式,同时也能帮助我们看懂开源代码。

步骤7:效率工具开发

go语言推崇的是工具大于约定,开发好的代码生成工具不仅能帮我们增加代码的质量,同时会让代码更加容易维护,本阶段我们除了需要懂命令行开发神器-cobra以外,还需要开发protoc插件用于自动化代码生成

步骤8:深入底层库封装、ast代码生成方案

本阶段我们深入解析底层核心的库-log日志、errors库。好的log日志包和errors库以及错误码能让统一我们编码规范,同时还能以尽量少的代码暴露更多的信息。我们还需要进一步了解通过解析源码的方式来自动生成源码。

步骤9:自研微服务框架-gmicro

本阶段作为最核心的阶段,我们将会深入的理解微服务底层的负载均衡、服务注册发现等源码、封装出rpc服务和rest服务,同时将服务进行统一的启动和关闭管理。通过本阶段学习我们将会学习到更多更深入的内容。

步骤10:基于gmicro重构项目

本阶段我们通过前面的开发的微服务框架gmicro重构电商项目,在本阶段我们不仅会通过项目来深刻理解如何开发更好的代码以外,还会介绍更多的系统设计方面的考点,通过本阶段的学习我们将会拓宽自己的知识面以及更加从容应付面试

步骤11:基于k8s部署项目

项目部署作为系统维护非常重要的一环,如何更加方便的维护服务?怎么做才能使得发布更加规范,在本阶段我们将会更加深刻的体会到生产环境部署如何做更加规范,如何和k8s更好的融合管理。

posted @ 2024-05-24 12:05  动感超人耶  阅读(19)  评论(0)    收藏  举报