I. Lời mở đầuTrong lập trình hướng đối tượng, ta có 2 khái niệm quan trọng là class và object. Các design pattern giúp ta làm việc được với các class và object đó 1 cách hiệu quả. Tượng tự như thế, khi phát triển 1 distributed system ta cũng có các design pattern để làm việc với image container và container. II. Single-container management patternsContainer cung cấp các interface được dùng để định nghĩa các chức năng của phần mềm ( upward API ) cũng như tương tác với các hệ thống quản lý phần mềm đó ( downward API ). Việc sử ... »
Mở đầuUnit test là bước đầu tiên trong quy trình kiểm thử phần mềm. Hãy xem mô hình dưới đây để thấy được tầm quan trọng của Unit tests. Khi càng tăng test ở unit tests sẽ càng giảm test ở các tầng trên. Testing TriangleTrong unit test ta sẽ kiểm tra từng phần nhỏ trong code, đó có thể là các method, function trong class, thậm chí là phần nhỏ hơn trong function. Hôm nay tôi sẽ giới thiệu với các bạn framework của React Native giúp thực hiện công việc test đó chính là Jest. 1.Configure Jest ... »
Đối với những lập trình viên thì linux từ lâu đã là 1 người bạn. Mặc dù sự ra đời của Window và MacOs cùng với 1 số tính năng ưu việt hơn nhưng các hệ điều hành nhân linux như Ubuntu, CentOs vẫn được nhiều lập trình viên chọn sử dụng vì 1 số lý do sau: Miễn phí Tính bảo mật cao Hộ trợ môi trường tốt cho việc lập trình Tránh chơi game ... Hiện nay hầu hết các hệ thống server trên toàn thế giới cũng chọn các hệ thống linux làm hệ điều hành. Vì vậy ... »
Mở đầu Nếu có bạn nào làm việc với Kubernetes chắc hẳn là sẽ quan tâm đến vấn đề Zero Downtime. Những bạn nhiều kinh nghiệm chắc hẳn cũng đã tìm hiểu nhiều về vấn đề này, còn đối với những bạn chưa có nhiều kinh nghiệm thì sao? Bài viết này hy vọng sẽ giúp được ít nhiều cho bạn. Nếu bạn search Google với cụm từ "Zero Downtime with Rolling Updates" thì sẽ có rất nhiều kết quả. OK, Let's get started! Rolling Updates Như các bạn cũng biết trong Kubernetes thì Pod được xem là ... »
Mở đầu Khi bạn thiết kế một ứng dụng quan trọng, có tính sẵn sàng cao, khả năng phục hồi là một trong những yếu tố quan trọng nhất cần xem xét. Một ứng dụng có khả năng phục hồi khi nó có thể nhanh chóng phục hồi khi bị failures. Các ứng dụng cloud-native thường được thiết kế để sử dụng kiến trúc microservice nơi mà mỗi thành phần sống trong một container. Để đảm bảo rằng ứng dụng được quản lý bới Kubernetes có tính sẵn sàng cao, có các patterns cụ thể mà bạn cần tuân theo ... »
Hẳn chúng ta ai cũng quen làm việc với các REST API. Tuy nhiên, trong môi trường microservice, việc sử dụng REST API để giao tiếp giữa các service sẽ gây ra độ trễ đáng kể. gRPC ra đời để giải quyết vấn đề này. Trong blog này mình sẽ trình bày nội dung cơ bản liên quan đến gRPC và làm một todo list app demo để chúng ta biết cách sử dụng gRPC trong thực tế nhé. 1. gRPC là gì gRPC là một RPC platform được phát triển bởi Google nhằm tối ưu hoá và tăng tốc ... »
Application lifecycle management là gì? Đầu tiên chúng ta nói đến thế nào là quản lý vòng đời ứng dụng. Đây là một thuật ngữ đề cập đến việc làm thế nào mà các nền tảng ứng dụng có thể tương tác với các thành phần mà nó tạo ra ngay sau khi nó khởi động hoặc trước khi nó dừng lại. Như mọi người đã biết, trong Kubernetes, Pod là một đơn vị cơ bản trong cluster. Pod có thể chứa một hoặc nhiều container cái mà dùng để chạy chương trình ứng dụng của chúng ta. Để hiểu ... »
I.Sơ lược NUXT: ** Nuxt là 1 mã nguồn mở miễn phí dựa trên Vue, NodeJS và Babel. Hỗ trợ tốt tạo ứng dụng Universal(Server Rendered), Single Page App và Static Generated (Pre Rendering). Hỗ trợ SEO tốt bằng cách cho quản lý thẻ HEAD. II.Sơ lược về VUE: VueJs là một thư viện tập trung vào phần view trong mô hình MVVM. VueJs chứa một sức mạnh lớn để xây dựng Single-Page Applications khi được kết hợp với công cụ build và các thư viện/component được xây dựng bởi cộng đồng Link tham khảo về VUE. ... »