Chuyển đến nội dung chính

Bài đăng

[Microservice] Các khái niệm chính trong microservice 1. Monolithic Architecture Các ứng dụng doanh nghiệp ngày nay đang được thiết kế để đáp ứng được số lượng lớn nghiệp vụ kinh doanh. Do đó một ứng dụng phần mềm cần cung cấp hàng trăm chức năng và tất cả các những chức năng như vậy thường được gói gọn trong một ứng dụng nguyên khối duy nhất. ERP, CRM và các hệ thống phần mềm khác nhau là những ví dụ điển hình – chúng được xây dựng dưới dạng nguyên khối với hàng trăm chức năng. Việc triển khai, xử lý sự cố, mở rộng và nâng cấp các ứng dụng như vậy quả là một cơn ác mộng đối với bất kỳ doanh nghiệp nào. Kiến trúc hướng dịch vụ (service-oriented architecture – SOA) được thiết kế để khắc phục các vấn đề phát sinh từ ứng dụng một khối (monolithic) bằng cách đưa ra khái niệm service. Do đó, với SOA, một ứng dụng sẽ được thiết kế dưới dạng kết hợp các service khác nhau. Khái niệm SOA không có nghĩa là biến từng service thành một khối riêng, nhưng hầu hết các ứng dụng triển khai theo S...
Các bài đăng gần đây
Composite Pattern in Java 1. Composite Pattern  Conposite Pattern là một mẫu cấu trúc, kết hợp các đối tượng thành một cấu trúc cây để thể hiện hệ thống phân cấp xử lý - Composite Design Pattern mô tả các nhóm đối tượng có thể được xử lý theo một cách như một instance của cùng một loại đối tượng, - Composite Pattern cho phép chúng ta kết hợp các đối tượng thành các cấu trúc cây để thể hiện hệ thống phân cấp toàn bộ. - Ngoài ra Composite Pattern cũng cho phép chúng ta xử lý các đối tượng theo cùng một cách. - Cấu trúc cây trong Composite Pattern cho phép chúng ta có một cấu trúc cây cho mỗi nút khi thực hiện một nhiệm vụ. 2. Thành phần trong Composite Pattern  - Component : Khai báo Interface (hoặc Abstrast Class ) chung cho các thành phần đối tượng, chứa các method thao tác chung của các thành phần đối tượng. - Leaf : Class thực hiện hành vi mặc định của thành phần cơ sở. Nó không chứa một tham chiếu đến các đối tượng khác. - Composite : Định nghĩa mộ...
Caching Http Request trong Angular với Rxjs Thông thường khi làm việc với ứng dụng, chúng ta tạo HTTP request để truy cập data từ API. Đôi khi chúng ta gọi đến một API nhiều lần trong một khoảng thời gian nhất định, caching được sử dụng để tránh việc lặp lại request đến server. Có nhiều cách để thực hiện việc caching, trong bài này tôi sẽ sử dụng RxJs bởi vì nó đơn giản. Đầu tiên chúng ta khởi tạo project cùng 2 component là ImageListComponent ImageDetailComponent. Hai component này có chung nhiệm vụ hiển thị list các image ra màn hình Bắt đầu bằng việc tạo Angular service, HttpClient service trong angular gọi đến link api  http://5c6e54864fa1c9001424233c.mockapi.io/api/image  (bạn có thể tạo api test ở  MockAPi ) Như ban đầu chúng ta đề cập, 2 component trên sẽ cùng gọi đến cùng một API, vì thế trong hàm getImageList() chúng ta sẽ thực hiện việc lưu trữ data bằng cách subscribing observable được trả về. Khi phương thức getImageList() được gọi, ...
Đa ngôn ngữ trong Angular  Trong phần này mình sẽ thêm chức năng đa ngôn ngữ cho project angular. Chúng ta sử dụng thư viện @ngx-translate cho bài viết, bạn có thể tham khảo ở  @ngx-translate   Trước tiên chúng ta cần tạo project và import thư viện: ng new angular-translate cd  angular-translate npm install @ngx-translate/core --save npm install @ngx-translate/http-loader --save Sau đó chúng ta import thư viện  TranslateModule  vào app.module.ts: -Tiếp đó chúng ta tao 2 file en.json và vn.json vào thư mục /assets/i18n/en.json -Tiếp đó chúng ta thiết lập sự kiện click chuyển ngôn ngữ trong file app.component.ts: - Để hiển thị trên giao diện, chúng ta sử dụng service TranslateService đã được khai báo trong contructor() như một pipe: Kết quả : Bằng việc truyền value vào event switchLanguage() chúng ta có thể thay đổi ngôn ngữ của trang Như vậy chúng ta đã hoàn thành xong việ...
Get data from an API service in Angular  1. Promises và Observables  Promises:     Là một đối tượng được lập trình để thao tác bất đồng bộ trong Javascript. Nó đại diện cho một giá trị mà chúng ta muốn thao tác nhưng có thể hiện tại chưa có sẵn nhưng trong tương lại nó có giá trị trong promise đó. Một số đặc điểm của promise là: - Chỉ trả về một giá trị duy nhất, đó có thể là object, array, number.... - Không thể cancel được request - Được khởi tạo ngay mặc dù chưa được đăng ký, miễn là bạn khai báo một promise thì nó sẽ chạy contructor. Promise có ba trạng thái : Pending: khi khởi tạo đối tượng promise, gọi một request đến server. Fulfilled: thao tác gọi đến server thành công sẽ chuyển từ pending sang fulfilled qua phương thức then() (có thể xử lý kết quả thành công trong phương thức then() ). Rejected: khi request đến server bị lỗi, có thể dùng .catch() để bắt lỗi. Observables:     Tương tự như promise nhưng có mộ...