# Solution preview chat - Explain why we need the view - Pros/cons - Technical diagram for different stages - In between stable states - Phase 1 – Phase 2? - Concerns about views - Help understand the tradeoff - esp around testing each phase Audience: - Sugendran - Rob + other tech leads - Doug - Tim Riley - Sushma Outcome: - Share our approach - Understand the tradeoffs - Success = Should be able to explain your solution afterwards - Confidence we've kicked most of the tires ```graphviz digraph Application { rankdir=LR; fontname="Helvetica"; node [shape=box,style=filled,fillcolor="#BCE3DC",fontname="Helvetica";]; edge [fontname="Helvetica";]; subgraph clusterServer { label="Performance-API"; style=filled; bgcolor="#ECECEF"; employees [shape=cylinder]; "Consumer"; }; Influx -> Consumer [label=HTTP, dir="none"] "Consumer" -> employees } ``` ```graphviz digraph Application { rankdir=LR; fontname="Helvetica"; node [shape=box,style=filled,fillcolor="#BCE3DC",fontname="Helvetica";]; edge [fontname="Helvetica";]; subgraph clusterServer { label="Performance-API"; style=filled; bgcolor="#ECECEF"; "Consumer 1"; "Consumer 2"; "Consumer .."; employees [shape=cylinder]; }; Influx -> Producer [label=HTTP, dir="none"] Producer -> Kafka; Kafka -> "Consumer 1" [dir=back] Kafka -> "Consumer 2" [dir=back] Kafka -> "Consumer .." [dir=back] "Consumer 1" -> employees "Consumer 2" -> employees "Consumer .." -> employees } ``` ```graphviz digraph Application { rankdir=LR; fontname="Helvetica"; node [shape=box,style=filled,fillcolor="#BCE3DC",fontname="Helvetica";]; edge [fontname="Helvetica";]; subgraph clusterServer { label="Performance-API"; style=filled; bgcolor="#ECECEF"; User [shape=cylinder] Company [shape=cylinder] "1-1s" -> User "1-1s" -> Company GraphQLController -> "1-1s" [dir=both] }; } ``` ```graphviz digraph Application { rankdir=LR; fontname="Helvetica"; node [shape=box,style=filled,fillcolor="#BCE3DC",fontname="Helvetica";]; edge [fontname="Helvetica";]; subgraph clusterServer { label="Performance-API"; style=filled; bgcolor="#ECECEF"; User [shape=cylinder] Company [shape=cylinder] "PerformanceAPI::GraphQLController" -> User "PerformanceAPI::GraphQLController" -> Company "PerformanceAPI::GraphQLController"; subgraph clusterServer { label="1-1s"; style=filled; bgcolor="#F6F6F6"; Employee [shape=cylinder] Account [shape=cylinder] "OneOnOnes::GraphQLController" -> Employee "OneOnOnes::GraphQLController" -> Account }; }; } ```