首页
/ ADNC 开源项目使用教程

ADNC 开源项目使用教程

2026-01-20 01:13:02作者:蔡怀权

1. 项目介绍

ADNC(AlphaYu Distributed/Microservices Development Framework)是一个基于 .NET 平台的分布式/微服务开源框架,同时也适用于单体架构系统的开发。ADNC 提供了一系列的工具和库,帮助开发人员快速构建和部署微服务应用程序。它支持服务注册/发现、配置中心、链路跟踪、负载均衡、熔断、容错、分布式事务、分布式缓存、消息队列、RPC 调用(HTTP/gRPC)、认证授权、读写分离、日志记录等功能。

主要特点

  • 灵活性:支持经典三层和 DDD 架构开发模式。
  • 易用性:提供完善的文档和示例代码,集成了一系列主流的微服务技术栈。
  • 高可靠性:采用容器化部署、负载均衡、服务发现等技术,提高应用程序的可靠性和可伸缩性。
  • 开放性:开源项目,采用 MIT 许可证发布,用户可以自由使用、修改和分享源代码。
  • 生态圈:社区生态圈逐渐壮大,用户可以从社区获取更多资源和支持。

2. 项目快速启动

环境准备

  • .NET 5.0 SDK
  • Docker(用于运行 Redis、MySQL、RabbitMQ、MongoDB)

快速启动步骤

  1. 克隆项目

    git clone https://github.com/AlphaYu/adnc.git
    cd adnc
    
  2. 启动 Docker 容器

    docker-compose up -d
    
  3. 配置 ClientApp

    cd src/ClientApp
    npm install --registry=https://registry.npm.taobao.org
    npm run dev
    
  4. 启动 ServerApi

    cd src/ServerApi
    dotnet run
    
  5. 访问应用 打开浏览器,访问 http://localhost:5001

3. 应用案例和最佳实践

应用案例

ADNC 框架已被应用于多个实际项目中,包括但不限于:

  • 用户中心:实现了用户管理、角色管理、权限管理、菜单管理、组织架构管理。
  • 运维中心:实现了登录日志、审计日志、异常日志、字典管理、配置参数管理。
  • 客户中心:经典三层开发模式 demo。
  • 订单中心:DDD 开发模式 demo。
  • 仓储中心:DDD 开发模式 demo。

最佳实践

  • 服务拆分:根据业务功能合理拆分微服务,避免单个服务过于庞大。
  • 配置中心:使用 Consul 作为配置中心,集中管理配置文件,便于维护和更新。
  • 链路跟踪:集成 Skywalking,实现性能链路监测,帮助快速定位和解决问题。
  • 读写分离:通过 Maxscale 实现读写分离,提高数据库性能和可用性。

4. 典型生态项目

技术栈

  • Ocelot:基于 .NET 5.0 编写的开源网关。
  • Consul:配置中心、注册中心组件。
  • Refit:声明式自动类型安全的 RESTful 服务调用组件。
  • SkyAPM:Skywalking .NET 5.0 探针,性能链路监测组件。
  • Pomelo.EntityFrameworkCore.MySql:EFCore ORM 组件。
  • Dapper:轻量级 ORM 组件。
  • StackExchange.Redis:开源的 Redis 客户端 SDK。
  • RabbitMq:异步消息队列组件。
  • Polly:.NET 弹性和瞬态故障处理库。
  • FluentValidation:.NET 验证框架。
  • Maxscale:Mariadb 开发的数据库中间件。

相关项目

  • ADNC-Vue2:ADNC 的 Vue2 前端项目。
  • ADNC-Vue3:ADNC 的 Vue3 前端项目。

通过以上步骤,您可以快速启动并使用 ADNC 框架进行微服务开发。希望本教程能帮助您更好地理解和使用 ADNC 框架。

登录后查看全文
热门项目推荐
相关项目推荐