├── .gitignore ├── Images ├── 111 └── Structure.png ├── README.md └── src ├── .dockerignore ├── ChangFei.Client ├── ChangFei.Client.csproj └── Client │ ├── IMessageClient.cs │ └── MessageClient.cs ├── ChangFei.Console ├── ChangFei.Console.csproj ├── ClusterClientHostedService.cs ├── MessageConsoleViewer.cs ├── Program.cs └── ShellHostedService.cs ├── ChangFei.Core ├── ChangFei.Core.csproj ├── Message │ └── Message.cs └── Utilities │ └── IdHelper.cs ├── ChangFei.Gateway ├── ChangFei.Route.csproj ├── ChangFei.Route.csproj.user ├── Controllers │ ├── FriendController.cs │ ├── GroupController.cs │ └── UserController.cs ├── Dockerfile ├── Hub │ └── MessageHub.cs ├── Infrastructure │ ├── ChangFeiDataContext.cs │ ├── ChangFeiDataContextSeed.cs │ ├── HostedService │ │ └── ClusterClientHostedService.cs │ └── Repositories │ │ ├── IUserRepository.cs │ │ └── UserRepository.cs ├── Model │ ├── BaseEntity.cs │ ├── Group.cs │ └── User.cs ├── Program.cs ├── Properties │ └── launchSettings.json ├── Startup.cs ├── appsettings.Development.json └── appsettings.json ├── ChangFei.Grains ├── ChangFei.Grains.csproj ├── Grains │ ├── GroupGrain.cs │ └── UserGrain.cs ├── Repositories │ └── IMessageRepository.cs └── Stateless │ └── MessageStoreGrain.cs ├── ChangFei.Interfaces ├── ChangFei.Interfaces.csproj ├── Grains │ ├── IGroupGrain.cs │ ├── IMessageSender.cs │ ├── IMessageSubscriber.cs │ └── IUserGrain.cs ├── IMessageStoreGrain.cs ├── IMessageViewer.cs └── IReadDataGrain.cs ├── ChangFei.Server ├── ChangFei.Silo.csproj ├── MessageDataContext.cs ├── PersistenceOptions.cs ├── Program.cs ├── Repositories │ └── MessageRepository.cs ├── ServerOptions.cs └── appsettings.json └── ChangFei.sln /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/.gitignore -------------------------------------------------------------------------------- /Images/111: -------------------------------------------------------------------------------- 1 | hahahha 2 | -------------------------------------------------------------------------------- /Images/Structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/Images/Structure.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Chang Fei (三国名将 张飞) 2 | IM 分布式聊天服务器 3 | 采用Orleans开发 4 | -------------------------------------------------------------------------------- /src/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/.dockerignore -------------------------------------------------------------------------------- /src/ChangFei.Client/ChangFei.Client.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Client/ChangFei.Client.csproj -------------------------------------------------------------------------------- /src/ChangFei.Client/Client/IMessageClient.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Client/Client/IMessageClient.cs -------------------------------------------------------------------------------- /src/ChangFei.Client/Client/MessageClient.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Client/Client/MessageClient.cs -------------------------------------------------------------------------------- /src/ChangFei.Console/ChangFei.Console.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Console/ChangFei.Console.csproj -------------------------------------------------------------------------------- /src/ChangFei.Console/ClusterClientHostedService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Console/ClusterClientHostedService.cs -------------------------------------------------------------------------------- /src/ChangFei.Console/MessageConsoleViewer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Console/MessageConsoleViewer.cs -------------------------------------------------------------------------------- /src/ChangFei.Console/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Console/Program.cs -------------------------------------------------------------------------------- /src/ChangFei.Console/ShellHostedService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Console/ShellHostedService.cs -------------------------------------------------------------------------------- /src/ChangFei.Core/ChangFei.Core.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Core/ChangFei.Core.csproj -------------------------------------------------------------------------------- /src/ChangFei.Core/Message/Message.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Core/Message/Message.cs -------------------------------------------------------------------------------- /src/ChangFei.Core/Utilities/IdHelper.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Core/Utilities/IdHelper.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/ChangFei.Route.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/ChangFei.Route.csproj -------------------------------------------------------------------------------- /src/ChangFei.Gateway/ChangFei.Route.csproj.user: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/ChangFei.Route.csproj.user -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Controllers/FriendController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Controllers/FriendController.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Controllers/GroupController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Controllers/GroupController.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Controllers/UserController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Controllers/UserController.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Dockerfile -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Hub/MessageHub.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Hub/MessageHub.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Infrastructure/ChangFeiDataContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Infrastructure/ChangFeiDataContext.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Infrastructure/ChangFeiDataContextSeed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Infrastructure/ChangFeiDataContextSeed.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Infrastructure/HostedService/ClusterClientHostedService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Infrastructure/HostedService/ClusterClientHostedService.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Infrastructure/Repositories/IUserRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Infrastructure/Repositories/IUserRepository.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Infrastructure/Repositories/UserRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Infrastructure/Repositories/UserRepository.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Model/BaseEntity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Model/BaseEntity.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Model/Group.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Model/Group.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Model/User.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Model/User.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Program.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Properties/launchSettings.json -------------------------------------------------------------------------------- /src/ChangFei.Gateway/Startup.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/Startup.cs -------------------------------------------------------------------------------- /src/ChangFei.Gateway/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/appsettings.Development.json -------------------------------------------------------------------------------- /src/ChangFei.Gateway/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Gateway/appsettings.json -------------------------------------------------------------------------------- /src/ChangFei.Grains/ChangFei.Grains.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Grains/ChangFei.Grains.csproj -------------------------------------------------------------------------------- /src/ChangFei.Grains/Grains/GroupGrain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Grains/Grains/GroupGrain.cs -------------------------------------------------------------------------------- /src/ChangFei.Grains/Grains/UserGrain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Grains/Grains/UserGrain.cs -------------------------------------------------------------------------------- /src/ChangFei.Grains/Repositories/IMessageRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Grains/Repositories/IMessageRepository.cs -------------------------------------------------------------------------------- /src/ChangFei.Grains/Stateless/MessageStoreGrain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Grains/Stateless/MessageStoreGrain.cs -------------------------------------------------------------------------------- /src/ChangFei.Interfaces/ChangFei.Interfaces.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Interfaces/ChangFei.Interfaces.csproj -------------------------------------------------------------------------------- /src/ChangFei.Interfaces/Grains/IGroupGrain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Interfaces/Grains/IGroupGrain.cs -------------------------------------------------------------------------------- /src/ChangFei.Interfaces/Grains/IMessageSender.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Interfaces/Grains/IMessageSender.cs -------------------------------------------------------------------------------- /src/ChangFei.Interfaces/Grains/IMessageSubscriber.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Interfaces/Grains/IMessageSubscriber.cs -------------------------------------------------------------------------------- /src/ChangFei.Interfaces/Grains/IUserGrain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Interfaces/Grains/IUserGrain.cs -------------------------------------------------------------------------------- /src/ChangFei.Interfaces/IMessageStoreGrain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Interfaces/IMessageStoreGrain.cs -------------------------------------------------------------------------------- /src/ChangFei.Interfaces/IMessageViewer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Interfaces/IMessageViewer.cs -------------------------------------------------------------------------------- /src/ChangFei.Interfaces/IReadDataGrain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Interfaces/IReadDataGrain.cs -------------------------------------------------------------------------------- /src/ChangFei.Server/ChangFei.Silo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Server/ChangFei.Silo.csproj -------------------------------------------------------------------------------- /src/ChangFei.Server/MessageDataContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Server/MessageDataContext.cs -------------------------------------------------------------------------------- /src/ChangFei.Server/PersistenceOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Server/PersistenceOptions.cs -------------------------------------------------------------------------------- /src/ChangFei.Server/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Server/Program.cs -------------------------------------------------------------------------------- /src/ChangFei.Server/Repositories/MessageRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Server/Repositories/MessageRepository.cs -------------------------------------------------------------------------------- /src/ChangFei.Server/ServerOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Server/ServerOptions.cs -------------------------------------------------------------------------------- /src/ChangFei.Server/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.Server/appsettings.json -------------------------------------------------------------------------------- /src/ChangFei.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiangzLL/Chang-Fei/HEAD/src/ChangFei.sln --------------------------------------------------------------------------------