Architecture Weekly #31

Architecture Weekly Issue #31. Articles, books, and playlists on architecture and related topics. Every record has the complexity indication: 🤟 means hardcore, 👷‍♂️ is technically applicable right away,  🍼 - introduction to the topic or an overview. Now in telegram as well.

WARNING 🇺🇦

It's already been 179 days of the crazy, brutal, unjustified war of Russia against Ukraine. We condemn this war and want it to stop ASAP. We continue this newsletter so you can advance your skill and help the millions of Ukrainian people in any way possible.

Distributed Systems theory list 🤟

Designing distributed systems is hard. So I thought the theory introduction can be helpful. Please find a list of books and resources to start with the problems of the fields and some potential solutions.

Distributed systems theory for the distributed systems engineer | Paper Trail
Writing about distributed systems, compilers, virtual machines, databases and research papers from SOSP, ATC, NSDI, OSDI, EuroSys and others

Automated Security Testing 👷‍♂️

Part of NFR testing is Security Testing. Folks from the Cossack Labs posted the guide on the general approaches of security testing, what you should test, how to do it and what set of tools can help you.

Introduction to automated security testing | Cossack Labs
Keep your code shipshape and reduce vulnerabilities with automated security testing. Delve into ways and tools of software security testing that developers and platform engineers can set up and automate to make apps more secure.

How to share data between Microservices on High Scale 👷‍♂️

Shiran Metsuyanim wrote an article where she provides a casestudy for Fiverr's Top Clients page. Different options, tradeoffs and working receipts included.

How to Share Data Between Microservices on High Scale
Several approaches suitable for a scalable system considering tradeoffs between availability and consistency

Resolving Conflicting Requirements 🍼

Part of the Software Architect is to identify the stakeholders and gather the requirements. But they frequently happen to contradict each other, so we need to find out when it happens and resolve them. The receipts on how to do that in the article.

Requirements Conflict | 8 Ways to manage sticky stakeholders
Requirements Conflict is a common but sometimes difficult aspect of a Business Analyst’s career. We share 8 ways to manage stakeholders.

Patterns for Serverless applications 🍼

Famous Gregor Hohpe, who's materials we included couple of times already, wrote an article about the patterns for serverless applications. It is important as Serverless is typically a way to have a vendor lock-in. Patters can be a way to minimize the impact of it.

Concerned about Serverless Lock-in? Consider Patterns!
Design patterns have long been a useful tool for designing software. Several decades later, they can do magic for your solutions by not only improving your designs but also by reducing switching costs.

7 reference architecture designs for retails 👷‍♂️

Redhats's blog includes a post on the reference architectures for eCommerce. Headless, Point of Sales and Real-time stock control architectures included.

7 reference architecture designs for retailers
As retailers pivot to omnichannel sales, they must strengthen their cloud services, online presence, real-time stock control, and asset management. Consider these resources for architects.

Atlassians six 9ths of availability for critical services 👷‍♂️

Atlassian went fully cloud couple of years ago. They have some critical services, and Tenant Context Service is one of them. All of the requests to the cloud services go through it demanding it to be highly available. Read about it in the detailed article by Atlassian.

Here’s how one of Atlassian’s critical services consistently gets above 99.9999% of availability - Atlassian Engineering
An Atlassian’s critical services consistently gets above 99.9999% of availability. Learn more about the technology behind it in this post.

Architecture as Code with Plantuml and C4 🍼

I would like to include a very detailed guide on documenting the architecture using PlantUML. This time it shares the receipts on improving the diagrams with custom sprites which contributes significantly to their readability.

Architecture as Code With C4 and Plantuml - Gadgets Officials
I am fortunate sufficient to at present work on a big microservices-based mission as an answer architect. I am liable for designing completely different

Consistent Hashing Video 🍼

Consistent Hashing is one of the algorithms for distributed systems which does not depend on the number of nodes or objects operating something called hashring. Checkout the video which explains the concept.

Matt Klein on Envoy Gateway 🍼

Envoy is an open source edge and service proxy, designed for cloud-native applications. Envoy Gateway  is going to be used to provide full experience managing traffic North-South, which is typically implemented manually using Envoy Proxy. More details in the podcast!

Matt Klein on Envoy Gateway
Today on the podcast, Wes Reisz speaks with Matt Klein about a recent announcement that Envoy Proxy will partner with many well-known companies in the space, including VMware, Ambassador Labs, and Tetrate to build and maintain a new member of the Envoy family – Envoy Gateway.

This newsletter is hosted on GCP and uses Mailgun to send the emails. The cost is ~$25 per month. Liked it? Consider helping to run this newsletter at Patreon :)