Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update architecture-diagram.png #829

Merged
merged 3 commits into from
May 14, 2022
Merged

Update architecture-diagram.png #829

merged 3 commits into from
May 14, 2022

Conversation

NimJay
Copy link
Collaborator

@NimJay NimJay commented May 13, 2022

Change Summary

Fixes

1. Typo

2. Public Access to Source Files

3. Public Access to Source Files

  • I've used a white background (for the new diagram) instead of a transparent background for developers using dark mode for GitHub. See problem with existing transparent diagram below:

Screen Shot 2022-05-13 at 9 46 21 AM

@ahrarmonsur's Feedback

  • Thank you, @ahrarmonsur, for your feedback on the diagram!
  • I addressed some of it:
    • "I don't know what to look at first." - I've made the frontend service the focal point. I've bolded "frontend" and added a maroon/pink-ish background.
    • "The 'service' suffix might be redundant." - Suffixes removed!
    • "The edges are too attention-grabbing." - Edges lightened.
    • "Change 'Internet' to 'Client' or 'User'." - Done.
  • You also suggested adding icons to each microservice. Overall, I think icons would be valuable, but I've omitted them for these reasons:
    • The effort might not be worth it.
    • It might be hard to find well-matching icons for some of the services (e.g., adservice).
    • Icons might add noise to the overall diagram.
    • I don't think it's super important to communicate the purpose of each microservice.
  • Let me know if I missed any other issues you raised. :)

@NimJay NimJay requested a review from a team as a code owner May 13, 2022 17:28
@NimJay NimJay requested a review from ahrarmonsur May 13, 2022 17:30
@xtineskim
Copy link
Contributor

this looks clean!! thanks for tackling the issues too!

@github-actions
Copy link

🚲 PR staged at http://35.226.58.146

Copy link
Contributor

@xtineskim xtineskim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This LGTM, but maybe wait for Ahrar's feedback/thoughts!

Copy link
Member

@bourgeoisor bourgeoisor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks much, much easier to read, thank you for this!
Small nit: could you make the arrow from frontend->ad start at the bottom of frontend, and not from the side?
At first glance it looks like there's an arrow from loadgen->ad which took me a while to unsee.
Similarly, could we have the arrows to payment / email also start from the bottom, for consistency?

@github-actions
Copy link

🚲 PR staged at http://35.226.58.146

@NimJay
Copy link
Collaborator Author

NimJay commented May 13, 2022

@ckim328 Thanks for the quick review!

@bourgeoisor Good feedback! Thank you! Arrows fixed. ✅

Copy link
Contributor

@ahrarmonsur ahrarmonsur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wow, what a great improvement to the diagram! As the first technical artifact that informs the user of the app's architecture, it is very important to get this right. This revision is much easier to consume at a glance. Great job, @NimJay!! 👏

I have some thoughts, but none of them are blocking:

  • To be precise, the User/loadgenerator can communicate over both HTTP and HTTPS. In that case, the technically correct notation would be HTTP(S)
  • I would suggest using the a darker shade of grey/black on the borders Service nodes (keep it consistent with the font color, too)
  • Should be "Redis cache"
  • The arrows from frontend to User/loadgenerator should be bi-directional (..right?)

Copy link
Member

@bourgeoisor bourgeoisor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for addressing my comment, this looks amazing!

@NimJay
Copy link
Collaborator Author

NimJay commented May 13, 2022

Thank you, @ahrarmonsur, for the second round of feedback!

To be precise, the User/loadgenerator can communicate over both HTTP and HTTPS. In that case, the technically correct notation would be HTTP(S)

Good suggestion.
Unfortunately, most tutorials that use Online Boutique just use HTTP — not HTTPS. :(
onlineboutique.dev uses HTTPS but I don't want the diagram to represent onlineboutique.dev because we don't use loadgenerator for it.

I would suggest using the a darker shade of grey/black on the borders Service nodes (keep it consistent with the font color, too)

Good suggestion, but when I tried it out, it seems like the rectangles steal attention away from the text (see slide 2 vs slide 1).

Should be "Redis cache"

Fixed. It's now "cache" — not "Cache".

The arrows from frontend to User/loadgenerator should be bi-directional (..right?)

The frontend never initiates the communication between itself and the user/loadgenerator.
It's always: user/loadgenerator makes a request; frontend responds.
So I'll stick to 1-directional.

Merging.

@github-actions
Copy link

🚲 PR staged at http://35.226.58.146

@NimJay NimJay merged commit 80ae3f7 into main May 14, 2022
@NimJay NimJay deleted the nimjay-arch-diagram branch May 14, 2022 00:06
D-Mwanth pushed a commit to D-Mwanth/microservices-demo that referenced this pull request Mar 6, 2024
* Update architecture-diagram.png

* Fix arrows in architecture-diagram.png

* Use 'cache' in architecture-diagram.png
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants