# README
Projeto gRPC em Go
Este projeto demonstra a implementação de um serviço gRPC utilizando a linguagem Go, integrando-se a um banco de dados SQLite3. O objetivo é fornecer um exemplo prático de como estruturar um projeto gRPC em Go e interagir com um banco de dados local.
Pré-requisitos
-
Go instalado em sua máquina: Instalar Go
-
Evans: Cliente gRPC para interagir com o serviço. Instale utilizando o comando abaixo ou acesse a documentação oficial para outras opções:
go install github.com/ktr0731/evans@latest
-
SQLite3: Este projeto utiliza SQLite3 como banco de dados local.
Como baixar o projeto
Clone o repositório do projeto do GitHub usando o seguinte comando:
git [email protected]:cadugr/gRPC.git
cd gRPC
Configuração do Banco de Dados
Este projeto utiliza SQLite3 como banco de dados, e o arquivo do banco de dados precisa ser criado, conforme instruções a seguir.
Criando o Banco de Dados SQLite Localmente
Para criar o banco de dados e as tabelas localmente, siga os passos abaixo:
-
No terminal, abra o cliente SQLite e crie um banco de dados (ex.:
.db.sqlite
):sqlite3 .db.sqlite
-
Dentro do cliente SQLite, crie a tabela
categories
com o seguinte comando:CREATE TABLE IF NOT EXISTS categories ( id TEXT PRIMARY KEY, name TEXT, description TEXT );
-
Para sair do SQLite, digite:
.exit
O banco de dados será criado e salvo no diretório atual.
Executando o Projeto
-
Instale as dependências:
go mod tidy
-
Inicie o servidor gRPC:
go run cmd/grpcServer/main.go
O servidor estará rodando no endereço localhost:50051
, por padrão.
Testando o Serviço com Evans
Utilize o Evans para interagir com o servidor gRPC e realizar chamadas aos métodos disponíveis:
-
Inicie o Evans no modo REPL:
evans -r repl -p 50051
-
Dentro do Evans, você pode listar e chamar os métodos do serviço gRPC disponíveis.
Para mais detalhes sobre os comandos do Evans, consulte a documentação oficial.