# EarthChat **Repository Path**: flameiris/chat ## Basic Information - **Project Name**: EarthChat - **Description**: EarthChat,一个可支撑百万用户的在线聊天系统 - **Primary Language**: C# - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://chat.tokengo.top - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 58 - **Created**: 2023-12-21 - **Last Updated**: 2023-12-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Earth Chat

一个支持百万用户的Chat系统!

License: Apache-2.0 License star
## 项目介绍 基于SignalR实现的Chat聊天,支持横向扩展,以便支撑上万用户同时在线聊天。 采用DDD领域驱动设计模式,CQRS架构模式,分离读写模型,架构更清晰,并且维护成本更低。 ![Alt text](image.png) ### 后端架构设计 - ASP.NET Core 7 - PostgreSQL - Redis - [MasaFramework](https://docs.masastack.com/framework/concepts/overview) - DDD领域驱动设计模式 CQRS架构模式 - SignalR (实现对话并且使用redis支持横向扩展) ### 前端架构 - React - [Semi UI](https://semi.design/zh-CN/start/getting-started) - Axios - Vite - Avalonia ## 贡献 ## 后端环境变量配置 当环境变量为空则读取配置文件的值 | 环境变量名称 | 环境变量值 | | ----------------------- | ------------------------------------------ | | REDIS_CONNECTION_STRING | Redis连接字符串 | | SQLTYPE | 数据库类型 `sqlite`|[`pgsql`|`postgresql`] | | CONNECTION_STRING | 数据库连接字符串 | ## 交流群 ![交流群](docs/static/img/ed1d8637a5ea540308d85523bd2a9f4.png)