(八)复习(拆分微服务)


文章目录

  • 项目地址
  • 一、Ticketing模块拆分
    • [1.1 创建web api](#1.1 创建web api)
      • [1. 添加引用](#1. 添加引用)
      • [2. 添加需要的包和配置](#2. 添加需要的包和配置)
      • [3. program.cs](#3. program.cs)
      • [4. docker-compose修改](#4. docker-compose修改)

项目地址

  • 教程作者:
  • 教程地址:
复制代码
  • 代码仓库地址:
复制代码
  • 所用到的框架和插件:

    dbt
    airflow

一、Ticketing模块拆分

1.1 创建web api

1. 添加引用

复制代码
  <ItemGroup>
    <ProjectReference Include="..\..\Modules\Ticketing\Evently.Modules.Ticketing.Infrastructure\Evently.Modules.Ticketing.Infrastructure.csproj" />
  </ItemGroup>
  • 删除program.cs里没有用的服务

2. 添加需要的包和配置

  • Ticketing的webapi和Event.api一样,直接复制粘贴

  • 将Event.api里的appsettings复制到改web api只留下自己相关的 appsettings.development.json

    {
    "ConnectionStrings": {
    "Database": "Host=evently.database;Port=5432;Database=evently;Username=postgres;Password=postgres;Include Error Detail=true",
    "Cache": "evently.redis:6379",
    "Queue": "amqp://evently-queue:5672"
    },
    "Authentication": {
    "Audience": "account",
    "TokenValidationParameters": {
    "ValidIssuers": [ "http://evently.identity:8080/realms/evently", "http://localhost:18080/realms/evently" ]
    },
    "MetadataAddress": "http://evently.identity:8080/realms/evently/.well-known/openid-configuration",
    "RequireHttpsMetadata": false
    },
    "KeyCloak": {
    "HealthUrl": "http://evently.identity:8080/health/"
    },
    "Serilog": {
    "Using": [
    "Serilog.Sinks.Console",
    "Serilog.Sinks.Seq"
    ],
    "MinimumLevel": {
    "Default": "Information",
    "Override": {
    "Microsoft": "Information",
    "Evently.Modules.Ticketing.Infrastructure.Outbox": "Warning",
    "Evently.Modules.Ticketing.Infrastructure.Inbox": "Warning"
    }
    },
    "WriteTo": [
    { "Name": "Console" },
    {
    "Name": "Seq",
    "Args": { "serverUrl": "http://evently.seq:5341" }
    }
    ],
    "Enrich": [ "FromLogContext", "WithMachineName", "WithThreadId" ],
    "Properties": {
    "Application": "Evently.Ticketing.Api"
    }
    },
    "OTEL_EXPORTER_OTLP_ENDPOINT": "http://evently.jaeger:4317"
    }

3. program.cs

  • 删除所有需要其他模块的配置

4. docker-compose修改

相关推荐
GlobalInfo1 小时前
2026年机器人多指灵巧手市场分析报告——涵盖行业调查、趋势分析与发展前景
大数据·人工智能·microsoft·微服务·机器人
zzu123zsw3 小时前
从臃肿的模板调用到声明式契约:深入 UniHttp 动态代理与多渠道生命周期扩展
java·spring boot·microsoft·unihttp
华普微HOPERF7 小时前
Matter协议架构详解:数据模型与交互模型深度解析
microsoft·架构·交互
咸咸咸虾8 小时前
Microsoft Visual Studio 历史版本与官方安装包链接汇总
ide·microsoft·visual studio
骑着蜗牛撵大象32712 小时前
558 万美元训出 671B 模型:DeepSeek-V3 算法与系统的协同拆解
分布式·算法·moe·deepseek-v3·mla·fp8训练
德迅云安全-上官13 小时前
德迅游戏盾:面向 TCP 业务的分布式云安全防护方案
分布式·tcp/ip·游戏
麻瓜code15 小时前
分布式锁演进:从一个用户下两单,到 Redisson,我改了四版
分布式·wpf
skywalk816316 小时前
hive —— 多机 AI Agent 协同的任务总线:分布式,多节点同时运行,保障不会宕机
人工智能·hive·分布式
海盗123416 小时前
微软技术日报 2026-10-29:Copilot harness 进 Foundry,云重建能拉镜像
人工智能·microsoft·机器人·aigc·copilot
一条泥憨鱼16 小时前
【RabbitMQ】高级篇
java·分布式·rabbitmq·php·ruby