Projeto da disciplina Sistemas Distribuídos na UNEB Campus Salvador.
Construção de um sistema de chat com múltiplas salas utilizando gRPC.
Chat.RoomManager
é o servidor responsável por saber quais salas estão disponíveis para o usuário se conectarChat.Room
é a própria sala onde ocorrerá a troca de mensagens. Na sua inicialização ele se declara aoChat.RoomManager
, passando o seu endereço (DNS).Chat.Client
é uma implementação de cliente, bem primitiva, usando o projetoconsole
do .NET. Porém, por escolhermosgRPC
, o cliente pode ser implementado em qualquer linguagem.
- .NET Core 5
- Docker Compose apenas servidor
$ dotnet publish -c Release -o bin
$ ./bin/Chat.RoomManager
# mude as variáveis de ambiente para configurar a sala de acordo com o desejado
$ PORT=5002 HTTP_PORT=5080 NAME="Grupo da Família" ./bin/Chat.Room
# rode o exemplo de cliente
$ ./bin/Chat.Client
$ docker-compose up --build
Sinta-se à vontade de implementar clientes em qualquer outra linguagem, basta adicioná-lo no diretório clients/{tecnologia}
e abrir um pull request.