Skip to content

NCSU-Microservice-Benchmarking/Microservice-Profiling-with-Distributed-Tracing-and-Kubernetes

Repository files navigation

microservices

System architecture

system architecture
The server side code is in the "server_side" folder, includes both the ingress script and detector.
The client side script is in the "client_side" folder.
The data processing scipt is in the "data_process" folder.

todo list for each part

Server

  • migrate from deprecated opentracing-jaeger to opentelemetry
  • achieve cross-services tracing with Jaeger
    cross-services tracing
  • Change the configuration of ingress script (number of GPUs, Jaeger exporter endpoint, etc.) with http requests.
  • automated change resource assignment pattern

Client

  • implement a python-based video object detection client
  • migrate from deprecated opentracing to opentelemetry
  • polish python-based client (more details in the client_side folder)

Experiment

  • build a "number of GPUs-number of clients-computational time cost" model
    • pre-test: investigate the general trend
      pre-test
    • small data test: average result for small amount of data
      small data
    • automate the data collection pipeline
    • number of GPUs v.s. computational time cost
    • number of clients v.s. computational time cost