Uploaded image for project: 'Service Binding'
  1. Service Binding
  2. APPSVC-1245

Create the Catalog microservice

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • Service Binding
    • None

      Owner: Architect:

      David Peraza

      Story (Required)

      As a Service Binding Developer, I'd like to have an implementation of the Catalog microservice, to use that for demos that shows the value of the Service Binding Operator in complex architectures scenario (i.e., SOA/Microservices).

      Background (Required)

      We have always being using PetClinic to demonstrate how service binding works with single deployment applications. This application is simple and it is very useful when testing simple uscases. However, to be able to see the benefits of Service Binding, it will make more sense to show how easy it is to bind an application composed of multiple micro-services (K8 Deployments and Services) and each of those depending on one or many Cloud Services (Database, Monitoring, MemCache).

      We'd like to implement an e-commerce website with two exposed micro-services, one that manages Orders, the other manages the Catalog. When the user places a new order, the Catalog must be updated.

      The communication between Orders and Catalog microservices should happen via a Message Broker (like Amazon SNS).

      Glossary

      NA

      Out of scope

      Assume you have infinite availability of each product the store is selling.

      In Scope

      Count sold items for each product in the store.
      At application startup the database must be initialized and seeded if it's not.

      Approach(Required)

      Pick modern technology for Both, Frontend and Backend. Language selection is open but try to stay with the languages we use in our projects so that the demo app can me maintained (Golang, Python, JavaScript). Make it a simple Kubernetes application that shows how the services are being used.

      Dependencies

      • APPSVC-1243: the SOA application design is needed to implement Catalog microservice's integration with other services

      Edge Case

      NA

      Acceptance Criteria

      Source code on our demo repo
      README file with instruction to build and run the microservice
      Makefile to build and package
      At application startup, if needed, database is initialized and seeded
      REST API for Read and List products in the catalog
      When an event is read from the message queue, related products are updated
      Databases and message brokers are AWS services

      INVEST Checklist

      Dependencies identified

      Blockers noted and expected delivery timelines set

      Design is implementable

      Acceptance criteria agreed upon

      Story estimated

      v

      Legend

      Unknown

      Verified

      Unsatisfied

              Unassigned Unassigned
              rh-ee-filario Francesco Ilario
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: