Microsoft phát hành mã nguồn GCToolkit

microsoft đã phát hành một vài ngày trước tin tức rằng đã phát hành mã nguồn của công cụ «GCToolkit», là một bộ thư viện để phân tích cú pháp tệp nhật ký Bộ sưu tập rác Java, với tất cả mã GCToolkit có sẵn trên GitHub theo giấy phép MIT.

GCToolkit bao gồm ba mô-đun Java bao gồm các API, trình phân tích cú pháp tệp nhật ký GC và bảng thông báo dựa trên bộ công cụ Vert.x để xây dựng các ứng dụng đáp ứng trên JVM. Với tiện ích này, người dùng có thể tạo các bản quét tùy ý và phức tạp về trạng thái của bộ nhớ được quản lý trong JVM.

Như tên cho thấy, đây là một bộ thư viện để phân tích cú pháp các tệp nhật ký thu gom rác Java (GC) và phân tích cú pháp chúng trong các sự kiện riêng biệt. Đưa ra một API để cải thiện mức độ tương tác với bộ công cụ và tổng hợp dữ liệu, điều này cho phép người dùng tạo các phân tích phức tạp tùy ý về trạng thái của bộ nhớ được quản lý của JVM.

Theo nhóm, đây là điểm nhập người dùng trong GCToolkit để ẩn thông tin chi tiết của các mô-đun bên trong trong một vài lệnh gọi phương thức. Ngoài API, có hai mô-đun khác: mô-đun phân tích cú pháp và Vert.x. Mô-đun phân tích cú pháp dựa trên tập hợp các biểu thức chính quy và mã được viết cho được coi là máy phân tích nhật ký GC mạnh mẽ nhất hiện có.

Chương trình phụ trợ nhắn tin dựa trên Vert.x sử dụng hai xe buýt tin nhắn: trước đây truyền dữ liệu từ một nguồn dữ liệu. Việc triển khai hiện tại chuyển các dòng nhật ký từ tệp nhật ký GC. Các khách hàng của bus này là các bộ phân tích chuyển đổi dữ liệu từ nguồn dữ liệu thành các sự kiện đại diện cho chu kỳ GC hoặc điểm an toàn. Các sự kiện này được xuất bản trên xe buýt thông báo thứ hai: xe buýt sự kiện. Những người đăng ký xe buýt sự kiện sau đó có thể được thông báo và xử lý các sự kiện mà họ quan tâm.

Trình phân tích cú pháp phát ra các sự kiện JVM rời rạc, cho phép bạn viết mã để nắm bắt và phân tích dữ liệu từ các sự kiện này. Để tạo điều kiện thuận lợi cho việc thu thập dữ liệu và phân tích các tệp nhật ký GC, GCToolkit cung cấp một khung tổng hợp đơn giản. Loại dữ liệu mà người dùng muốn nắm bắt hoặc loại phân tích mà họ muốn thực hiện là tùy theo quyết định của người dùng. Ví dụ: để nắm bắt các sự kiện tạm dừng để phân tích mức độ chiếm dụng của đống, trình tổng hợp nắm bắt sự kiện, trích xuất dữ liệu có liên quan và chuyển dữ liệu đến tập hợp.

Điều này tập hợp dữ liệu lại với nhau trong một phân tích có ý nghĩa, chẳng hạn như tổng công suất của đống rác sau khi thu gom rác. Dữ liệu kết quả có thể được trình bày dưới dạng biểu đồ, bảng hoặc một định dạng khác thân thiện hơn với người dùng. Quan trọng hơn, theo nhóm, cấu hình bộ thu không tối ưu sẽ dẫn đến ứng dụng yêu cầu nhiều CPU và bộ nhớ hơn, đồng thời làm giảm trải nghiệm của người dùng cuối. Nói cách khác, một bộ sưu tập được điều chỉnh kém thường có nghĩa là thời gian chạy tốn kém hơn và người dùng không hài lòng.

Với sự quan tâm ngày càng tăng của Microsoft đối với nền tảng Java, tiêu điểm trong mã nguồn mở, nó cũng đang tăng lợi ích cho cộng đồng Java. Sau khi có những đóng góp đáng kể cho cổng macOS M1 và Windows to Arm, Microsoft đã tái khẳng định cam kết của mình với OpenJDK bằng cách giới thiệu phiên bản OpenJDK của riêng mình và tham gia nhóm làm việc Eclipse Adoptium (trước đây gọi là AdoptOpenJDK).

Bằng cách tạo mã nguồn mở GCToolkit, Microsoft đang cố gắng cung cấp một cách tốt hơn để xem nội bộ của JVM về cách nó xử lý GC và cấp phát bộ nhớ. Khả năng hiển thị tốt hơn cho phép cấu hình tốt hơn, mang lại lợi ích cho cả người dùng cuối của ứng dụng và nhân viên kỹ thuật chịu trách nhiệm quản lý ứng dụng.

API đơn giản và cơ chế đầu ra dễ sử dụng hứa hẹn sẽ cải thiện nhiệm vụ đọc nhật ký GC bằng cách cung cấp các cơ chế khác nhau để phân tích, trích xuất và trực quan hóa dữ liệu.

Fuente: https://devblogs.microsoft.com


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.