Danh mụcThẻBài viết

admin

I'm a Full-stack developer

Thẻ

Linked List
Data Structure
Chat GPT
Design Pattern
Microservices
API
AWS CDK
ReactJS
AWS Lightsail
Flutter Mobile
Microservice in a Monorepo
Ngày đăng: 22/06/2023

What is a Monorepo?


Monorepo is a single repository that contains multiple projects, packages, and lib. It is a centralized place that is for sharing, collaborating, and maintenance.

These days, many organizations choose mono repo to manage their source code, since it is too advantageous.


What are the benefits of Monorepo?


There are many advantages for developers when using monorepo:

  1. Easier to refactor the code:
  2. Help to avoid duplicating the code like common models, and code sharing:
  3. Can share CI/CD pipelines:
  4. Quickly find the committer who makes the broken legacy:
  5. Furthermore, a new team member can discover easier:


However, it also has some disadvantages


What are the disadvantages of Monorepo?

  1. Logger build times: spend more time running the build. Do not worry about this because of having some tools which to shorten build times and improve automation.
  2. Increate memory:
  3. Affect on delivery: your bugs or features are not released when the CI/CD pipelines build failed because one of the projects does not work.


What are the popular Monorepo tools?


There are many monorepo tools by Bazel (by Google), Gradle Build Tool (by Gradle, Inc), Lage (by Microsoft), Lerna, Nx (by Nrwl), Pants (by the Pants Build community), Rush (by Microsoft), and Turborepo (by Vercel).



As a workspace growth, the mono repo tool should provide:

Fast local computation caching
Fast local task orchestration
Fast-distributed computation caching
Fast-distributed task execution
Fast transparent remote execution
Fast-detecting affected projects/packages
Understandable workspace analysis
Understandable dependency graph visualization


Conclusion


References:
  1. Monorepo tools
  2. The Pros and Cons of Monorepos
Đề xuất

Create Cognito User Pool with AWS CDK
admin09/06/2023

Create Cognito User Pool with AWS CDK
In the previous post, I showed you how to create a simple S3 bucket. Next, in this article, I will guide you to create a Cognito User Pool.
Semantic Versioning NodeJS
admin07/07/2023

Semantic Versioning NodeJS
How to Use Semantic Versioning in NPM
TypeScript Design Pattern - Adapter
admin08/08/2023

TypeScript Design Pattern - Adapter
This design pattern acts as a bridge between two different interfaces.
Mới nhất

Create Cognito User Pool with AWS CDK
admin09/06/2023

Create Cognito User Pool with AWS CDK
In the previous post, I showed you how to create a simple S3 bucket. Next, in this article, I will guide you to create a Cognito User Pool.
TypeScript Design Pattern - Adapter
admin08/08/2023

TypeScript Design Pattern - Adapter
This design pattern acts as a bridge between two different interfaces.
ĐINH THÀNH CÔNG - Software Developer
admin12/01/2024

ĐINH THÀNH CÔNG - Software Developer
Cong Dinh - Software Developer - My personal website, where I write blogs on a variety of topics and where I have some experiments with new technologies.
Đinh Thành Công Blog

My website, where I write blogs on a variety of topics and where I have some experiments with new technologies.

hotlinelinkedinskypezalofacebook
DMCA.com Protection Status
Góp ý
Họ & Tên
Số điện thoại
Email
Nội dung
Tải ứng dụng
hotline

copyright © 2023 - AGAPIFA

Privacy
Term
About