Thử Nghiệm Với .Net - Implement hệ thống rút gọn link giống tiny url, bitly phần 1

Posted on:11 tháng 10, 2024 at 08:15

Table of contents

Open Table of contents

Giới thiệu

Trong thời đại số hóa, việc chia sẻ và quản lý các liên kết trở nên cần thiết hơn bao giờ hết. Hệ thống rút gọn link giúp người dùng dễ dàng chia sẻ các URL dài, phức tạp thành những liên kết ngắn gọn, dễ nhớ hơn. Trong bài viết này, chúng ta sẽ tìm hiểu cách xây dựng một hệ thống rút gọn link đơn giản bằng .NET theo kiến trúc Clean Architecture.

Lý do mình làm series này

Mình làm series này với mục đích học hỏi cũng như cập nhập kiến thức về công nghệ mới.

Dây là topic system design mình sẽ follow khi làm app này: Design a URL Shortener - System Design Interview

Cấu trúc thư mục của dự án

Dự án chúng ta xây dựng sẽ lấy tên là Ziply Dự án sẽ được thiết kế follow theo Clean Architecture

1
📦 Ziply
2
├─ src
3
│  ├─ app
4
│  │  ├─ Ziply.Application
5
│  │  ├─ Ziply.Domain
6
│  │  ├─ Ziply.Infrastructure
7
│  │  └─ Ziply.API
8
│  ├─ services
9
│  │  ├─ Ziply.AuthenticationService
10
│  │  ├─ Ziply.EmailService
11
│  │  ├─ Ziply.LoggerService
12
│  │  ├─ Ziply.RedirectService
13
│  │  └─ Ziply.CacheService
14
│  ├─ workers
15
│  │  ├─ Ziply.SendEmailWorker
16
│  │  └─ Ziply.AnalysticWorker
17
│  ├─ ui
18
│  │  └─ Ziply.UI
19
│  └─ shared
20
│     └─ Ziply.Shared
21
└─ tests

Công nghệ sử dụng

Công cụ sử dụng

Kết luận

Trong phần 1 của bài viết, chúng ta đã điểm qua những khái niệm cơ bản về hệ thống rút gọn link và cấu trúc dự án theo kiến trúc Clean Architecture. Ở các phần tiếp theo, chúng ta sẽ đi sâu vào từng bước triển khai cụ thể cho các thành phần trong hệ thống, từ việc thiết lập môi trường phát triển đến việc code cho các Service và API.

Bài viết tham khảo

Design a URL Shortener - System Design Interview