Skip to content

appnet-org/OnlineBoutique

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Online-Boutique

Online Boutique is a cloud-first microservices demo application. The application is a web-based e-commerce app where users can browse items, add them to the cart, and purchase them.

Adapted from https://github.com/GoogleCloudPlatform/microservices-demo/tree/main (all of the sevices that weren't written in Go ahve been ported to Go.)

Architecture

Online Boutique is composed of 11 microservices written in different languages that talk to each other over gRPC.

Architecture of microservices

Find Protocol Buffers Descriptions at the ./protos directory.

Build Docker Images and Push them to DockerHub

# You may need to change the $USER in `build_images.sh`
# and run `docker login -u $username`
sudo bash build_images.sh

Run Bookinfo Applicaton

kubectl apply -Rf ./kubernetes/apply
kubectl get pods

# Test (Home Handler)
curl http://10.96.88.88/ -d "user_id=test"

# Checkout Handler
curl -X POST http://10.96.88.88/cart/checkout -d "[email protected]" -d "street_address=123 Main St" -d "zip_code=98101" -d "city=Seattle" -d "state=WA" -d "country=USA" -d "credit_card_number=4111111111111111" -d "credit_card_expiration_month=12" -d "credit_card_expiration_year=2025" -d "credit_card_cvv=123" -d "user_id=test"

# wrk
./utils/wrk -c 1 -t 1 http://10.96.88.88/ -d 30s -L

# Destroy
kubectl delete pv,pvc,sa,all --all

Open Jaeger UI

kubectl port-forward svc/jaeger 16686:16686

xdg-open http://localhost:16686

About

grpc-go port of the GCP Online Boutique

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •