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

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.
Tạo QRCode App bằng ChatGPT

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
ChatGPT là gì? Tại sao Developer nên lo lắng

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.

OpenGL là gì?

0. Tại sao đi tìm hiểu OpenGL làm cái gì? Gần đây, phải quay sang làm 1 dự án có liên quan đến Computer Graphic, cụ thể là trong không gian 3 chiều (3D). Thực sự, đối với mình nó lại hoàn toàn mới. Ngoài chút kiến thức toán như: Vector, Ma trận (Matrix), vector đơn vị, vài phép cơ bản của Vector thì mình không còn tí kiến thức Đại số nào nữa.

File locking trong linux

1. Giới thiệu File locking (khoá file) là cơ chế để đảm bảo việc đọc/ghi file giữa nhiều process cùng lúc một cách an toàn. Bài này chúng ta sẽ giới thiệu xem cơ chế Locking sinh ra giải quyết vấn đề gì và các ví dụ sử dụng của nó trên bash script và ngôn ngữ C. 2. Nếu vấn đề theo cách muôn thủa Ví dụ mô tả vấn đề cập nhật xen kẽ trong bất cứ hệ thống thông tin nào.

Sử dụng lệnh screen cơ bản

screen là một phần mềm (chạy ở chế độ dòng lệnh) trên Linux rất hữu ích. 1. screen giải quyết vấn đề gì? Vấn đề: Khi bạn kết nối bằng SSH đến server qua 1 terminal, bạn có thể gặp các vấn đề sau: Chương trình bạn định chạy (train 1 con AI, down phim XXX) sẽ rất mất thời gian, bạn không thể đợi đến khi nó xong được. Bạn muốn nó vẫn chạy kể cả khi bạn tắt terminal đi về, hôm sau đến vẫn có cái terminal cũ.

Cảm nhận về zsh sau 1 tháng sử dụng basic

Sau khi update chiếc máy MAC (máy công ty), terminal mặc định trong máy có recommend sang sử dụng zsh thay vì SHELL mặc định trước đó (bash thì phải) thì mới bắt đầu sử dụng thử zsh. Đọc qua một vài lời khen thấy nó khá hay nên quyết định chuyển sang dùng zsh xem sao. Xem có đúng như lời đồn không. Bài này xin tóm tắt một số ý đã tìm hiểu, cảm nhận được.

Vài chú ý khi setup mail server

Mail Server là một trong những ứng dụng phổ biến bậc nhất trong hầu hết các hệ thống thông tin. Theo mình, ngay cả khi các ứng dụng tin nhắn nhóm như Slack, Chatwork, FB Messenger đã thì việc sử dụng mail vẫn rất được ưa chuộng do những tính chất đặc trưng của nớ: như formal hơn, lưu trữ chắc chắn hơn… Lần đầu tiên mình được trực tiếp sờ vào việc cài đặt của một mail server.

Chuyển HTML thành PDF cơ bản

1. Tại sao cần chuyển sang PDF Nhiều lý do để người ta sử dụng PDF thay vì các định dạng khác. Về cơ bản không thể edit nên đảm bảo thống nhất về nội dung hiển thị Ít bị lỗi FONT Tiện lợi khi gửi, nhận: bên nhận và bên gửi luôn thấy chung 1 dữ liệu và ít khi sửa được. Vì PDF gần như tiêu chuẩn để trao đổi dạng tài liệu read-only Đọc được ở trên hầu hết mọi nền tảng: máy tính, điện thoại.

Giải thích log của lệnh sendmail

Bài này sẽ dịch lại một phần của trang: http://sendmail.org/~ca/email/doc8.12/op-sh-2.html Về nội dung liên quan đến format log của sendmail cũng ý nghĩa của từng trường. 0. Sendmail là gì Một phần mềm chạy trên hệ thống Linux (hoặc là *Nix). Có nhiệm vụ gửi mail - ta nên dùng từ phân phối (delivery) thì sẽ chuẩn xác hơn. Gửi mail (hay phân phối mail) nói đơn giản là sử dụng kết nối mạng (có thể là internet hoặc không) thực hiện gửi nội dung có định dạng bằng giao thức như SMTP,… đến máy chứa tài khoản người nhận.

Tensorflow và AVX

1. Lỗi liên quan đến CPU instruction của tensorflow Định cài đặt tensorflow-gpu trên con máy già chạy Intel Xeon X5672 và có gắng GTX 1060 3G để nghịch chút. Nhưng khi kiểm tra xem có chạy được không: >>> import tensorflow as tf Illegal instruction (コアダンプ) Vâng, là lỗi run-time - chỉ xảy ra khi chạy, chứ cài thì chưa xuất hiện vấn đề. 2. AVX là gì Ta tìm hiểu một chút về lỗi kể trên, thì hầu hết đề nói rằng: máy sử dụng CPU không hỗ trợ đầy tập lệnh mà tensorflow đang dùng.

Chuyển sang site mới, tên miền mới

1. Lý do chuyển sang Wordpress hỗ trợ không tốt việc viết bằng markdown Cần một site nhẹ hơn Cần một cách quản lý bài viết dễ hiểu và rõ ràng hơn Chuyển hẳn sang một domain mới để dễ dang 2. Nền tảng sử dụng Lưu trữ: Github page Bộ sinh HTML : Hugo Tên miền: AWS 53

Học Ruby On Rails (RoR)

1. General 2. Scope Biến bắt đầu bằng @* gọi là instance variable https://stackoverflow.com/questions/14319347/variables-in-ruby-on-rails 3. Model 4. View 5. Controller

Bắt đầu về Docker

Docker, là công nghệ rất nổi và có ảnh hưởng đến hầu hết developer. Được coi là một công nghệ ảo hóa ở mức hệ điều hành khi so với các phương pháp ảo hóa phần cứng khác. Theo mình hỏi, kĩ thuật để làm việc này không mới, nó dựa trên kĩ thuật chroot có được sử dụng từ khá lâu trong linux. Nói là vậy, nhưng học để sử dụng thì cần bài bản chút, bài này mình sẽ tóm tắt lại trang Overview từ trang của Docker

Pickle - Thư viện Serialization/Deserialization trong Python

Gần đây khi chạy thử một vài thuật toán Deep Learning, đặc biệt là các thuật toán cung cấp source code sử dụng thư viện Caffe, có gặp một vài vấn đề liên quan đến module Pickle trong Python. Thực ra, bình thường cũng không định viết gì cả. Nhưng chợt nhớ ra mình cũng quan tâm đến chủ đề Serialization/Deserialization này. Nó có vai trò giống như ASN.1 mà có tìm hiểu hồi trước, hay phổ biến nhất của thể loại này là Protocol Buffer của Google, hay Apache Thrift.

Khóa học online đầu tiên về Machine Learning (note 3) - Khó ~~

Tiếp theo bài trước trong loạt note về Khóa học online về Machine Learning đầu tiên. Tuần 6 : Lời khuyên khi ứng áp dụng Machine Learning. Kiến thúc trong phần này không phải nói về thuật toán, mà là kĩ năng, rồi những thứ cần chú ý khi áp dụng Machine Learning. Và tất nhiên của khi áp dụng Deep Learning nữa. Khi áp dụng Machine Learning để giải quyết vấn đề, thì một 2 việc được lặp đi lắm lại là :

Khóa học online đầu tiên về Machine Learning (note 2) - Khó ~~

Tiếp theo bài trước trong loạt note về khóa học online đầu tiên về Machine Learning. Tuần 4 : Neurtal Networks : Biểu diễn Như đã biết, khi nói về dữ liệu, ta thường nói đến một loạt đặc trưng. Ví dụ: người thì có chiều cao, cân nặng, sở thích, etc. Và ta cũng đã biết về tạo cá đặc trưng đa thức khi các đặc trưng bậc 1 không đủ để miêu tả tốt dữ liệu.

Khoá học online đầu tiên về Machine Learning ( note 1) - Khó ~~

Cuối cùng cũng kết thúc khoá học Online đầu tiên về Machine Learnning. Do tiếng Anh cùi, nên dù nhìn sub liên tục nhưng vẫn vô số lần tua lại để xem. Khoá học rất hay, thầy Andrew NG giảng khá kĩ các khái niệm quan trọng. Dù mình biết Machine Learning nặng về Toán, đặc biệt Toán Tối ưu như machinelearningcoban.com viết, nhưng khoá này không tập trung vào những cái đó.

Thực hiện 3 phép tập hợp trên bash

Gần đây do phải làm việc crawling dữ liệu, nên có một chút ít động đến các phép toán tập hợp. Bài này sử dụng để note lại các câu lệnh để thực hiện các phép toán phổ biến với tập hợp. Nội dung được dịch từ bài viết khá chi tiết của pro Peter Krumins chủ trang http://www.catonmat.net/ 1. Phép giao Có rất nhiều cách để tìm giao của 2 tập hơn trong bash.

Một số thứ khi sử dụng command, viết script trong bash

Bài này xin được trích rút một số thứ hữu ích từ bài viết rất hay tên The art of command line và mình cũng đã dịch thử (chưa được review) ở Nghệ thuật sử dụng dòng lệnh 1. Hạn chế gõ lại câu lệnh cho dù là rất ngắn Hãy sử dụng chức năng tìm đoạn đang gõ trong history để làm giảm công gõ lại Hai chức năng tìm xuôi và tìm ngược được bash cung cấp rồi.