Skip to content
21 changes: 21 additions & 0 deletions content/vi/tightly-coupled-architecture.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: Kiến trúc gắn kết chặt chẽ (Tightly Coupled Architecture)
status: Completed
category: Property
tags: ["fundamental", "architecture", "property"]
---

**Kiến trúc gắn kết chặt chẽ (Tightly Coupled Architecture)** là một phong cách kiến trúc trong đó nhiều thành phần của ứng dụng phụ thuộc lẫn nhau
(trái ngược với [kiến trúc ràng buộc lỏng lẻo](/loosely-coupled-architecture/)).
Điều này có nghĩa là khi một thành phần thay đổi, khả năng cao các thành phần khác cũng bị ảnh hưởng theo.
Kiểu kiến trúc này thường dễ triển khai hơn so với kiến trúc gắn kết lỏng lẻo,
nhưng dễ khiến hệ thống rơi vào tình trạng lỗi dây chuyền (cascading failures).
Chúng cũng thường đòi hỏi triển khai đồng bộ giữa các thành phần,
gây ảnh hưởng đến năng suất phát triển của lập trình viên.

Kiến trúc ứng dụng gắn kết chặt chẽ là một cách xây dựng phần mềm truyền thống.
Dù không hoàn toàn phù hợp với các nguyên tắc của [kiến trúc microservice](/microservices-architecture/),
nhưng vẫn có thể hữu ích trong một số trường hợp cụ thể.
Chúng thường đơn giản và nhanh chóng hơn trong giai đoạn khởi đầu,
và tương tự như [ứng dụng nguyên khối (monolithic)](/monolithic-apps/),
có thể rút ngắn đáng kể chu kỳ phát triển ban đầu.
27 changes: 27 additions & 0 deletions content/vi/transport-layer-security.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
title: Bảo mật tầng truyền tải (Transport Layer Security - TLS)
status: Completed
category: Concept
tags: ["security", "networking", ""]
---

**Bảo mật tầng truyền tải (Transport Layer Security – TLS)** là một giao thức được thiết kế nhằm tăng cường bảo mật cho việc truyền thông qua mạng.
TLS đảm bảo dữ liệu được gửi qua Internet đến nơi một cách an toàn,
tránh nguy cơ bị theo dõi và/hoặc thay đổi trong quá trình truyền tải.
Giao thức này được sử dụng rộng rãi trong các ứng dụng như nhắn tin, email, v.v.

## Vấn đề mà TLS giải quyết

Nếu không có TLS, các thông tin nhạy cảm như thói quen duyệt web, nội dung email, cuộc trò chuyện trực tuyến và các cuộc gọi hội nghị
có thể dễ dàng bị theo dõi và chỉnh sửa bởi bên thứ ba trong quá trình truyền tải.
Việc kích hoạt hỗ trợ TLS cho cả ứng dụng máy chủ và máy khách sẽ đảm bảo rằng
dữ liệu trao đổi giữa hai bên được mã hóa và không thể bị xem bởi người khác.

## Cách TLS hỗ trợ
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dịch cái chỗ tiêu đề này không nhất quán giữa các term và không nhất quán với format đang dùng hiện tại


TLS sử dụng kết hợp các kỹ thuật mã hóa để đảm bảo an toàn trong quá trình truyền dữ liệu qua mạng.
TLS cho phép thiết lập kết nối được mã hóa giữa ứng dụng máy khách và máy chủ, chẳng hạn giữa trình duyệt và trang web ngân hàng.
Ngoài ra, TLS cũng giúp ứng dụng máy khách xác minh danh tính của máy chủ mà nó đang kết nối,
giảm thiểu nguy cơ truy cập nhầm vào các trang giả mạo.
Nhờ đó, bên thứ ba không thể quan sát hay theo dõi dữ liệu truyền giữa các ứng dụng sử dụng TLS,
giúp bảo vệ các thông tin nhạy cảm như số thẻ tín dụng, mật khẩu, vị trí, v.v.
29 changes: 29 additions & 0 deletions content/vi/version-control.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
title: Kiểm soát Phiên bản (Version Control)
status: Deprecated
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Không cần phỉa dịch Deprecated.
#3499 (comment)

category: Technology
draft: true
tags: ["methodology", "", ""]
---

**Kiểm soát phiên bản (Version Control)** hay còn gọi là quản lý mã nguồn, là phương pháp theo dõi và quản lý các thay đổi đối với một tài liệu hoặc tập tin theo thời gian. Đây là một hệ thống giúp ghi lại các thay đổi của một hoặc nhiều tập tin để có thể truy xuất lại các phiên bản cụ thể sau này.

## Vấn đề mà nó giải quyết

Hệ thống kiểm soát phiên bản được thiết kế để giải quyết các vấn đề như:

- Lưu trữ và sao lưu mã nguồn hoặc tài liệu khi có thay đổi qua thời gian.
- Cho phép nhiều người cùng chỉnh sửa tài liệu hoặc mã nguồn mà vẫn có thể xử lý được xung đột khi thay đổi trùng lặp.
- Lưu giữ nhật ký thay đổi giúp theo dõi ai đã thay đổi cái gì, khi nào, và vì sao.

Trong các dự án phần mềm, mã nguồn thường rất phức tạp và đóng vai trò quan trọng trong hoạt động kinh doanh, nên việc kiểm soát thay đổi là rất cần thiết. Bên cạnh đó, hầu hết các ứng dụng đều do nhiều lập trình viên cùng phát triển, vì vậy xung đột trong quá trình làm việc là điều không thể tránh khỏi.

## Cách nó hỗ trợ

Kiểm soát phiên bản giúp các lập trình viên làm việc nhanh hơn và hiệu quả hơn bằng cách:

- Ghi lại lịch sử thay đổi để có thể dễ dàng xem lại, hoàn tác hoặc so sánh.
- Hỗ trợ xử lý xung đột khi nhiều người cùng thay đổi một phần mã nguồn.
- Tạo ra kho lưu trữ mã nguồn (repository) để mọi người cùng cộng tác.

Phát triển phần mềm hiện đại phụ thuộc rất nhiều vào các hệ thống kiểm soát phiên bản như **Git**, để đảm bảo sự phối hợp nhịp nhàng giữa các thành viên trong nhóm và duy trì chất lượng mã nguồn.
32 changes: 32 additions & 0 deletions content/vi/vertical-scaling.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
title: Mở rộng theo chiều dọc (Vertical Scaling)
status: Completed
category: Concept
tags: ["infrastructure", "", ""]
---

Mở rộng theo chiều dọc (Vertical Scaling), còn gọi là “mở rộng lên hoặc xuống” (scaling up and down),
là một kỹ thuật tăng khả năng xử lý của hệ thống bằng cách bổ sung CPU và bộ nhớ cho từng [nút (node)](/nodes/) khi khối lượng công việc tăng lên.
Ví dụ, nếu bạn đang dùng một máy tính có RAM 4GB và muốn nâng lên 16GB,
việc chuyển sang hệ thống có RAM 16GB chính là một hình thức mở rộng theo chiều dọc.
(Xem thêm [mở rộng theo chiều ngang](/horizontal-scaling/) để biết phương pháp khác.)

## Vấn đề cần giải quyết

Khi nhu cầu sử dụng ứng dụng vượt quá khả năng hiện tại của một phiên bản ứng dụng,
chúng ta cần một cách để mở rộng (tăng dung lượng cho) hệ thống.
Có hai lựa chọn: bổ sung tài nguyên tính toán cho các nút hiện tại (mở rộng theo chiều dọc)
hoặc thêm nhiều nút mới vào hệ thống (mở rộng theo chiều ngang).
[Tính mở rộng (Scalability)](/scalability/) là yếu tố quan trọng quyết định năng lực cạnh tranh, hiệu suất, uy tín và chất lượng.

## Cách giải quyết

Mở rộng theo chiều dọc cho phép bạn tăng kích thước máy chủ mà không cần thay đổi mã nguồn của ứng dụng.
Điều này khác với mở rộng theo chiều ngang, vốn yêu cầu ứng dụng phải có khả năng nhân bản – có thể cần cập nhật mã nguồn.
Mở rộng theo chiều dọc giúp tăng năng lực xử lý của ứng dụng hiện có
bằng cách bổ sung tài nguyên tính toán, từ đó cho phép ứng dụng xử lý nhiều yêu cầu hơn và thực thi đồng thời hiệu quả hơn.

## Thuật ngữ liên quan

* [Mở rộng theo chiều ngang](/horizontal-scaling/)
* [Tự động mở rộng](/auto-scaling/)