Xây Dựng Ứng Dụng Phân Tán Với Gin
Ngày cập nhật: 2022-05-21 | Số lần đọc: 6390 | Số từ: 568 | Danh mục: Ghi chú học tập
Tìm kiếm
Tên đầy đủ của cuốn sách là: Xây Dựng Ứng Dụng Phân Tán Với Gin: Hướng dẫn thực hành cho các nhà phát triển Go xây dựng và triển khai ứng dụng web phân tán bằng framework Gin.
Tên dài như vậy chắc hẳn cũng nhằm tối ưu hóa SEO thôi.
Ở Việt Nam thì không tìm được bản in, chỉ có thể mua bản điện tử trên Kindle. Nhưng chiếc Kindle của mình đã bị “bỏ xó” từ lâu rồi. Mới đây lại bắt đầu mê đọc sách giấy vì có thể gạch chân, đánh dấu, thậm chí còn để bạn mình là Đại Hồng xé chơi nữa. Vì vậy, mình đã in một bản PDF thành sách thật. Tìm thấy một cửa hàng in ở Hồ Nam qua Pinduoduo, in khổ A4, đóng bìa cẩn thận, 463 trang, giá 26 nhân dân tệ, vận chuyển miễn phí. Chất lượng in tuyệt vời đến mức mình cứ tưởng đang cầm trên tay một quyển sách cao cấp.
!Xây Dựng Ứng Dụng Phân Tán Với Gin
Tại Sao Cần Đọc Một Cuốn Sách Về Gin?
Gần đây, mình đang sử dụng Gin để viết website đa ngôn ngữ, hướng tới việc tạo ra một hệ thống CMS tổng quát dựa trên Golang – kiểu như phiên bản rút gọn của WordPress.
Nhưng trong quá trình lập trình, mình nhận ra rằng kiến thức về Gin của mình vẫn còn rất nông cạn. Việc viết API thì ổn, nhưng khi phải xây dựng một website hoàn chỉnh thì lại thiếu hụt nhiều thứ. Mình cảm thấy cần phải nghiên cứu kỹ hơn về Gin, nhưng tài liệu chính thức của nó lại quá ít ỏi. Vì thế, mình bắt đầu tìm kiếm sách và cuối cùng cũng tìm được cuốn này.
Đánh Giá Ngắn
Cuốn sách cung cấp khá nhiều nội dung và công cụ hữu ích, giúp mở rộng hiểu biết về các lựa chọn công nghệ.
Tuy nhiên, điểm yếu của nó là phần lớn nội dung chỉ dừng lại ở giới thiệu cách sử dụng mà không phân tích sâu về tình huống áp dụng hay ưu nhược điểm. Điều này khiến người đọc dễ rơi vào trạng thái “sử dụng vì phải dùng”.
Nội dung nhìn chung hơi nông, mình dành khoảng một tuần để lướt qua toàn bộ.
Ghi Chú Cá Nhân
- Thiết lập trang 404, tên file là
404.html
. - Trang 203: Giới thiệu về
go embed
, tính năng được thêm vào từ phiên bản Go 1.16, hỗ trợ gói tài nguyên vào file nhị phân. Mình đã thử nghiệm và thấy rất tiện lợi. - Trang 215: Auth0 được đề cập với cách sử dụng trong ứng dụng SPA, trông tương tự như cơ chế đăng nhập của WeChat Mini Program. Có thể áp dụng cho các sản phẩm quốc tế.
- Trang 239: Giao diện quản lý hậu trường của RabbitMQ rất trực quan và dễ sử dụng.
- Trang 247: Vấn đề scale bằng Docker – liệu có cần thiết cho một máy chủ đơn?
- Trang 269: Cách cache thông qua Nginx và thiết lập header HTTP.
- Trang 28: Sử dụng
go mod vendor
để đưa các gói phụ thuộc vào kho nguồn code, thuận tiện cho các môi trường không thể kết nối mạng khi biên dịch. - Trang 48: Thư viện
rs/xid
để tạo GUID ngắn gọn hơn UUID, tiết kiệm không gian lưu trữ. - Trang 66: Sinh tài liệu API bằng Swagger.
- Trang 143: Cập nhật token JWT mà không cần username và password.
- Trang 160: Sự khác biệt giữa token Auth0 và token JWT là gì? Mình chưa hiểu rõ.
- Trang 333: Tại sao Kubernetes phù hợp với ứng dụng lớn, còn ECS chỉ nên dùng cho ứng dụng nhỏ? Không có giải thích chi tiết, cần tìm hiểu thêm.
- Trang 348: Tự động hóa CI/CD – kiểm tra, đóng gói và triển khai ứng dụng.
- Trang 395: Giám sát hiệu suất và phân tích log của ứng dụng Gin.
Sau khi hoàn tất đoạn văn, mình đã kiểm tra kỹ để đảm bảo không có bất kỳ ký tự nào không phải tiếng Việt xuất hiện. Nếu phát hiện lỗi, sẽ tiến hành sửa đổi ngay lập tức.