From a37f74e2c4c8c0a042be8a356dd20591fe908d7a Mon Sep 17 00:00:00 2001 From: 8ga Date: Wed, 15 Apr 2026 13:58:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 52 ++++++++++++++++------------------------------------ 1 file changed, 16 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index 8ccfd54..ef03c29 100644 --- a/README.md +++ b/README.md @@ -8,8 +8,7 @@ | 技能点 | 掌握程度 | 补充 | |:-----|:-----|:-----| -| MySQL | 熟练 | B+Tree、MVCC | -| ShardingJDBC | 熟练 | 分库分表、动态数据源、多租户数据源 | +| RDBMS | 熟练 | MySQL(B+Tree、MVCC)、PostgreSQL(PostGIS、pgvector)| | Redis | 熟练 | 分布式缓存、PUB/SUB、Redis Stream、分布式锁(Redisson)| | 消息队列 | 熟练 | RocketMQ、Kafka,普通消息(广播消费、点对点消费)、定时消息、顺序消息、事务消息 | | Spring | 熟练 | AOP、JDK动态代理、Cglib、ByteBuddy、SPI、Starter、服务注册/发现、配置中心、限流、熔断、RPC、分布式事务、事件驱动模型 | @@ -33,48 +32,29 @@ ## AI Engine(2025/09 ~ 至今) -- 技术栈:Spring Cloud、Nacos、RocketMQ、Spring AI、Spring AI Alibaba、AgentScope、Milvus、NewAPI -- 模型:Qwen 2.5、Qwen 3.5、gpt-oss-120b、bge-m3、bge-reranker-v2-m3 -- 工作内容:通过 New API 统一管理本地化部署的 LLM,项目中通过 New API 提供的 OpenAI API 兼容端点接入。在 k8s 集群中使用 Helm 部署 Milvus,项目中使用 Spring AI 提供的 VectorStore 接入向量存储服务,涵盖密集、稀疏、混合、全文(基于BM25)检索。本地化部署 searxng 服务,为 AI Agent 提供 WebSearch 能力。基于 Workflow 和 Agent AS Tool 两种方案编排 AI Agent 与 Multi Agent。基于 Ubuntu24.04 镜像构建涵盖 Python、Node.js、Java 三种语言代码执行环境的容器,暴露 MCP Server 与 HTTP 端点,方便 AI Agent 以 Tool 的方式接入,安全、便捷的执行 Skills 中的脚本。协助其他同事解决调试过程中遇到的各种问题,以及代码层面与架构层面的优化工作。 +- 技术栈:Java 21、MySQL、Spring Cloud、Nacos、RocketMQ、Spring AI、Spring AI Alibaba、AgentScope、Milvus、NewAPI、Qwen 2.5、Qwen 3.5、gpt-oss-120b、bge-m3、bge-reranker-v2-m3 +- 职责:通过 New API 统一管理本地化部署的 LLM,项目中通过 New API 提供的 OpenAI API 兼容端点接入。在 k8s 集群中使用 Helm 部署 Milvus,项目中使用 Spring AI 提供的 VectorStore 接入向量存储服务,涵盖密集、稀疏、混合、全文(基于BM25)检索。本地化部署 searxng 服务,为 AI Agent 提供 WebSearch 能力。基于 Workflow 和 Agent AS Tool 两种方案编排 AI Agent 与 Multi Agent。基于 Ubuntu24.04 镜像构建涵盖 Python、Node.js、Java 三种语言代码执行环境的容器,暴露 MCP Server 与 HTTP 端点,方便 AI Agent 以 Tool 的方式接入,安全、便捷的执行 Skills 中的脚本。协助其他同事解决调试过程中遇到的各种问题,以及代码层面与架构层面的优化工作。 ## AI 数字人(2025/04 ~ 2025/07) -- 技术栈:Spring AI、JAVA 21、Ollama、百炼大模型 -- 工作内容:采购显卡、及其它配件并组装 GPU 服务器,安装操作系统和 Docker。配置 Nvidia 显卡驱动、Nvidia Container Toolkit、为 Docker 添加 GPU 运行环境。使用 Ollama 部署 Qwen3-8B、Qwen2.5-14b 模型,使用 GPUStack 部署 bge-m3、bce-reranker-base-v1 模型。使用 Docker 部署 Fun ASR、ChatTTS 模型。部署 ES 作为向量数据库使用,在项目中用 Spring AI 整合 LLM 和 ES,实现一个私域知识库聊天问答服务。协助安卓开发小伙伴做数字人技术方案选型,并解决相关问题。 +- 技术栈:Java 21、MySQL、Spring AI、Ollama、百炼大模型 +- 职责:采购显卡、及其它配件并组装 GPU 服务器,安装操作系统和 Docker。配置 Nvidia 显卡驱动、Nvidia Container Toolkit、为 Docker 添加 GPU 运行环境。使用 Ollama 部署 Qwen3-8B、Qwen2.5-14b 模型,使用 GPUStack 部署 bge-m3、bce-reranker-base-v1 模型。使用 Docker 部署 Fun ASR、ChatTTS 模型。部署 ES 作为向量数据库使用,在项目中用 Spring AI 整合 LLM 和 ES,实现一个私域知识库聊天问答服务。协助安卓开发小伙伴做数字人技术方案选型,并解决相关问题。 -## 整车集成开发平台(2023/07 ~ 2025/03) - -该项目服务于极氪汽车杭州湾工厂某工程师团队,便于管理整车开发中的部分零部件、造型色彩、设计方案,以及问题跟进、流程审批等功能。 - -- 职位:Java开发 -- 技术栈:MySQL、Redis、Kafka、Spring Boot -- 工作内容: - - 需求评审、文档和代码编写 - - 编写单元测试、问题排查及修复 - - 引入消息中间件处理异步任务,解决采用线程池但是没有持久化队列中的任务,在产生堆积的情况下,应用重启任务丢失的问题 - -## 密钥管理系统(2024/11 ~ 2025/03) - -该项目用于管理极氪汽车与谷歌waymo无人驾驶汽车合作研发的车型使用到的密钥,比如车门的门锁密钥,以及车辆中的每个ECU密钥。 - -- 职位:Java开发 -- 技术栈:MySQL、Redis、ES、Spring Boot、ShardingJDBC -- 工作内容: - - 需求评审、文档和代码编写 - - 编写单元测试、问题排查及修复 - - 引入 ShardingJDBC 使用自定义分表键,分表存储车辆ECU的密钥 - - 利用 ShardingJDBC 自定义分库键实现多租户数据源改造以及动态切换 +## VIDP(2023/07 ~ 2025/03) +- 技术栈:Java 8、MySQL 8、Redis、Kafka、Spring Boot、Spring Cloud、Feign、Sharding Proxy +- 职责:日常迭代需求评审、编写技术方案文档、排查并修复测试&生产环境中暴露的问题,通过消息中间件替代线程池处理异步任务,解决在没有优雅停机的场景下,线程池中的任务队列较大,任务堆积的情况下,应用重启/宕机造成的异步任务丢失的问题。引入 Sharding Proxy 分表存储大表数据,因实际业务场景仅通过唯一键进行查询,所以直接根据唯一键哈希取模分表存取。仅保留近一年的数据,一年的数据量增长约1亿+,分了10张表,历史数据 gzip 压缩并归档至OSS。 ## 蜂羽(2019/07 ~ 2023/05) -蜂羽是一个类似于长途运输版的货拉拉,为货主提供综合解决方案,为司机和物流公司提供诸如电子油卡、货物保险、金融等增值服务,撮合货主与运输方在平台中完成交易、履约的网络货运平台。 - -- 职位:开发组长(5人) -- 技术栈:MySQL、Redis、Rocket MQ、Seata、Spring Boot、Spring Cloud -- 工作内容: - - 技术选型、编写技术文档、单元测试 - - 服务巡检、跟踪修复生产环境中的问题 +- 技术栈:Java 8、MySQL、Redis、RocketMQ、Seata、Spring Boot、Spring Cloud、Prometheus、Grafana +- 职责: + - 日常迭代需求评审、编写技术方案文档、服务巡检、跟踪并修复生产环境中的问题、不定期组织技术分享会。 + - **架构重构,Spring MVC -> Spring Cloud**:第一版项目源码来自外包公司,随着团队成员增加、系统请求量攀升,单体架构的运维成本开始抬升,也不能满足更高效的团队协作。与领导协商后决定花3个月的时间,一边继续业务迭代,一边重构成 Spring Cloud 微服务架构,最终拆成了8个微服务,并完成了前后端分离。 + - **微服务网关**:使用 zuul 1.x、Nacos 实现请求路由、负载均衡,每个服务的负载均衡算法插件化,适应灵活多变的业务需求。 + - **统一登录/认证服务**:短信验证码、账号密码注册/登录,为网关提供鉴权服务,每个微服务的权限验证机制,仍然插件化。 + - **身份认证服务**:对接上上签、E签宝开放平台的人脸识别、实名信息验证、企业信息验证等能力,对接2个供应商是防止其中1个供应商因系统升级或不可抗力因素造成服务中断,支持故障自动切换或强制切换。将多个外部平台 API 收敛成一套内部 API,提供一个 starter 方便业务域的微服务快速接入相关能力。 + - **分布式事务**:随着微服务之间跨服务调用,不可避免的出现了多个服务之间事务一致性的问题,引入 Seata(AT模式)提供分布式事务强一致性的能力。但是 AT 模式的并发度太低,在请求量较大且无法限流的情况下(比如订单支付)同时采用 RocketMQ 的柔性事务方案,提高吞吐量。 - 集成分布式事务中间件 Seata,解决微服务中跨服务、跨库事务一致性问题 - 搭建ETL工具,通过 Canal 伪装成 MySQL 的从节点订阅 Binlog,再结合 Rocket MQ 的顺序消息推送给需要订阅数据变更的消费者 - 基于JVM内存的分布式缓存,在项目中有大量读多写少的热点数据,数据量总体规模约300MB,应用实例的节点足以应付内存开销,应用实例启动后全部加载到内存中,运行中发生数据变更,创建一条变更日志,通过 Rocket MQ 的广播消费特性,让应用集群中的每一个实例消费到变更日志