一、项目名称:API 网关
项目描述:
API网关系统用于统一管理RPC(Dubbo)通信接口,通过协议解析和泛化调用统一对外提供HTTP服务的系统。这套系统是微服务架构设计,分为核心通信、启动引擎、注册中心、管理平台以及上报接口服务。这套API网关也是随着对公司传统庞大的单体应用(All in one)拆分为众多的微服务(Microservice)以后,所引入的统一通信管理系统。用于运行在外部HTTP请求与内部RPC服务之间的一个流量入口,实现对外部请求的协议转换、参数校验、鉴权、切量、熔断、限流、监控、风控等各类共性的通用服务。
系统架构:微服务架构设计、SpringBoot Starter 组件设计、DDD 领域驱动设计
核心技术:SpringBoot、SpringBoot Starter、Netty、Nginx、Shiro、Jwt、Redis、RateLimiter
个人职责:
1. 构建 API 网关整体核心架构分层设计,拆分出核心通信、服务助手、启动引擎、注册中心、上报服务、管理后台,这样6个工程模块。便于后续的高效迭代和维护工作。
2. 分治处理会话流程,将复杂的会话流程划分为多个阶段,以提高处理效率。
3. 将连接(RPC\HTTP\其他)抽象为数据源,为数据的读取和写入提供支持。
4. 实现HTTP请求参数解析,确保请求参数的正确处理。
5. 引入执行器封装服务调用,提供对各种服务的调用支持。
6. 集成权限认证组件(Shiro+Jwt),确保请求的合法性和安全性;实现网关会话鉴权处理,为会话的安全管理提供支持。
7. 实现网络通信配置提取,将网络通信的配置信息抽象为可配置的模块,提高配置的灵活性。
8. 设计并实现服务发现组件搭建和注册网关连接、服务配置拉取和组件使用验证、核心通信组件管理和处理服务映射、容器关闭监听和异常管理、订阅服务注册消息驱动网关映射、网关Nginx负载模型配置、动态刷新网关Nginx负载均衡配置和实现网关算力节点动态负载功能。
二、项目名称:ES-ORM 框架开发
项目描述:
开发ES-ORM 框架,降低研发使用ES 数据查询硬编码方式的维护和迭代成本。通过ORM 框架对XML 和注解配置的方式,解析和映射语句处理器,代理IESDAO 接口为具体的处理对象,并把对象注册到Spring Bean 容器中进行统一管理和使用,最终完成ORM 框架的数据查询和封装操作。
系统架构:技术迁移ORM 开发到ES 使用上,建设SpringBoot Starter
核心技术:SpringBoot、ES、Mybatis、dom4j、x-pack-jdbc
个人职责:
1. 负责组内的脚手架和提效工具的建设,对系统中通用共性的功能进行摘取凝练成统一的组件进行使用。这其中不只包括ES-ORM框架,还包括缓存组件、秒杀组件、服务治理、全链路监控等。
2. 对ES-ORM 框架功能模块进行拆解和实现,分为;解析入口、数据源、代理层、绑定层、执行模块、异常处理、缓存服务等。
3. 分阶段功能验证和使用,逐步本地化,将内部的服务通过SPI 的机制进行包装整合,允许组内其他场景诉求的扩展。