Best of Architecture2023

  1. 1
    Article
    Avatar of builderiobuilder.io·3y

    50+ ChatGPT Prompts for Web Developers

    ChatGPT can generate code for a variety of web development tasks. It can help you generate semantic HTML and CSS code, JavaScript functions, and even database queries. With ChatGPT, you can identify code smells and security vulnerabilities in your code to make it more efficient and secure.

  2. 2
    Article
    Avatar of hackernoonHacker Noon·3y

    The 7 Software Architecture Books Experienced Developers Need to Read

    The 7 Software Architecture Books are full of advice regarding object-oriented design, good coding practices, and avoiding costly mistakes in the initial phase of software development. The 7 software Architecture Books Experienced Developers need to Read Too Long; Didn't Read.

  3. 3
    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.

  4. 4
    Article
    Avatar of freecodecampfreeCodeCamp·3y

    Software System Design for Beginners

    Software System Design for Beginners is designed to provide a comprehensive understanding of the various concepts and techniques involved in designing and building software systems. You will learn about basic engineering design patterns that are used to build large-scale distributed systems. The course uses video streaming service as an example for demonstrating system design principles.

  5. 5
    Article
    Avatar of communityCommunity Picks·3y

    ExpressoTS - The Developer-Friendly TypeScript Framework for Server-Side Applications

    Built on a modular architecture and designed with simplicity in mind, it empowers developers to quickly create powerful applications. Current Partners ExpressoTS is an MIT-licensed open-source project. The Developer-Friendly TypeScript Framework for Server-Side Applications is available on Node.js.

  6. 6
    Article
    Avatar of cloudnativedailyCloud Native Daily·3y

    10 Microservice Patterns Software Engineers Should Know

    Building scalable software requires a software engineer/architect to pick the right architecture. Monolithic architecture is usually the first choice in mind for most engineers because it is easy and does not have to deal with the distributed system complexity because a whole application is in the same giant codebase when dealing with agile software delivery.

  7. 7
    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.

  8. 8
    Article
    Avatar of communityCommunity Picks·3y

    API Design Practice

    Learn about API Design goals, aligning resource APIs with the business domain, and conducting design workshops.

  9. 9
    Article
    Avatar of awstipAWS Tip·3y

    Use Nginx as an API Gateway

    Use Nginx as an API Gateway to manage and direct incoming requests to three different microservices. Nginx is software that works as a reverse proxy and can be used as a Load balancer to distribute requests to different servers. The primary role of the API gateway is to act as an intermediary between clients (e.g.

  10. 10
    Article
    Avatar of bytebytegoByteByteGo·3y

    EP56: System Design Blueprint: The Ultimate Guide

    Amazon has created a unique build system, known as Brazil, to enhance productivity and empower Amazon’s micro-repo driven collaboration. McDonald's standardizes events using the following components: an event registry to define a standardized schema. An event gateway that performs identity authentication and authorization.

  11. 11
    Article
    Avatar of systemdesignnewsSystem Design Newsletter·2y

    Everything You Need to Know About Micro Frontends

    Micro Frontends are an extension of the microservices concept to the Frontend. It slices the website into self-contained, domain-driven micro apps that are built, tested, and deployed independently. The container application combines every Micro Frontend and handles common page elements, authentication, and navigation. Micro Frontends can be implemented with different tools and frameworks like React, Vue, and Angular. They offer advantages like fast delivery, flexible tech stack, improved maintainability, scalable development, and more. However, they also come with increased complexity, potential distributed monolith problem, and fragmented ways of work.

  12. 12
    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.

  13. 13
    Article
    Avatar of semaphoreSemaphore·3y

    Microservices Best Practices

    Microservices architecture involves designing and developing loosely-coupled services. Best practices include adopting the Single Responsibility Principle, building teams with clear responsibilities, using the right tools and frameworks, keeping asynchronous communication between microservices, adopting the DevSecOps model, using separate data stores for each microservice, deploying each microservice separately, orchestrating microservices using platforms like Kubernetes, and using an effective monitoring system.

  14. 14
    Article
    Avatar of bytebytegoByteByteGo·3y

    How to Choose a Message Queue?

    The diagram below shows how it works: When the cashier takes an order, a new order is created in the database-backed queue. For Starbucks’ use case, a simple database queue meets the requirements without needing Kafka. RabbitMQ works like a messaging middleware - it pushes messages to consumers then deletes them upon acknowledgment.

  15. 15
    Article
    Avatar of communityCommunity Picks·3y

    Microservices VS Monoliths

    Microservices VS Monoliths. Microservices need no introduction and…. Microservices are a de facto solution for a web application which enables organizations to get most benefits of the cloud. The answer is not a perfect black and white scenario and its not a one-size-fits all solution.

  16. 16
    Article
    Avatar of bytebytegoByteByteGo·3y

    Why Do We Need a Message Queue?

    Message queues have a long history. They are often used for communication between different systems. A simplified eCommerce flash sale architecture is listed in Figure 2. To maintain service responsiveness despite high traffic, message queues can be integrated at multiple stages to ensure optimal performance. The payment service sends data to three downstream services for different purposes.

  17. 17
    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.

  18. 18
    Article
    Avatar of discdotDiscover .NET·3y

    Want to build a good API? Here's 5 Tips for API Design.

  19. 19
    Article
    Avatar of discdotDiscover .NET·3y

    Why is Clean Architecture so Popular?

    Clean Architecture is a way to manage coupling between software modules ISO/IEC/IEEE 24765:2010 Systems and software engineering — Vocabulary There are two forms of coupling Clean Architecture addresses. In.NET, projects were used in the template above to force the separation. However, you do not need separate projects.

  20. 20
    Article
    Avatar of bytebytegoByteByteGo·3y

    EP49: API Architectural Styles

    This week’s system design refresher: API architectural styles. EP49: API Architectural Styles. How Levels.fyi scaled to millions of users using Google Sheets as a backend. Backend burger: How to use New Relic to achieve Kubernetes observability.

  21. 21
    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.

  22. 22
    Article
    Avatar of dzDZone·3y

    Backend For Frontend (BFF) Pattern

    The Backend for Frontend (BFF) design pattern customizes backend services for specific frontends, enhancing efficiency and alignment with frontend needs. It involves creating a backend service layer specifically tailored to the requirements of a particular frontend application or a set of closely related frontends.

  23. 23
    Article
    Avatar of awstipAWS Tip·2y

    Kubernetes Architecture

    Kubernetes is a powerful open-source container orchestration platform that automates deployment, scaling, and management of containerized applications. It utilizes a master-worker node model and consists of components like kube-apiserver, etcd, kube-scheduler, kube-controller-manager, and cloud-controller-manager. Worker nodes have kubelet, kube-proxy, and a container runtime for executing and maintaining applications.

  24. 24
    Article
    Avatar of earthlyEarthly·3y

    Kafka vs RabbitMQ: What Are the Differences?

    Apache Kafka and RabbitMQ are popular distributed messaging systems with functionalities for real-time data processing, analytics, event-driven architectures, and more. Kafka is a distributed streaming platform with high throughput, low latency, and a publish-subscribe model. RabbitMQ is a message broker with support for multiple protocols and flexible routing capabilities. Kafka excels in real-time data processing, event sourcing, and log aggregation, while RabbitMQ is suitable for asynchronous communication, microservices communication, and IoT data ingestion.

  25. 25
    Article
    Avatar of bytebytegoByteByteGo·2y

    6 More Microservices Interview Questions

    Explore microservices interview questions including API Gateway, differences between REST and RPC, and more.