Khi chạy OpenSearch trong môi trường production, việc thay đổi mapping, settings hoặc số lượng shard thường gây ra downtime hoặc nguy cơ mất dữ liệu ghi. Plugin AOSC (Async Online Schema Change) là một giải pháp mở nguồn cho phép tạo chỉ mục mới, sao chép dữ liệu đang ghi qua cơ chế write‑forwarding và sau đó chuyển đổi alias một cách nguyên tử. Quá trình này diễn ra hoàn toàn trực tuyến: không ngừng việc ghi mới, không mất bất kỳ tài liệu nào và chỉ mục cũ được xoá sau khi xác nhận chuyển đổi thành công. Kết quả là các thay đổi schema và mở rộng shard có thể thực hiện mà không cần ngừng dịch vụ, giữ tính sẵn sàng cao cho cụm tìm kiếm. Điều này cho thấy mẫu “write‑forwarding + reindex + atomic alias swap” có thể được áp dụng rộng rãi trong các hệ thống tìm kiếm phân tán để thực hiện thay đổi trực tuyến an toàn.
Why read it: Bài viết này giúp lập trình viên quản lý hiệu quả việc thay đổi cấu trúc index OpenSearch trong khi hệ thống vẫn hoạt động bình thường.
Answer 3 short questions to earn reward points for this article. Only do it if you want the points.
3 questions · under a minute · optional
Source: https://opensearch.org/blog/online-index-migration-and-shard-scaling-in-opensearch-with-the-aosc-plugin. 8 Sync News only summarizes and links out; content copyright belongs to the authors and original sources.
Đang tải bình luận…
Một người hâm mộ đã port EmuTOS – bản triển khai mã nguồn mở của hệ điều hành Atari TOS – lên Sega Mega CD. Port hiện tại hỗ trợ bàn phím nối tiếp, máy in, âm thanh và có thể mount các thiết bị như đĩa CD/cartridge khởi động, RAMdisk, RAM sao lưu và RAM lưu trữ cartridge. Ngoài ra, đang có công việc đầu tiên để port bộ giao diện GEOS lên cùng nền tảng này. Vì không có ảnh chụp màn hình, người dùng chỉ cần grava ISO hoặc flash cartridge trên phần cứng gốc để chạy hệ thống. Điều này cho thấy việc portar một hệ điều hành cũ sang phần cứng không liên quan có thể thực hiện với công sức tối thiểu khi dựa trên mã nguồn mở.
Một lập trình viên nên đọc bài này để khám phá cách một dự án port hệ điều kiện Atari sang Sega Mega CD mở ra tiềm năng học hỏi về tương thích phần cứng và tối ưu hóa hệ thống đa nền tảng.
Bài viết bắt đầu từ việc nhóm gRPC‑Rust vừa hoàn thành bản preview phía client, đánh dấu bước đầu tiên trong việc đưa gRPC vào hệ sinh thái Rust sau hơn một năm phát triển. Nguyên nhân kỹ thuật được nêu là việc triển khai đầy đủ các tính năng HTTP/2 và mã hóa TLS dựa trên thư viện hyper và tokio, đồng thời hoàn thiện bộ tạo mã prost để hỗ trợ dịch vụ protobuf. Hệ quả của bước này là các nhà phát triển Rust có thể ngay lập tức sử dụng gRPC để xây dựng ứng dụng client hiệu suất cao mà không cần phụ thuộc vào các binding C, giảm thiểu độ trễ và tăng tính an toàn bộ nhớ. Điều đáng học từ roadmap là việc tách biệt rõ ràng giữa client và server trong kế hoạch phát hành giúp tập trung資源 vào từng lớp giao thức, đồng thời minh họa lợi thế của việc dựa vào hệ thống async/await của Rust để mở rộng khả năng xử lý song song. Cuối cùng, bài viết khẳng định rằng mục tiêu tiếp theo là đưa ra bản ổn định phía server trong quý 3/2024, kèm theo hỗ trợ cân bằng tải và tích hợp với các framework web như Actix và Warp.
Bài này cung cấp lộ trình phát triển tiếp theo của gRPC-Rust giúp lập trình viên nắm định hướng công nghệ và lên kế hoạch phát triển hệ thống hiệu quả.
Bài viết là số 347 của bản tin Hashtag Jakarta EE, lấy bối cảnh từ bài phát biểu tại JakartaOne Dominican Republic 2026 nơi tác giả đã nhấn mạnh về plugin Coffee Builder do Diego Silva Limaco phát triển. Plugin này được thiết kế để tự động hoá các tác vụ lặp lại như tạo mã boilerplate, cấu hình dependencies và chạy build, nhằm giảm bớt công việc thủ công cho nhà phát triển Jakarta EE. Tin vui mới nhất là Diego vừa nộp một đề xuất dự án (project proposal) để đưa Coffee Builder vào danh sách công cụ chính thức của Jakarta EE, mở đường cho việc tích hợp rộng hơn trong ecosystem. Điều này cho thấy việc đóng góp nguồn mở từ cá nhân có thể phát triển thành tiêu chuẩn ngành, nhắc nhở lập trình viên nên theo dõi và tham gia vào các dự án cộng đồng để nâng cao hiệu suất làm việc.
Bài viết giới thiệu dự án Coffee Builder plugin giúp đơn giản hóa công việc hàng ngày cho lập trình viên Jakarta EE.
Terminal-code mang lại trải nghiệm làm việc với VS Code ngay trong giao diện terminal …
LibreDB Studio là IDE SQL mã nguồn mở, tự host cho PostgreSQL chạy trên trình duyệt, triển …
Bài viết giải thích thiết kế hệ thống từ đơn giản (máy chủ đơn) đến phức tạp (hàng triệu người dùng), bao gồm API, cơ sở dữ liệu, caching, CDN, load balancing và hạ tầng sản xuất.
Bài viết giúp bạn hiểu rõ cách xây dựng cơ sở hạ tầng thực tế từ những nguyên tắc cơ bản nhất, từ đó tránh những sai lầm thường gặp khi mở rộng hệ thống khi còn mới mẻ.
Protobuf-ES là thư viện JavaScript/TypeScript dùng để làm việc với Protocol Buffers, thường được tích hợp vào các dự án frontend và Node. Phiên bản v2.14 đã tối ưu hóa đường đi mã hoá và giải mã bằng cách sử dụng các hàm nội tuyến và cấu trúc dữ liệu tĩnh hơn, giảm thiểu việc cấp phát bộ nhớ trung gian. Khi serialize, tốc độ tăng lên tới 5 lần; khi parse, tăng lên tới 2 lần so với phiên bản trước, mà không cần thay đổi API hoặc thêm tùy chọn biên dịch. Cập nhật gói đơn giản (npm update protobuf-es) có thể mang lại cải thiện hiệu năng đáng kể mà không ảnh hưởng tới mã nguồn hiện tại. Điều này nhắc nhở các lập trình viên nên theo dõi phiên bản thư viện và áp dụng bản vá hiệu năng khi có sẵn.
Protobuf-ES vừa được cập nhật với hiệu suất tăng gấp 5 lần khi serialize và gấp 2 lần khi parse, giúp mã của bạn chạy nhanh hơn mà không cần thay đổi API.
Bài viết mô tả việc nâng cấp một demo LangGraph AI agent đặt lịch từ bộ nhớ trong (MemorySaver checkpointer kết hợp với một Python list làm BookingRepository) sang một lớp lưu trữ thực sự dựa trên Postgres. Nguyên nhân kỹ thuật là trạng thái trong bộ nhớ bị mất khi tiến trình khởi động lại và không có cơ chế khóa chung, dẫn đến nguy cơ đặt trùng lặp giữa các phiên làm việc khác nhau. Hệ quả là cần thiết kế một giao thức BookingRepository để cho phép thay đổi dễ dàng giữa InMemoryBookingRepository và PostgresBookingRepository, đồng thời định nghĩa schema gồm hai bảng technicians và bookings để các nút graph như generate_schedule_options_node và confirm_booking_node có thể đọc và ghi dữ liệu. Bài cũng cung cấp mã nguồn trên GitBox và hứa bài sau sẽ hướng dẫn cấu hình Docker và Postgres được lưu trữ. Điều đáng học là việc trừu tượng hóa lớp repository giúp duy trì tính bền vững và an toàn đồng thời mà không thay đổi logic luồng đồ thị.
Bài này giúp bạn hiểu cách xây dựng một hệ thống backend phù hợp với lưu trữ Postgres cho agent LangGraph, giải quyết các vấn đề về trạng thái mất mát và rủi ro đặt phòng trùng lặp.
Read the news here, practice coding, follow structured courses and train for IELTS on our sibling products — all connected through one 8 Sync account.
The ecosystem home: product overviews, blog and full pricing.
ExploreLearn along a clear roadmap: videos, auto-graded quizzes, certificates and mentors who ship for a living.
View the roadmap1,000+ DSA problems in Vietnamese, auto-graded across 7 languages — many FREE, right in your browser.
Practice for freeAI grading for all four IELTS skills with detailed rubric feedback.
Try it freeA 22 MB AI IDE for Vietnamese devs.
Download freeOrganizational memory for AI agents.
ExploreAI that staffs your Fanpage and qualifies leads for you.
Try it