能力中台

我要开发同款
广西小宁2023年06月07日
169阅读
开发技术架构、javaspringcloud微服务

作品详情

开发环境:IDEA ++Tomcat8 + MySQL + Maven + gitlab
技术栈:SpringBoot、SpringCloud、Spring Cloud Alibaba、Security、Spring Cloud Gateway、Alibaba Nacos、Alibaba Sentinel、Spring Data Jpa、Spring Cloud OpenFeign、RestTemplate、Spring Cloud Loadbalancer、Skywalking、JetCache、 Caffeine、Kafka、Springdoc、OpenAPI、Redis、Oauth2.0、Swagger 3、Mybatis、Postgresql、Elasticsearch、Logstash、 kibana、FreeMarke、xxl-job、MongoDB、FastDFS、OCR 识别、NLP 语义分析、Tensorfow、MQTT、ADB、APKParse
项目描述:
企业能力中台,是基于技术中台的技术架构之上,封装核心检测能力引擎,并基于多租户管理和健全的服务授权机制,提供统一封装的服务能力API ,以共享服务形式沉淀核心技术能力并向客户开放检测能力,帮助企业快速、低成本进行应用产品业务构建。能力体系包含应用加固能力体系;应用源码检测能力体系;应用漏洞、病毒检测能力体系;应用隐私合规检测能力体系;应用正盗版、仿冒检测能力体系;应用内容合规检测能力体系等;涵盖Android、iOS、公众号、小程序、H5、SDK、IOT固件、鸿蒙应用等资产相关风险和合规性检测。
工作内容:
1.整体架构设计:
采用微服务技术架构,整体设计方法论采用DDD领域驱动设计,完成领域建模和微服务架构落地,RUP4+1架构设计完成中台蓝图设计和设计文档输出
2.基于Mysql+MongoDB+Es技术实现海量数据存储方案
3.MySQL数据库:
按照子服务业务垂直分库;
按照数据条数进行水平分表;
MySQL服务配置优化(连接数配置、连接超时时间、Buffer Pool缓存、Redo Log缓存);
SQL语句优化,索引优化;
基于覆盖索引+子查询方案,解决limit分页查询慢问题;
基于Mycat 实现分库分表方案,实现集群和主从读写分离架构;
基于雪花算法,实现数据库分布式ID;
4.ES接入
冷热数据分离方案,创建冷热索引,提升查询检索效率;
ES集群部署和索引优化和集群调优;
5. Redis缓存方案:
基于Redis的setnx+lua脚本+看门狗线程+ Redisson红锁机制,实现单机和集群下的分布式锁。
使用Redis的bigmap 构建布隆过滤器,解决缓存穿透问题;
基于 SpringBoot,整合JetCache缓存框架,实现本地进程缓存(Caffeine),远程分布式缓存(Redis)支持,提高API并发响应速度;
采用RDB+AOF备份机制,保障数据安全性和分布式缓存同步;
使用缓存双删策略实现Redis分布式缓存数据一致性;
基于主从机制(Master-Slave)和Sentinal哨兵机制部署集群,实现Redis的高可用和主从集群;
6.消息中间件:
使用Kafka消息队列,实现服务间的解耦和削峰填谷能力;
基于去重表的方案,使用Redis Set集合存储业务唯一性id,实现消息消费的幂等性处理,解决消息重复消费问题;
基于Kafka的ack机制,保障消息的可靠传输,解决生产、消费数据丢失问题;
基于kafka构建事件驱动架构设计(EDA),完成微服务之间领域事件的发布和订阅,实现微服务之间的数据最终一致性方案。
7.服务分流方案:
基于Nginx负载均衡技术,实现集群化服务,实现整体服务的流量分流方案,保护服务安全
8.限流方案:
在Gateway网关处,集成Sentinel限流框架,实现整体服务入口流量限制方案,在业务服务处同时实现业务服务限流,双重保障,保护服务安全
9.JVM性能调优:
利用jps、jstack、jmap、jstat、jinfo、Java VisualVM等工具分析内存、堆栈、线程等运行环境信息;
JVM参数调用,解决OOM问题;
合理选择垃圾收集器,减少GC频率和Full GC频率,减少STW的停顿时间和停顿次数;
10.基于 Logstash+Logback+Elasticsearch+kibana ,实现日志采集和分析展示
11.基于xxl-job实现检测能力引擎服务调度方案
12.MongoDB调优,索引优化
工作绩效:
1.查看sql执行计划,优化索引,升sql查询效率,每条sql平均执行时间20ms,大数据量表sql执行时间不大于100ms
2.MongoDB分布式集群部署,分片和副本集群,目前存储约8TB数据。
3.检测引擎服务接入xxl-job,每天实现100万+笔业务调度
4.架构支撑公司内部大数据平台历史存量数据5000万+款app检测
5.中台支撑腾讯应用宝应用渠道每天20万+应用检测、小米应用渠道每天15万+应用检测(在同行业中,能达到这个量的就那么几家)
6.巨人网络每天20万+应用漏洞病毒检测、天津病毒检测中心每天30万+应用漏洞病毒检测
7.支撑公司隐私合规部门、大数据部门的移动应用安全检测产品、个人隐私合规产品、移动安全全生命周期产品,移动安全大数据产品等相关SAAS产品检测能力
8.平台可用性99.99%
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论