Advanced Communication Patterns in Microservices

Inter-service communication is a cornerstone of microservices architecture. As systems scale, choosing the right communication patterns ensures efficient, reliable, and scalable operations. In this guide, we’ll focus on implementing advanced communication patterns in Python, including request-response, event-driven architecture, and asynchronous messaging.

Read More

Getting Started with InfluxDB and Python

InfluxDB is a high-performance time-series database developed by InfluxData, specifically designed for handling time-stamped data like metrics and events. It is optimized for queries, storage, and retrieval of data over time, making it an excellent choice for applications in monitoring, analytics, and real-time data processing.

Read More

Introducing Flask-Migrate - Database Migration Management in Flask

Flask-Migrate is a powerful extension for Flask that simplifies database migration management. Built on top of Alembic, a database versioning tool for SQLAlchemy, Flask-Migrate allows you to perform operations like adding, modifying, and deleting tables in your database without directly interacting with it.

Read More

Giới thiệu về JWT

JSON Web Token (JWT) là một tiêu chuẩn mở được định nghĩa tại RFC 7519 cho việc truyền thông tin một cách an toàn giữa các bên như là một JSON object.

Read More

A Quick Guide for concurrency in Go

Introduction to Concurrency

Concurrency: ability to deal with many task at once. It quite similar with parallelism but let consider 2 examples to show the different of them.

Read More

Golang 10 - Concurrency - Mutex

Critical section

Định nghĩa critical section trong lập trình concurrent: Khi chương trình đang chạy, một phần đoạn code có thể thay đổi resource dùng chung thì không nên được access bởi nhiều Goroutines tại cùng một thời điểm. Đoạn code modifies shared resource được gọi là critical section.

Read More

Golang 7 - Concurrency - Channels

Channels là gì

Channel có thể hiêu là những đường ống (pipes) để các Goroutines giao tiếp với nhau. Giống như nước chảy từ đầu này qua đầu kia của một đường ống, data co thể được gửi từ đầu này qua đầu kia bằng cách sử dụng channels

Read More

Golang 6 - Concurrency - Goroutines

Trong bài trước, chúng ta đã thảo luận về concurency và sự khác biệt giữa concurency và parallelism. Trong bài này chúng ta sẽ nói về cách Go handle concurrency sử dụng Goroutines

Read More

Golang 1 - Interfaces - Giới thiệu

Interface là gì

Trong Go, interface là một tập hợp các method signatures. Khi một type định nghĩa tất cả các methods trong một interface, nó đợi nói là đã implemennt interface đó. Tương đương trong OOP, interface đinh nghĩa method type phải có, việc implement như thế nào phụ thuộc vào type

Read More

PostgreSQL 2 - Transaction Isolation

PostgreSQL là một hệ quản trị cơ sở dữ liệu phổ biến với nhiều tính năng mạnh mẽ. Trong đó, Transaction Isolation là một tính năng quan trọng giúp đảm bảo tính toàn vẹn của dữ liệu trong khi thực hiện các thao tác cập nhật.

Read More

PostgreSQL 1 - Indexes

Chỉ mục (indexes) là một cách thông dụng để cải thiện hiệu suất của cơ sở dữ liệu. Chỉ mục cho phép máy chủ cơ sở dữ liệu tìm kiếm và truy xuất các hàng cụ thể nhanh hơn nhiều so với khi không có chỉ mục. Tuy nhiên, chỉ mục cũng làm tăng chi phí tổng thể của hệ thống cơ sở dữ liệu, do đó nên sử dụng chỉ mục một cách hợp lý.

Read More

Django ORM 1 - Tối ưu hóa truy vấn bằng select_related và prefetch_related

Trong quá trình phát triển ứng dụng web sử dụng Django ORM, tối ưu hóa truy vấn là một khía cạnh quan trọng để đảm bảo hiệu suất và tốc độ của ứng dụng, đồng thời tránh gặp phải vấn đề n+1 query. Trong Django ORM hỗ trợ hai công cụ để làm việc này là select_relatedprefetch_related

Read More

Giới thiệu về Python Decorator Function

Trong Python, Decorator là một tính năng mạnh mẽ cho phép bạn thay đổi hoặc mở rộng hành vi của một hàm mà không cần thay đổi mã nguồn gốc của hàm đó. Decorator giúp tách biệt việc xử lý logic và chức năng bổ sung, đồng thời cung cấp một cách linh hoạt để mở rộng chức năng của một hàm.

Read More

You're up and running!

Next you can update your site name, avatar and other options using the _config.yml file in the root of your repository (shown below).

Read More