最佳体验请使用Chrome67及以上版本、火狐、Edge、Safari浏览器 ×

创建银行
创建开票

    ICHUB2.0服务优化与标准

    作者:雷建明@芯速配 阅读24 2024/09/29 07:01:42 文章 原创 公开

    目录

    ICHUB2.0服务优化与标准

    1. 前言

    1.1. Webcli120工具

    1.2. 文档readme

    1.3. 一键生成工程:示例操作

    1.4. 讲一下web工程代码编写

    1.5. web接口权限

    1.6. gorpc框架代码

    1.7. 版本发布流程与DOCKER规范

    1.8. api工程domain初始化db、es

    1.9. Goconfig、godi原理与面向对象等

    1.10. gocode一键生成

    1.11. 讲一下dbserver框架的泛型实现、以及测试用例

    1.12. EsServer聚合统计接口

    1.13. 圈复杂度分析工具与报告

    2. 工程与服务

    2.1. 工程与服务范围

    2.1.1. 分基础工程与业务工程、分基础服务与业务服务。

    2.1.2. 业务工程与业务服务以网站管理为例。

    2.1.3. JOB定时任务、一个领域一个工程与服务

    2.2. 工程与服务大纲

    2.3. 部署架构图

    2.4. 微服务标准规划服务端口

    2.5. 前端服务命名规范与网关路由:

    2.5.1. website_admin:

    2.5.2. website_web:

    2.5.3. website_mobile:

    2.5.4. 前端网关路由api

    2.6. ES&NATS性能优化

    2.6.1. 技术路线图

    2.6.2. 技术架构图

    3. 代码圈复杂度

    3.1. 圈复杂度标准

    3.2. 圈复杂度工具

    3.3. 圈复杂度报告

    4. 微服务可观察性标准

    4.1. 日志(Log)

    4.2. 指标(Metric)

    4.3. 跟踪(Trace)

    4.4. 集中监控(Monitor)

    5. 基础工程

    5.1. 跨域RPCClient工程

    5.1.1. 十二个领域汇总

    5.1.2. Git地址:

    5.1.3. 使用示例

    5.1.4. RPCClientAPI公共代码

    5.2. WEBCli120基础框架工程

    5.2.1. GO实现继承

    5.2.2. Gocmd 命令行工具

    5.2.3. Goconfig配置管理:

    5.2.4. goconfig配置管理定制

    5.2.5. Golog

    5.2.6. Godi依赖注入

    5.2.7. GoDB通用API

    5.2.8. GOES通用API

    5.2.9. Goredis

    5.2.10. goipfs

    5.2.11. Goweb WEB服务&Swagger

    5.2.12. Gonats NATS消息框架

    5.2.13. Gorpc RPC框架

    5.2.14. 性能统计客户端

    5.2.15. Gotest 测试框架

    5.3. 公用包版本TAG标准与发布

    5.3.1. 发布公共包

    5.3.2. 更新依赖包

    5.3.3. TAG管理指引

    5.3.4. 客户端连接池

    5.3.5. 基础框架测试用例集:

    6. 基础服务-定时任务可视化管理框架

    6.1. Gocron

    6.2. Xxl-job

    6.3. SchedulerX

    6.4. 大数据工作流调度系统Apache DolphinScheduler

    7. 基础服务读写分离原则

    8. 基础服务

    8.1. RuleServer:

    8.2. EsServer:

    8.3. DbServer:

    8.4. NatsServer:

    8.4.1. 总体架构

    8.4.2. 实现原理

    8.4.3. NATS消息处理

    8.5. StatServer:

    9. 基础服务客户端

    9.1. 客户端配置

    9.2. 客户端调用

    10. 代码工程简化版

    11. 服务工程实施总结

    12. WEB服务配置与权限

    12.1. WEB接口相关

    12.2. WEB权限uml

    12.3. WEB权限相关

    12.4. Swagger

    13. 业务工程一键生成

    13.1. 生成业务配置文件

    13.2. 生成业务API工程

    13.3. 生成业务GRPC工程

    13.4. 生成业务后台ADMIN工程

    13.5. 生成业务前台WEB工程

    13.6. 生成业务移动端MOBILE工程

    14. 代码工厂一键生成

    14.1. 下载

    14.2. 执行

    14.3. 结果

    15. 业务工程与服务

    15.1. 工程依赖关系

    15.2. 业务工程

    15.2.1. general-website

    15.2.2. website-api

    15.3. 业务服务

    15.3.1. website-grpc

    15.3.2. Website-admin

    15.3.3. Website-web

    15.3.4. Website-mobile

    15.4. 工程中测试用例目录

    15.4.1. 每个工程都有代码示例:

    15.4.2. 测试代码目录说明  estest 操作ES示例代码 eswebclient esserver客户端 goconfig ichubconfig配置测试用例     使用单例 var cfg=ichubconfig.FindBeanIchubConfig()  godb 数据库操作      db老的DB操作,where等示例 --不再建议使用     pagedb示例--不再建议使用     generaldb--泛型的db操作,只要传入dbmodel,               推荐使用,复杂度大为降低!  godi 依赖注入    测试用例示例,支持对象初始化,单例、多例    建议使用命令行工具 webcli120 godi all    生成ini文件, FindBeanSingleEntity()    定义单例     type SingleEntity struct {         basedto.BaseEntitySingle         ...    }    定义多例      type SingleEntity struct {         basedto.BaseEntity         ...     }  gonats     暂未启动使用  goredis     封装了gredis  jiebago分词     go语言开源库  rulewebclient 规则引擎WEB客户端  webclient 通用WEB客户端

    16. 启动服务与Swagger测试

    16.1. 启动服务

    16.2. 执行swagger

    17. WSO2 API配置

    17.1. API路由表:

    17.2. 创建API端点

    17.3. 执行导入swagger json

    18. DOCKER安装

    18.1. GIT下载代码

    18.2. 安装三个服务,生成docker镜像

    19. 代码结构定义

    19.1. 实体结构定义

    19.1.1. 良好的定义:多表关联查询或者ESINDEX实体

    19.1.2. 良好的定义:聚合根定义

    19.1.3. 不建议的定义:让人崩溃

    20. 面向接口的编程

    20.1. 定义结构体

    20.2. 初始化接口

    20.3. 接口使用

    20.4. 接口定义

    21. 编程发展史

    21.1. 面向过程(函数)-》面向对象(充血对象)-》领域驱动(领域聚合根)

    21.2. 领域驱动

    21.3. 贫血模型

    21.4. 充血模型

     


    ICHUB2.0服务优化与标准

    二〇二四年八月十二日星期一

    作者:数据架构师 raymond

    1. 前言

    本文档结合我们现有业务工程现状,重要的是结合java spring boot/spring cloud的实践借鉴,更重要的是不说我这辈子的经验绝学、但至少是最近三到五年的实践总结,你可能看到了一些代码、实际是设计,是设计+实践,我毫无保留的共享出来,虽技术比较老套、但你在别的公司至少三五年有可能进化到此。

    我认为GO是比较好的语言,除了GO框架不够成熟稳定统一外,go语言挺好、大家放心,go入门容易、GO可应付大部分应用场景,我的理念倡导是设计+实践、借鉴; 领域驱动设计、测试驱动开发,更为重要的是测试驱动学习; 测试驱动是高级程序员和架构师的必由之路。

    本文还不是标准,只是参考、欢迎大家多提意见、在实践中丰富我们的技术构架与技术生态,虽然我们是业务公司,但也能在业务实践中提升我们的技术能力与技术框架认知。

    我倡导的框架有幸在有芯才有机会得以实现,不说业界领先、至少在应用界之前列、在实践证明可用 、在学习中证明可学习,有文档用例、是你成长道路上一本活的教科书,以后我可以写成一本书。

    本次工具与框架培训的重点:

    1.1. Webcli120工具

    1.2. 文档readme

    1.3. 一键生成工程:示例操作

    Go work简化操作工程

    1.4. 讲一下web工程代码编写

    1.5. web接口权限

    1.6. gorpc框架代码

    1.7. 版本发布流程与DOCKER规范

    1.8. api工程domain初始化db、es

    1.9. Goconfig、godi原理与面向对象等

    1.10. gocode一键生成

    1.11. 讲一下dbserver框架的泛型实现、以及测试用例

    1.12. EsServer聚合统计接口

    1.13. 圈复杂度分析工具与报告


    ICHUB2.0服务优化与标准.pdf
    声明:本网站部分内容来源于网络,版权归原权利人所有,其观点不代表本网站立场;本网站视频或图片制作权归当前商户及其作者,涉及未经授权的制作均须标记“样稿”。如内容侵犯了您相关权利,请及时通过邮箱service@ichub.com与我们联系。
     0  0

    微信扫一扫:分享

    微信里点“+”,扫一扫二维码

    便可将本文分享至朋友圈。

      
    
    
    分享
     0
      验证