项目介绍
NetCoreKevin 是一个基于 .NET 6 搭建的跨平台 DDD(领域驱动设计)思想 WebApi 架构项目。该项目集成了多种企业级功能,包括但不限于单点登录、多缓存支持、自动任务调度、分布式系统、多租户管理、日志记录、授权与鉴权、分布式事件处理、实时通信、短信服务以及文件存储服务等。NetCoreKevin 旨在提供一个灵活、可扩展且高效的微服务架构解决方案,适用于各种规模的企业级应用开发。
应用场景
NetCoreKevin 适用于需要构建复杂、高可用、可扩展的 Web 应用或微服务架构的场景。具体包括但不限于:
企业级应用开发:需要支持多租户、高并发、数据安全的企业级应用。 微服务架构:需要服务注册与发现、分布式锁、分布式事件处理的微服务系统。 实时通信应用:需要实时推送、消息通知功能的社交、协作或监控应用。 大数据处理与分析:需要爬虫数据抓取、自动化测试、大数据处理的应用。
功能模块
NetCoreKevin 项目包含以下主要功能模块:
授权与鉴权:基于 Identity 框架的授权服务中心,支持单点登录(IDS4)。 工具类库:包含常用帮助类、扩展方法、文件流操作、图片操作等。 数据初始化:提供数据初始化的 SQL 脚本。 自动任务调度:基于 Quartz 的自动任务调度系统。 数据库仓储:数据库访问层,支持 EFCore 工作单元模式。 应用服务层:处理业务逻辑的应用服务层。 Web 相关工具:包含过滤器、中间件、全局类、基础类、服务初始化等。 API 层:提供 RESTful API 接口。 爬虫与自动化测试:基于 Selenium 的爬虫数据抓取和自动化测试服务。 缓存服务:支持多缓存模式,基于微软 IDistributedCache 开发。 分布式事件:基于 CAP 的分布式事件处理。 服务注册与发现:基于 Consul 的服务注册与发现。 跨域配置:可自定义跨域配置。 分布式锁:提供分布式锁服务。 领域事件:基于 MediatR 的领域事件处理。 文件存储服务:支持阿里云、腾讯云等云存储服务。 HTTP 客户端工厂:IHttpClientFactory 工厂实现,支持 HTTP 2.0。 IOC 容器:依赖注入容器管理。 日志服务:基于 Log4Net 的日志记录。 权限服务:根据 API 初始化配置相关权限。 实时通信:基于 SignalR 的实时通信服务。 短信服务:支持阿里云、腾讯云的短信服务。
功能特点
跨平台支持:基于 .NET 6,支持 Windows、Linux、macOS 等多平台部署。 DDD 架构:采用领域驱动设计,提高代码的可维护性和可扩展性。 微服务支持:集成服务注册与发现、分布式锁、分布式事件处理,便于构建微服务架构。 高可用性:支持多租户、负载均衡、故障转移,确保系统的高可用性。 安全性:提供授权与鉴权服务,保障数据的安全性和隐私性。 实时性:集成 SignalR 实时通信服务,支持实时数据推送和消息通知。 灵活性:模块化设计,各功能模块可独立引用和扩展。
功能演示






开源地址
https://gitee.com/netkevin-li/NetCoreKevin