2 điểm bởi click 2026-01-04 | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Sau khi xem Durable Streams, tôi thấy đây là một dự án hay nên đã thử làm thêm một bản triển khai bằng Java, ngôn ngữ chính của tôi.

Tính năng chính

  • Giảm thiểu phụ thuộc vào thư viện cụ thể: Được thiết kế để hạn chế tối đa việc phụ thuộc vào framework hoặc thư viện cụ thể, đồng thời vẫn cung cấp triển khai mặc định nhưng cho phép tùy biến nhiều nhất có thể.
  • Tối ưu cho Virtual thread: Có thể sử dụng từ Java 17 trở lên, nhưng khuyến nghị dùng cùng Virtual thread trên Java 21 trở lên.
  • Tích hợp với các framework JVM chính: Cung cấp adapter cho Spring MVC, Spring WebFlux, Micronaut, Quarkus, Ktor. Vì đã tích hợp sẵn chuyển đổi request/response và xử lý SSE phù hợp với từng framework, nên có thể dùng ngay chỉ với vài dòng cấu hình.
  • Vượt qua kiểm thử tuân thủ giao thức: Đã vượt qua toàn bộ 131 bài kiểm thử tuân thủ do repository durable-streams cung cấp.

Lưu ý

Bộ nhớ lưu trữ dựa trên hệ thống tệp sử dụng Rocksdb để lưu metadata. Rocksdb gần đây đã chuyển từ cách cung cấp fat jar chứa binary cho mọi hệ điều hành lớn sang cách để người dùng tự chọn jar được tối ưu cho từng OS thông qua classifier.
Vì vậy, nếu dùng bộ nhớ lưu trữ dựa trên hệ thống tệp thì bạn cần tự thêm dependency rocksdb.

Ví dụ

gradle

dependencies {  
    implementation("io.durablestreams:durable-streams-server-core:<version>")  
    runtimeOnly("org.rocksdb:rocksdbjni:10.4.2:linux64") // or win64/osx  
}  

maven

<dependency>  
  <groupId>org.rocksdb</groupId>  
  <artifactId>rocksdbjni</artifactId>  
  <version>10.4.2</version>  
  <classifier>linux64</classifier>  
  <scope>runtime</scope>  
</dependency>  

Chưa có bình luận nào.

Chưa có bình luận nào.