Vấn đề tốn bộ nhờ (Memory) và CPU khi export file bằng Apache POI

Môi trường, điều kiện Ghi 1 triệu row ra file excel Môi trường: AMD Ryzen 5 3600 6-Core Processor Mem: 15Gi Khi sủ dụng với xssfworkbook Thời gian chạy : 24.7 s ➜ excel-performance-test mvn exec:java -Dexec.mainClass="com.example.ExcelPerformanceTestXSSFWorkbook" [INFO] Scanning for projects... [INFO] [INFO] -----------------< com.example:excel-performance-test >----------------- [INFO] Building excel-performance-test 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- exec-maven-plugin:3.1.0:java (default-cli) @ excel-performance-test --- Execution time: 24486 ms [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 24.776 s [INFO] Finished at: 2023-11-09T06:56:38+09:00 CPU, Memory Usage : Khi sử dụng với sxssfworkbook Thời gian chạy : 5.1 s ➜ excel-performance-test mvn exec:java -Dexec.mainClass="com.example.ExcelPerformanceTestSXSSFWorkbook" [INFO] Scanning for projects... [INFO] [INFO] -----------------< com.example:excel-performance-test >----------------- [INFO] Building excel-performance-test 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- exec-maven-plugin:3.1.0:java (default-cli) @ excel-performance-test --- Execution time: 4779 ms [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 5.106 s [INFO] Finished at: 2023-11-09T06:58:12+09:00 [INFO] ------------------------------------------------------------------------ CPU, Memory Usage Đánh giá: Sử dụng sxssfworkbook cho thời gian chạy nhanh hơn : 24.7 s vs 5.1 s Sử dụng sxssfworkbook cho mức độ chiếm dụng CPU ít hơn Sử dụng sxssfworkbook thì ghi file thường xuyên hơn Có thể điều chỉnh được bằng Buffer size (ở ví dụ trên đang để 1000 row) Một số chú ý Khi sử dụng sxssfworkbook thì một số thao tác GetRow sẽ không thể hoạt động được nữa. Tức là một phần của file Excel đã bị ghi ra rồi thì không thể tham chiếu lại nữa. Tham khảo https://poi.apache.org/ Code trên đều viết bằng ChatGPT

tháng 11 1, 2023

Tạo QRCode App bằng ChatGPT

Một vài hình ảnh Prompts đã sử dụng https://chat.openai.com/share/17cc3dd3-f2a5-4828-8adf-382fbace5da5 Github https://github.com/minatu2d/simpleqr

tháng 7 20, 2023

ChatGPT là gì? Tại sao Developer nên lo lắng

Đăng kí sử dụng Vào địa chỉ chat.openai.com sau đó đăng kí 1 account Có thể đăng kí bằng tài khoản Google, Microsoft hoặc Apple Hoặc dùng email bất kì Ta sẽ có một giao diện chat để sử dụng. Hỏi thử Bảo ChatGPT tự giới thiệu về chính ChatGPT Hỏi : Viết một bài giới thiệu về ChatGPT cho Developer. Trả lời : ChatGPT là một mô hình ngôn ngữ thông minh được phát triển bởi OpenAI dựa trên kiến trúc GPT-3.5. Với khả năng mô phỏng và tương tác ngôn ngữ tự nhiên, ChatGPT mang đến cho bạn một công cụ mạnh mẽ để xây dựng ứng dụng, dịch vụ và sản phẩm mới sử dụng trí tuệ nhân tạo. ...

tháng 7 7, 2023