onlineboutique

command module
v0.0.0-...-ec86544 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 15, 2023 License: Apache-2.0 Imports: 5 Imported by: 0

README

Online Boutique

This directory contains the port of the Google Cloud's Online Boutique demo application to Service Weaver.

%%{init: {"flowchart": {"defaultRenderer": "elk"}} }%%
graph TD
    %% Nodes.
    github.com/ServiceWeaver/onlineboutique/adservice/T(adservice.T)
    github.com/ServiceWeaver/onlineboutique/cartservice/T(cartservice.T)
    github.com/ServiceWeaver/onlineboutique/cartservice/cartCache(cartservice.cartCache)
    github.com/ServiceWeaver/onlineboutique/checkoutservice/T(checkoutservice.T)
    github.com/ServiceWeaver/onlineboutique/currencyservice/T(currencyservice.T)
    github.com/ServiceWeaver/onlineboutique/emailservice/T(emailservice.T)
    github.com/ServiceWeaver/onlineboutique/paymentservice/T(paymentservice.T)
    github.com/ServiceWeaver/onlineboutique/productcatalogservice/T(productcatalogservice.T)
    github.com/ServiceWeaver/onlineboutique/recommendationservice/T(recommendationservice.T)
    github.com/ServiceWeaver/onlineboutique/shippingservice/T(shippingservice.T)
    github.com/ServiceWeaver/weaver/Main(weaver.Main)

    %% Edges.
    github.com/ServiceWeaver/onlineboutique/cartservice/T --> github.com/ServiceWeaver/onlineboutique/cartservice/cartCache
    github.com/ServiceWeaver/onlineboutique/checkoutservice/T --> github.com/ServiceWeaver/onlineboutique/cartservice/T
    github.com/ServiceWeaver/onlineboutique/checkoutservice/T --> github.com/ServiceWeaver/onlineboutique/currencyservice/T
    github.com/ServiceWeaver/onlineboutique/checkoutservice/T --> github.com/ServiceWeaver/onlineboutique/emailservice/T
    github.com/ServiceWeaver/onlineboutique/checkoutservice/T --> github.com/ServiceWeaver/onlineboutique/paymentservice/T
    github.com/ServiceWeaver/onlineboutique/checkoutservice/T --> github.com/ServiceWeaver/onlineboutique/productcatalogservice/T
    github.com/ServiceWeaver/onlineboutique/checkoutservice/T --> github.com/ServiceWeaver/onlineboutique/shippingservice/T
    github.com/ServiceWeaver/onlineboutique/recommendationservice/T --> github.com/ServiceWeaver/onlineboutique/productcatalogservice/T
    github.com/ServiceWeaver/weaver/Main --> github.com/ServiceWeaver/onlineboutique/adservice/T
    github.com/ServiceWeaver/weaver/Main --> github.com/ServiceWeaver/onlineboutique/cartservice/T
    github.com/ServiceWeaver/weaver/Main --> github.com/ServiceWeaver/onlineboutique/checkoutservice/T
    github.com/ServiceWeaver/weaver/Main --> github.com/ServiceWeaver/onlineboutique/currencyservice/T
    github.com/ServiceWeaver/weaver/Main --> github.com/ServiceWeaver/onlineboutique/productcatalogservice/T
    github.com/ServiceWeaver/weaver/Main --> github.com/ServiceWeaver/onlineboutique/recommendationservice/T
    github.com/ServiceWeaver/weaver/Main --> github.com/ServiceWeaver/onlineboutique/shippingservice/T

Here are the changes made to the original application:

  • All of the services that weren't written in Go have been ported to Go.
  • All of the networking calls have been replaced with the corresponding Service Weaver calls.
  • All of the logging/tracing/monitoring calls have been replaced with the corresponding Service Weaver calls.
  • The code is organized as a single Go module.

Documentation

Overview

Package main implements a demo shopping application called Online Boutique.

This application is a forked version of Google Cloud Online Boutique app 1, with the following changes:

  • It is written entirely in Go.
  • It is written as a single Service Weaver application.
  • It is written to use Service Weaver specific logging/tracing/monitoring.

Directories

Path Synopsis
Package types stores common types shared between services.
Package types stores common types shared between services.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL