Best of ArchitectureSeptember 2023

  1. 1
    Article
    Avatar of amplicationAmplication·3y

    The Complete Microservices Guide

    Microservices have emerged as a popular architectural approach for designing and building software systems for several compelling reasons and advantages. It is a design approach that involves dividing applications into multiple distinct and independent services called "microservices" Microservices are naturally distributed services as each service is isolated from the others and runs in its own instance.

  2. 2
    Article
    Avatar of awstipAWS Tip·3y

    Understanding NestJS Architecture

    NestJS is a NodeJs framework built on top of ExpressJs and is used for building efficient, scalable, loosely coupled, testable and easily maintainable server side web applications. The problem NestJs trying to solve is that of architecture. The simplest approach is to create a Controller doing all things: from validation to request-processing to handling business logic.

  3. 3
    Article
    Avatar of dzDZone·3y

    What Is Good Database Design?

    DZone: Good database design is essential to ensure data accuracy, consistency, and integrity. The design must address the storing and retrieving of data quickly and easily while handling large volumes of data in a stable way. Data security is a critical consideration in modern database design, given the rising prevalence of fraud and data breaches.

  4. 4
    Article
    Avatar of bytebytegoByteByteGo·3y

    EP77: My Recommended Materials for Cracking Your Next Technical Interview

    The third annual Observability Forecast by New Relic is out now. The survey results show that observability continues to deliver a clear, positive business impact and a 2x median annual return on investment. Uber Tech Stack is based on research from many Uber engineering blogs and open-source projects.

  5. 5
    Article
    Avatar of cloudnativenowCloud Native Now·3y

    Top 9 Microservices Design Patterns

    Microservices design patterns are gaining immense popularity due to their myriad benefits. They offer flexibility, scalability and the ability to independently develop and deploy parts of an application. They are the blueprints that guide the design of microservices architecture, especially for cloud-native applications.

  6. 6
    Article
    Avatar of bytebytegoByteByteGo·3y

    Why is Kafka so fast? How does it work?

    Kafka has emerged as a popular choice for its speed and scalability - but what exactly makes it so fast? In this issue, we'll explore: Kafka's architecture and its core components like producer, brokers, and consumers. How Kafka optimizes data storage and replication and replication.

  7. 7
    Article
    Avatar of itnextITNEXT·3y

    Why Web UI Development Is So Hard?

    This piece aims to dissect the inherent challenges of web UI development, from the discrepancy between web languages and the modern UI requirements. We’ll explore often-overlooked ‘unhappy paths’ such as loading states, error handling, and broader architecture considerations including security, performance, and accessibility.

  8. 8
    Article
    Avatar of infoqInfoQ·3y

    Micro Frontends: The Evolution of Frontend Architecture

    The Evolution of Frontend Architecture is a talk about the evolution of frontend architecture. Ruben Casas is a Staff Engineer at Postman and a master's degree in internet and distributed systems. He says the talk will give you a lot of the tools to identify how to move away from a monolith into more distributed architecture.

  9. 9
    Article
    Avatar of amplicationAmplication·3y

    How to Effectively Use Caching to Improve Microservices Performance

    Caching is a technique used in computer systems to store frequently accessed data or computation results in a temporary storage area called a "cache" This article will dive into the art of leveraging caching techniques to their fullest potential. We will explore database caching, edge caching, API caching, and local caching.

  10. 10
    Article
    Avatar of gcgitconnected·3y

    How Discord Stores Trillions of Messages — Curious Case of System Design

    Discord’s Cassandra cluster exhibited serious performance issues that required increasing amounts of effort to just maintain, not improve. In 2017, the Discord team ran 12 Cassandra nodes, storing billions of messages. They migrated their data to ScyllaDB because they were looking for a database that was scalable and fault-tolerant.

  11. 11
    Article
    Avatar of towardsdevTowards Dev·3y

    Event Streaming v.s Event Sourcing

    Event streaming and event sourcing are two related but distinct concepts in the world of event-driven architecture. Event streaming is the process of continuously capturing and storing events as they occur in a system. These events can then be processed and analyzed in real-time or stored for later analysis.

  12. 12
    Article
    Avatar of newstackThe New Stack·3y

    5 Best Practices for Securing Your API Gateway

    Learn about five best practices for securing your API gateway, including token-based authentication, role-based access control, rate limiting, explicit CORS policy, and real-time monitoring and alerting for anomalies.

  13. 13
    Article
    Avatar of kdnuggetsKDnuggets·3y

    5 Free Books to Help You Master Python

    This article presents five free books to help readers become proficient in Python and build maintainable applications. The recommended books cover topics such as data analysis, automation, patterns, recipes, and clean architecture.

  14. 14
    Article
    Avatar of hackernoonHacker Noon·3y

    A Guide to Building Observability for Microservices

    Explore tools like Prometheus, Grafana, and Helm to set up a robust observability stack. Learn how to monitor Kubernetes-based microservices effectively, plus, get a glimpse of the essential metrics to track for optimal performance.

  15. 15
    Article
    Avatar of newstackThe New Stack·3y

    OAuth.Tools: The Online Tool That Goes beyond JWTs

    OAuth is a free online tool provided by Curity. It offers incredible features for anyone working with or interested in OAuth and OpenID Connect. You can decode or create JWTs with different characteristics, fetch tokens from a server, revoke tokens or add an access token to external API calls.

  16. 16
    Article
    Avatar of medium_jsMedium·3y

    Clean Layout Architecture for Vue Applications

    Clean Layout Architecture for Vue Applications is an essential pattern to reduce code repetition and create maintainable and professional-looking applications. If you are using Nuxt, an elegant solution is provided out of the box. But unfortunately, in Vue, the official documentation doesn’t address them at all.

  17. 17
    Article
    Avatar of communityCommunity Picks·3y

    10 Myths About Microservices Architecture You Should Know

    Myths and Realities of Microservices Architecture are floating around the software industry. These myths often lead to misguided decisions and implementation failures. The objective of this blog is to dispel some of these misinterpretations, providing a clear understanding of the intricacies of microservices.

  18. 18
    Article
    Avatar of communityCommunity Picks·3y

    A Comparison of Popular Flutter App Architectures

    A Comparison of Popular Flutter App Architectures starting new projects is fun. The Riverpod architecture is based on the Riverpod package, based on four main layers. These are popular app architectures that were introduced long ago to solve similar problems to the ones we face today with Flutter.

  19. 19
    Article
    Avatar of medium_jsMedium·3y

    Message Queue in Nodejs with BullMQ and Redis

    Message Queue in Node.js with BullMQ and Redis.io is based on 4 classes that together can be used to resolve many different problems. BullMQ offers a fast and robust queue system that simplifies the management of message queues, making it an effective solution for addressing these challenges.

  20. 20
    Article
    Avatar of itsfossIt's Foss·3y

    arm vs aarch64 vs amd64 vs x86

    The terms that I listed above, generally speaking, are CPU architectures. These are what a computer engineer calls a CPU ISA (Instruction Set Architecture) This is what defines how the 1's and 0's of binary are interpreted by your CPU. If you own a CPU from pre-2007, this is likely your CPU architecture.

  21. 21
    Article
    Avatar of communityCommunity Picks·3y

    Behind the scenes of designing a design system component

    Rama Krushna Behera shares his insights and experiences behind the scenes of designing a design system component. The process starts with auditing existing components in different products across all business units of Razorpay. This article will briefly answer both of these questions and I hope to give you some clarity by the end.

  22. 22
    Article
    Avatar of dzDZone·3y

    Modular Software Architecture

    Modular Software Architecture: Advantages and Disadvantages of Using Monolith, Microservices and Modular Monolith. Learn about the pros and cons of modular software architecture and find out which architecture type is the best fit for your project. Join the DZone community and get the full member experience.

  23. 23
    Article
    Avatar of newstackThe New Stack·3y

    Secure Go APIs with Decentralized Identity Tokens, Part 1

    The rise of decentralized identity tokens adds a new dimension to API security. Traditionally, API authentication and authorization relied heavily on centralized identity providers. Decentralized identity tokens allow individuals to have greater control over their identities and authenticate themselves without relying on central authority.

  24. 24
    Article
    Avatar of tinybirdTinybird·3y

    Event sourcing with Kafka: A practical example

    The article discusses event sourcing with Kafka and how Tinybird simplifies the implementation. Event sourcing is a robust way to determine the current state of a system by analyzing past events. Kafka provides a distributed and scalable event log, making it ideal for event sourcing. Tinybird, a real-time data platform, offers snapshotting and real-time analytics capabilities that enhance event sourcing. Best practices for implementing event sourcing with Kafka are provided, along with a practical example of implementing event sourcing with Kafka and Tinybird.

  25. 25
    Article
    Avatar of infoqInfoQ·3y

    Node.js Alternative Bun Now Generally Available

    Node.js Alternative Bun is designed to be a fast toolkit for running, building, testing, and debugging JavaScript and TypeScript. It's designed to eliminate slowness and complexity without throwing away everything that's great about JavaScript. The release of Bun has been recently announced.