A simple wallet gRPC API implementation with Spring Boot and MySQL
APACHE-2.0 License
A simple wallet gRPC API implementation with Spring Boot and MySQL.
You need to have Docker installed to be able to build and run the application.
sudo docker build -t=wallet .
sudo docker network create wallet-net
sudo docker run --name wallet-db \
-e MYSQL_DATABASE=wallet \
-e MYSQL_USER=wallet \
-e MYSQL_PASSWORD=wallet \
-e MYSQL_ROOT_PASSWORD=wallet \
--net=wallet-net \
mysql:5.7.26
sudo docker run --name=wallet-app \
--net=wallet-net \
-p 6565:6565 \
wallet:latest
After the application has started the API is accessible on port 6565 of your local machine. Check the API definition to be able to perform gRPC requests.
Note: I tested the build only on a Linux machine. The commands should also work on Mac
(sudo
is not required).
I used the technology stack declared in the specification, in particular:
Apart from the required technologies, I took LogNet gRPC Spring Boot Starter as a gRPC implementation because it fits well with Spring Boot. I also used Flyway DB migration library because it is simple, reliable and compatible with Spring Boot.
I didn't make performance estimations because of limited time.