Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

io.github.shuigedeng:taotao-cloud-starter-oss-sftp

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

io.github.shuigedeng:taotao-cloud-starter-oss-sftp

taotao-cloud-starter-oss-sftp

  • 2024.09
  • Source
  • Maven
  • Socket score

Version published
Maintainers
1
Source

taotao-cloud-project

License Downloads Downloads Downloads Downloads Downloads Downloads Downloads Downloads Downloads Downloads Downloads Downloads Downloads Downloads

1. 如果您觉得有帮助,请点右上角 "Star" 支持一下谢谢

taotao-cloud (taotao云平台) 基于gradle8.10、jdk21, 支持graalvm21, 采用最新的spring 6.1.12、SpringBoot 3.3.3、SpringCloud 2023.0.3、SpringSecurity 6.3.2、Nacos 2.4.1、Mybatis-Plus 3.5.7、Redis 7等框架,开发的一款企业级微服务架构的云服务平台,

具有组件化、高性能、功能丰富的特点。代码简洁,架构清晰,组件可自由搭配,遵循SpringBoot编程思想,高度模块化和可配置化。

具备服务注册&发现、配置中心、服务限流、熔断降级、监控报警、多数据源、工作流、高亮搜索、定时任务、分布式缓存、分布式事务、分布式存储等功能,用于快速构建微服务项目。

目前支持Shell、Docker、Docker-compose、K8s、Github/Genkins ci/cd等多种部署方式,实现RBAC权限。

遵循阿里代码规范,采用restful设计风格及DDD(领域驱动设计)思想,代码简洁、架构清晰,非常适合作为基础框架使用。基于DDD(领域驱动设计)的轻量级快速开发框架,致力于企业技术架构的可沉淀和可传承,解决复杂业务场景的扩展问题

仓库的目的: 工作以来的技术总结和技术沉淀(业余时间进行开发) 仓库代码中不涉及公司任何业务代码

主要包括如下几部分

  • 微服务模块 基于spring cloud alibaba微服务基础脚手架框架,用于基础服务的集成和跟业务无关的基础技术集成, 提供大量的starters组件作为技术底层支持,同时基础框架集中统一优化中间件相关服务及使用, 提供高性能,更方便的基础服务接口及工具,完全可以在实际工作中使用

  • saas商城模块 基于微服务模块构建的前后端分离的B2B2C商城系统, 支持商家入驻支, 持分布式部署, 使用github action CI/CD持续集成, 前后端均使用kubernetes部署, 各个API独立, 管理前端使用vue3 ant-design-vue开发, 移动端使用taro taro-ui开发, ** 系统全端全部代码开源**

  • 大数据模块 集成基于hadoop、hive、dolphinscheduler的离线批量日志数据处理和分析, 用于用户行为分析、推荐系统, flink、flink cdc、flink cep、spark streaming、presto、seatunnel流式处理计算框架, tidb、doris离线数据仓库, hudi、paimon数据湖等大数据处理

  • 数仓模块 基于Doris、Piamon、Hudi的离线数仓和实时数仓(数据湖)

    • 数据源模块:业务数据写入 MySQL 数据库,生成的日志数据被写入 Kafka, rocketmq 消息队列
    • 数据采集模块:Dinky开发FlinkSQL,消费Kafka中的日志数据,并将其写入DorisPaimonHudi的在线数据存储(ODS)层。使用DolphinScheduler配置SeaTunnel任务,同步MySQL中的业务数据到Doris的ODS层。FlinkSQL/CDCKafkaMySQL采集数据,分别写入PaimonHudi的ODS层。
    • 数仓模块:遵循标准的ODS(数据存储)->DWD(数据仓库明细层)/DIM(维度数据层)->DWS(数据服务层)->ADS(应用数据存储)的四级数据分层架构。数据在DorisPaimonHudi中通过批量和实时两种调度方式流转。
    • 数据可视化:ADS层和DWS层的数据可以利用SuperSetDataRT工具进行报表和数据大屏的制作、展示
  • sass商城多端前端模块 主要使用react antd进行前后端分离开发, 集成以taro, taro-ui, react native 为主的多端合一框架。

  • python模块 主要是集成了基于django的web开发, 基于scrapy爬虫开发, homeassistant 家庭自动化框架原理的分析

总之基于spring cloud alibaba的微服务架构 hadoop hive flink flink-cdc paimon doris hudi 等大数据处理实践。旨在提供技术框架的基础能力的封装,减少开发工作,只关注业务

2. spring cloud 微服务架构图

mark

3. spring cloud 微服务分层图

mark

4. dependencies

Requires:

JAVA_VERSION >= 21 (推荐使用graalvm-jdk-21)
GRALE_VERSION >= 8.10
IDEA_VERSION >= 2024.2.0.2

Gradle:

dependencyManagement{
  imports {
    mavenBom "io.github.shuigedeng:taotao-cloud-dependencies:2024.09"
  }
}

api "io.github.shuigedeng:taotao-cloud-starter-web"

Maven:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>io.github.shuigedeng</groupId>
      <artifactId>taotao-cloud-dependencies</artifactId>
      <version>2024.09</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>


<dependencies>
    <dependency>
      <groupId>io.github.shuigedeng</groupId>
      <artifactId>taotao-cloud-starter-web</artifactId>
    </dependency>
</dependencies>

5. 核心依赖

依赖版本
Spring6.1.12
Spring Boot3.3.3
Spring Cloud2023.0.3
Spring Cloud Alibaba2023.0.1.2
Spring Cloud Tencent1.14.0-2023.0.0-RC2
Spring Cloud huawei1.11.9-2023.0.x
Seata2.0.0
Sentinel1.8.8
Spring-kafka3.2.2
Roketmq5.2.0
Spring Security6.3.2
Mybatis Plus3.5.7
Hutool6.0.0-M15
Mysql8.4.0
Querydsl5.1.0
Swagger3.0.0
Knife4j4.5.0
Redisson3.33.0
Lettuce6.3.1.RELEASE
Elasticsearch8.11.5
Xxl-job2.4.1
EasyCaptcha1.6.2
Guava33.3.0-jre
Grpc1.66.0
Arthas4.0.0
Dynamic-tp1.1.7-3.x
Elasticjob3.0.4
Powerjob5.0.1-beta
Forest1.5.36
Netty4.1.112.Final

6. 演示地址 (云服务器已到期)

移动端 ReactNative小程序H5
安卓:滔滔商城.apk
IOS:滔滔商城.app(目前暂不可用)

https://m.taotaocloud.top

7. 功能特点

  • 微服务技术框架: 前后端分离的企业级微服务架构、主要针对解决微服务和业务开发时常见的 非功能性需求 简化开发工作、提高生产率、解决通用问题
  • 主体框架:采用最新的Spring Boot 3.3.3Spring Cloud 2023.0.3Spring Cloud Alibaba 2023.0.1.2 版本进行设计
  • 统一注册:支持spring cloud alibaba Nacos作为注册中心,实现多配置、分群组、分命名空间、多业务模块的注册和发现功能
  • 统一认证:统一Oauth2认证协议,采用jwt的方式,实现统一认证,完备的RBAC权限管理、数据权限处理、网关统一鉴权、灰度发布。 支持多种登录方式,如账号密码,验证码登陆、支持支付宝、钉钉、码云、GitHub、GitLab、QQ、微信、企业微信、微博等第三方登录,微信登录,指纹登录,手势登录,手机号码登录,人脸识别登录等 优化Spring Security内部实现 ,实现API调用的统一出口和权限认证授权中心
  • 业务监控:利用Spring Boot admin监控各个独立服务的运行状态
  • 日志分析:集成kafka、elk、prometheus、loki等实时监控日志(请求日志、系统日志、数据变更日志、用户日志) 提供完善的企业微服务流量监控,日志监控能力
  • 分布式事务:集成spring cloud alibaba seata分布式事务处理
  • 分布式任务:集成xxl-job、powerjob、quartz等分布式定时任务处理
  • mvc封装:通用的 Controller、Service、Mapper、全局异常、全局序列化、反序列化规则,请求头传递、调用日志、灰度、统一配置编码解码规则等,AOP方式优雅记录操作日志、优雅缓存解决方案、防缓存击穿
  • 业务熔断:采用spring cloud alibaba Sentinel实现业务熔断处理,避免服务之间出现雪崩
  • 链路追踪:自定义traceId的方式,实现简单的链路追踪功能、集成skywalking、sleuth、zipkin链路监控
  • 内部调用:集成了FeignDubbo以及grpc等模式支持内部调用,并且可以实现无缝切换
  • 身份注入:通过注解的方式,实现用户登录信息的快速注入
  • 网关支持:支持流量控制、拉黑名单、过滤请求、灰度发布方案、防重复提交、命中缓存降级访问、网关统一鉴权等
  • 在线文档:通过接入Knife4j,实现在线API文档的查看与调试,对swagger、knife4j二次封装,实现配置即文档
  • 业务监控:利用Spring Boot Admin来监控各个独立Service的运行状态。
  • 代码生成:基于Mybatis-plus-generator自动生成代码,提升开发效率,使用代码生成器可以一键生成 Java、Vue 前后端代码、SQL 脚本、接口文档,支持单表、树表、主子表
  • 消息中心:集成消息中间件RocketMQ、kafka,对业务进行异步处理
  • 实时通信:实时通信,采用 Spring WebSocket 实现,内置 Token 身份校验,支持 WebSocket 集群
  • 业务分离:采用前后端分离的框架设计,前端采用react antd、taro脚手架快速开放
  • 多租户功能:集成Mybatis Plusjpa,实现saas多租户功能 可自定义每个租户的权限,提供透明化的多租户底层封装
  • 前端支持:采用 taro 方案,一份代码多终端适配,同时支持 APP、小程序、H5!
  • 前后端流水线支持:包含基于github、 GitLab Runner 的 kubernetes(k8s)、Docker、Shell 等执行器执行 CI/CD 流水线进行自动构建、制作 Docker 镜像、发布
  • 工作流功能:工作流使用 Flowable,支持动态表单、在线设计流程、会签 / 或签、多种任务分配方式
  • 短信和oss支持:集成阿里云、腾讯云等短信渠道,集成 MinIO、阿里云、腾讯云、七牛云等云存储服务
  • 容器化支持: 提供对常见容器化支持 Docker、docker-compose、Kubernetes、Rancher2支持 完善的微服务部署方案
  • webflux支持: lambda、stream api、webflux 的生产实践
  • 开放平台: 提供应用管理,方便第三方系统接入,支持多租户(应用隔离)
  • 组件化: 引入组件化的思想实现高内聚低耦合并且高度可配置化
  • 代码规范: 注重代码规范,严格控制包依赖

PS: 借鉴了其他开源项目

8. 模块说明

taotao-cloud-project -- 父项目
│  ├─taotao-cloud-bigdata -- 大数据模块
│  ├─taotao-cloud-cache -- 本地缓存模块
│  ├─taotao-cloud-design-partterns  -- 设计模式
│  ├─taotao-cloud-jdbcpool  -- jdbcpool模块
│  ├─taotao-cloud-microservice -- 微服务模块
│  │  ├─taotao-cloud-ai  -- ai模块
│  │  ├─taotao-cloud-bff  -- bff模块
│  │  ├─taotao-cloud-business  -- 业务模块
│  │  ├─taotao-cloud-data-sync  -- 数据同步模块
│  │  ├─taotao-cloud-data-analysis  -- 数据分析模块
│  │  ├─taotao-cloud-gateway  -- 网关模块
│  │  ├─taotao-cloud-generator  -- 代码生成模块
│  │  ├─taotao-cloud-monitor  -- 监控模块
│  │  ├─taotao-cloud-open-platform  -- 开放平台模块
│  │  ├─taotao-cloud-recommend  -- 推荐模块
│  │  ├─taotao-cloud-shell  -- shell模块
│  │  ├─taotao-cloud-xxljob  -- job模块
│  ├─taotao-cloud-mq -- 分布式消息中间件
│  ├─taotao-cloud-plugin -- 插件模块
│  ├─taotao-cloud-job -- 分布式任务调度中间件
│  ├─taotao-cloud-python -- python模块
│  ├─taotao-cloud-scala -- scala模块
│  ├─taotao-cloud-rpc -- 分布式rpc中间件
│  ├─taotao-cloud-tx -- 分布式事务中间件
│  ├─taotao-cloud-warehouse -- 数仓模块
│  │  ├─taotao-cloud-offline-warehouse  -- 离线仓库模块
│  │  ├─taotao-cloud-offline-weblog -- 离线日志分析模块
│  │  ├─taotao-cloud-realtime-datalake  -- 实时数据湖模块
│  │  ├─taotao-cloud-realtime-mall -- 实时商城数据分析模块
│  │  ├─taotao-cloud-realtime-recommend -- 实时推荐模块
│  │  ├─taotao-cloud-realtime-warehouse -- 实时数仓模块

9.开源共建

  1. 欢迎提交 pull request ,注意对应提交对应 dev 分支

  2. 欢迎提交 issue ,请写清楚遇到问题的原因、开发环境、复显步骤。

  3. 不接受功能请求issue ,功能请求可能会被直接关闭。

  4. mail: 981376577@qq.com | QQ: 981376577

10.参与贡献

开发: 目前个人独立开放

11.项目截图

调度任务中心nacos服务注册
granfana页面prometheus页面
skywalking页面sentinel页面
kibana页面zipkin页面
springadmin页面knife4j页面
swagger页面arthas页面

12.基础组件starter项目模块 (暂未开源)

+--- Project ':taotao-cloud-dependencies'
+--- Project ':taotao-cloud-starter-agent'
+--- Project ':taotao-cloud-starter-apt'
+--- Project ':taotao-cloud-starter-cache'
+--- Project ':taotao-cloud-starter-canal'
+--- Project ':taotao-cloud-starter-common'
+--- Project ':taotao-cloud-starter-core'
+--- Project ':taotao-cloud-starter-bootstrap'
+--- Project ':taotao-cloud-starter-data'
+--- Project ':taotao-cloud-starter-dingtalk'
+--- Project ':taotao-cloud-starter-dubbo'
+--- Project ':taotao-cloud-starter-grpc'
+--- Project ':taotao-cloud-starter-idempotent'
+--- Project ':taotao-cloud-starter-ip2region'
+--- Project ':taotao-cloud-starter-job'
+--- Project ':taotao-cloud-starter-limit'
+--- Project ':taotao-cloud-starter-lock'
+--- Project ':taotao-cloud-starter-logger'
+--- Project ':taotao-cloud-starter-metrics'
+--- Project ':taotao-cloud-starter-monitor'
+--- Project ':taotao-cloud-starter-mq'
+--- Project ':taotao-cloud-starter-office'
+--- Project ':taotao-cloud-starter-openai'
+--- Project ':taotao-cloud-starter-openapi'
+--- Project ':taotao-cloud-starter-openfeign'
+--- Project ':taotao-cloud-starter-oss'
+--- Project ':taotao-cloud-starter-pay'
+--- Project ':taotao-cloud-starter-prometheus'
+--- Project ':taotao-cloud-starter-retry'
+--- Project ':taotao-cloud-starter-security'
+--- Project ':taotao-cloud-starter-sms'
+--- Project ':taotao-cloud-starter-springdoc'
+--- Project ':taotao-cloud-starter-third-client'
+--- Project ':taotao-cloud-starter-tracing'
+--- Project ':taotao-cloud-starter-translation'
+--- Project ':taotao-cloud-starter-web'
+--- Project ':taotao-cloud-starter-websocket'
+--- Project ':taotao-cloud-starter-websocket-netty'
\--- Project ':taotao-cloud-starter-zookeeper'

FAQs

Package last updated on 31 Aug 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc