Skip to content

Latest commit

 

History

History
456 lines (340 loc) · 46.7 KB

architecture.md

File metadata and controls

456 lines (340 loc) · 46.7 KB

drawing

An example that demonstrates using NestJS as a base framework for building lightweight, well-structured and amazing microservices.

SOLID is five design principles intended to make software designs more understandable, flexible, and maintainable. It helps us to think about the right way to build a software system

Do people love infinite scrolling on the websites they visit or are theyfine with clicking on ‘Read more’ or ‘View more?’ Infinite scrolling eliminatesthe need for pagination which is the process of separating digital content into different pages. Here’s my view on infinite scrolling and why it is a recipe for disaster.

In this post I'll demonstrate the development tool Eunice by using it on the JavaScript library Polly.JS.

Performance is often one of the key focus points when building enterprise software. Many of the systems that we build rely heavily on communications with other systems. When these external communications become slow, then our software becomes slow. Unfortunately, we often have no control over the response time of the services that we depend on. However, we can optimize the way that we communicate with those services in order to ensure maximum performance.

Companies need to be thinking long-term before even starting a software development project. These needs are solved at the level of architecture: business owners want to assure agility, scalability, and performance.

If you’re a microservices developer considering communication protocols, choosing an event-driven architecture might just help you rest a little easier at night. With the right design, event-driven architecture can help you to create apps that are decoupled and asynchronous, giving you the major benefits of your app being both performant and easily scalable.

How abstract is too abstract?

What is the Internet Computer Protocol? How does this new Blockchain protocol work? And what sorts of features does the Internet Computer Blockchain have?

This article explains how to set up static code analysis for infrastructure as code using Azure DevOps pipelines.

Varun Sharma has been nominated for a 2021 Noonies Award for Architecture.

In a microservice architecture, you can get dependencies that impose restrictions on the services used

Get insights into the web application architecture to understand how web apps provide an amazing user experience.

Dr. Akash Sridhar, a top computer architecture expert has made history by being awarded the prestigious title of Fellow by the Institution of Engineering and Te

"I want to become a solution architect. What are the resources to learn more about architecture?" - We are all asking the wrong question.

Performance Engineering is one of the ways to enhance the quality and performance of an application. Check out the best practices to take advantage of it.

Hey there! In this article, I'm sharing my thoughts about Deno as a bad runtime system for enterprise applications. At least for now.

Data Consistency might be a pain in the ass. It is a well-known source of unexpected surprises. What is it? What does it depend on? Why is it so often overseen?

Using Composite UI in angular is one way to use a multiservice application in the backend that has a few advantages over the conventional, Monolith architecture

Hadoop cluster across multiple data centers

Pros and Cons of Monolithic Architecture in its traditional incarnation or as a Distributed Monolith.

Clean Architecture is a concept that can significantly improve Flutter's performance by separating its operations into three layers for improved efficiency.

WhatsApp is one of the most used platforms for messaging. Information is sent immediately, which is why more websites use it for communicating with their users.

In this blog, we provide an overview of Alluxio’s solution to improve training performance and simplify data management.

PostgreSQL replication using python and RabbitMQ for providing your database server with High Availability by easily making replicas of your master server.

Have you heard of microservices? Of course, you have - any housewife already knows how to deploy them on a k8s cluster. Here is some thinking about them.

Today we will do a short review and features comparison of dbForge SQL Complete and SSMSBoost.

Microservice architecture is the optimal approach to software development.

Digitalization is one of the major things in today’s dynamic business environment. Most industries are adopting technology at a breakneck pace.

TL;DR;

Here is what to know about Arm server's recent CPU architecture updates and why they're important for 5G, AI and security.

o compare monolithic vs microservices pros and cons, we should have a look at the perks and pitfalls of each architecture first

Discover how to apply Domain-Driven Design principles to decompose micro-frontends. Improve your front-end architecture and enhance your development workflow.

Firecracker is a Virtual Machine Monitor, written in Rust that Amazon Web Services use to power it’s Serverless Compute services — Lambda and Fargate. Firecracker makes use of Linux’s Kernel-based Virtual Machine virtualisation infrastructure to provide its products with MicroVMs.

Explore JavaScript memory architecture. Main concepts and organization. Processes of memory allocation and release. Garbage Collection.

The development life cycles of applications in an enterprise environment often follow a common theme. An application begins life with a clear purpose in mind and over time has requirements brought in that cause incremental additions to the scope of the original concept. These additions could either be completely in sync with the original concept or perhaps the requirement just had no better home to belong in. As the application matures to an end-of-life state it has now grown far past its original intended purpose and is in dire need of a refactor — breaking down the monolithic beast into smaller and more succinct components.

I have seen cloud tech change a lot in my 10 years of experience. AWS and GCP were not the default choice a few years ago, and I have worked in companies that bought and installed physical servers. What a nightmare! And this is why trying out serverless was the natural next step for me. I think everyone should give it a shot, and I wanted to share my experience!

I transitioned from Software Architect to Solution Architect b/c you know perfectly well software libraries and you don’t know well infrastructure components.

A general interview of DoubleX, one of those being nominated for HackerNoon Contributor of the Year - architecture, which is one of the Noonies award.

How do you define a Clean Event-Driven Architecture? Are there some patterns to help? How do you build it? Have you got any more questions? Let's answer them!

Avoiding the small monolith antipattern. At what scale do Microservices make sense? Avoid a solution worse than the problem and understand the tradeoffs.

Apresentarei aqui algumas abordagens que ajudam( ou podem ajudar) no desempenho e qualidade de seu Front End. Estas ideias foram fundamentadas em minha experiência profissional e no curso de Arquitetura de Software. Serei mais sucinto possível. Qualquer dúvida entrem contato comigo.

The output is what measures the success of a business. Therefore, all the business houses are adopting all the inevitable methods and programs to intensify their productivity/ output by adopting new technologies and concepts. There are several technologies available and many in the developing phase, which effectively fulfil customers’ needs and generates high output.

We chose to use GoReleaser with our distro of the OpenTelemetry Collector in order to simplify how we build and support many operating systems and architectures

MVC In Ruby On Rails.

Aggregating into data lakes is the solution of today — but are Federated Sources the solution of tomorrow?

Regardless of how great your content is, if you have the wrong CMS, your content won’t make even an ounce of impact on your customers.

Context

Last week, I wrote about putting the right feature at the right place. I used rate limiting as an example Today, I'll use another example.

A lot of companies struggle to bring their data science projects into production. It is mainly because there is a huge knowledge gap.

There are several architectures that could be followed to achieve multi-tenancy at the database layer.

This is the first in a series of posts about my experiences developing software in healthcare with my team over the last few years. For most of that time we’ve worked in eye care, with doctors and patients in major centres in Europe, North America and Australia, as well as with global life science companies, on projects aimed at improving care delivery and patient outcomes.

Solo founder, CTO for a small team, or side-hustler. The story is the same. When your app goes down, you’re on the hook. So, what can you do to reduce those dreaded 2AM page alerts?

It’s been a hell of a ride.

What is Zero-Trust Architecture and why is it Relevant Today?Breaking Down Zero Trust Architecture:

Anyone can make a tiny service. It’s the first thing you do when you make your “Hello World” express server. If you’ve made a “Hello World” express server before, then congratulations! You’ve made a microservice 😜!

If you’re an enterprise architect, you’ve probably heard of and worked with a microservices architecture. And while you might have used REST as your service communications layer in the past, more and more projects are moving to an event-driven architecture. Let’s dive into the pros and cons of this popular architecture, some of the key design choices it entails, and common anti-patterns.

Terraform is a powerful tool to have in your toolset.

In my latest article about “The Rise Of Zero Trust Architecture”, I wrote about the broad and rapid adoption of this relatively new concept in the world of cybersecurity. However, there are still several other security architectures which are in use today:

The idea behind server-side caching is to compute the resource once and serve it from the cache to all clients.

Your website failed under load from online traffic. What went wrong? There’s usually not a single flaw, but odds are 1 of these 6 technical flaws is at fault.

An outage (also known as downtime) is a period of time when a given service or system is unavailable, failing to provide and perform its primary functionality.

When building applications, it's common to be coordinating frontends, databases, worker queues, and APIs. Traditionally, queues and APIs are kept separate; queues handle long-running or CPU intensive tasks and APIs serve quick responses to keep applications snappy.

An architecture for writing and organizing your Unit & Integration Tests for Node.js REST APIs using Jest, Supertest & Chai.

If you’ve ever been involved in sprint planning and argued to carve out time to pay back some technical debt (i.e. define a tech debt budget), this is how to go about it.

“The definition of genius is taking the complex and making it simple.” - Albert Einstein

This article uses Exercise number 10 on the Self JOIN SQL ZOO tutorial to teach self JOINs in a beginner-friendly way.

Presto and Alluxio working together enable a unified, robust, high-performance, low-latency, and cost-effective analytics architecture.

This is the second story of Road to Simplicity. And it’s about the role of tests in software writing.

My team has recently successfully decoupled one of the critical business domains of the company. The initial integration had such a tough deadline that the only way to meet it was to add code to the monolith. And… The feature that went from conception to production in three weeks ended up taking almost one year to decouple.

The Cultural Tutor describes how beauty is being destroyed by usability.

Property technology (Proptech) has the ability to elevate the real estate industry in all avenues from purchase, maintenance, management, and even investment

This edifice rises from the sand to offer a safe and enjoyable learning environment.🔥

Even given the current situation, part of my Developer Advocate job is to talk at (virtual) conferences. Sometimes, organizers invite me. Yet, most of the times, I need to take part in a CfP. With the sheer numbers of conferences I submit to, I need a tool to manage the status of each submission. Since I started, Trello has been my tool of choice. I’ve a dedicated board with several defined columns: backlog, abandoned, submitted, rejected, submitted and done. A conference is a card that I move around, depending on its status.

Software writing taught me that: a well written software is a simple software.

Data Driven

In the beginning, there were only full-stack developers. We implemented everything in the backend with some PHP or Ruby On Rails and then, with a bit of jQuery running in the frontend, we were done.

To use a microservice architecture, the developer needs to study special technologies that are applicable for such web app development.

This story is about pain, agony, and denial of ready-made solutions. It is also about changes that improve the code’s readability and help the development team stay happy. The object of this post is an interface that helps a program communicate with a database.

The New Cloud-Native World of Containers

In this article, we will focus on the introduction of instructions and circuit constraints of TinyRAM.

My story begins when I was 16. I've always considered myself an ambitious person, always wanting to do things differently and be financially self-sufficient. At that time, I lived with my parents. I was still studying and the weekly money that my parents gave me was not enough to cover my weekend expenses.

Do you run a lot of automation frameworks using Selenium but finding it difficult to scale with a Dockerized infra? Maybe our case study can be of help. Read on

Typically, domain models and UI views are completely separated. A few years ago, we had a good reason to do so because the views were mostly made of imperative code. But now that we have functional UI libraries (e.g., React with hooks), wouldn't it be possible to gather everything together, and implement the views as methods of the models they represent?

Just consider how many service providers and models are in the picture. Therefore, it is time for a new and better approach — Cybersecurity Mesh Architecture.

If you’re confused when you read about “[some software term] as code” or “everything as code,” all you really need to know is that we’re talking about automation: The thing we use to do tedious tasks for us, or orchestrate tasks when they become too large and complex for manual methods.

Big data is on the rise, and data systems are tasked with handling it. But this begs the question: Are these systems up for the task?

Serverless doesn’t mean operating an application without a server, it means that you can operate the app without having to manage a server.

Short answer: Absolutely! Premium CDNs are easily 3 times faster. It doesn't usually cost that much, unless you run a very high traffic site.

Working with a lot of data like products, orders, categories, users and payments is a very important topic when building e-commerce applications. In this post you'll learn the very basics of structuring your noSQL schema so it's fast and scalable for e-commerce scenarios.

Why we should all shift our gaze from the tools we have to the nature of problems and to their solutions.

Latency is caused by offloading processing from an app to an external server. But what if there was a solution to the monolithic common single-cloud geography?

Here are five tips on how Kafka works and how you can get started with Apache Kafka.

AutoCAD is amongst the most widely used CAD systems worldwide. It was published as Autodesk's flagship product in 1982.

Note: This article covers everything that I present in Viet Nam Web Summit 2019 (VNWS2019) — the biggest event of Viet Nam IT Community.

Nowadays, “Serverless” keyword becomes very popular. Serverless is changing how developers and companies alike approach delivering business value using the public cloud. You can easily find a dozen of articles regarding this keyword. However, I’m pretty sure that, there are not too many articles show you step-by-step to migrate an On-Premises application to Serverless, but in this article, I will do!

Understanding how to apply CSS in your project’s codebase can be invaluable when your project begins to scale. Find out why we need a strong CSS architecture.

The architecture of the development workflow is designed based on the quality and quantity of releases. Here, quality refers to the state of bug-free or feature set in each release. And, quantity refers to the number of releases over the course of development. This architecture is not usually that complex; however, it can be a source of confusion.

Introduction

Part two of an explanation on creating Clean Architecture in Flutter with the development of a simple app that works with a NASA API for a demonstration.

A distributed architecture brings in several challenges when it comes to operability and monitoring. Here, one may be dealing with tens if not hundreds of microservices, each of which may or may not have been built by the same team.

Data is to the 21st century what oil was for the 20th century. The importance of data in the 21st century is conspicuous. Data is behind the exponential growth witnessed in the digital age. Increased access to data, through the internet and other technologies, has made the world a global village.

Using LiveData in Coinverse

From load tests to feature toggling to performance profilers, discover 13 expert tips to build performance into your web application.

We're going to explore port forwarding and load balancing with Kong Gateway by spinning up multiple Minecraft servers,

AWS CDK is a relatively new framework that aims for faster development of AWS Cloud stacks when compared to AWS CloudFormation and AWS SAM. This article will present how to deploy a complete AWS CodePipeline using AWS CDK and troubleshoot all common issues that may occur in the process of creating the CDK application. For additional information about the framework, read the previous article named “How AWS CDK facilitates the development process of AWS Cloud Stacks”.

Excellence in Software Engineering has never been a stationary destination where one can arrive sooner or later. It has always been a lifelong journey and learning process which demands consistency and commitment in order for someone to progress rapidly and to stay relevant over the next few years because of the ever-changing tech scenario. This element of uncertainty and demand for consistency has intrigued me since forever and hence compelled me to choose this a full-time career and what I’d like to do, at least for the foreseeable near future. 

This multiplayer game architecture, if technically and economically feasible can reshape the future of gaming.

Google Cloud Architecture for Machine Learning Algorithms in the Telecom Industry

Kubernetes is the de facto standard for running containerized applications. Kubernetes (K8s) is an open-source system for automating deployment, scaling, and management of containerized applications.

Comprehensive List of Feature Store Architectures for Data Scientists and Big Data Professionals

Micro-frontends are the future of frontend web development. Inspired by microservices, which allow you to break up your backend into smaller pieces, micro-frontends allow you to build, test, and deploy pieces of your frontend app independently of each other. Depending on the micro-frontend framework you choose, you can even have multiple micro-frontend apps — written in React, Angular, Vue, or anything else — coexisting peacefully together in the same larger app!