Bỏ qua, tới nội dung chính
Cà Phê & Code Cà Phê & Code
  • Trang chủ
  • Chuyên mục
    • Backend
    • Bảo mật
    • Bảo mật ứng dụng web
    • Cơ sở dữ liệu
    • DevOps
    • Docker
    • Giải thuật
    • Go
    • Hệ điều hành
    • Java
    • Linux
    • Mang
    • Mạng
    • Message Queue
    • Odoo
    • RabbitMQ
    • Spring
    • Trình biên dịch
    • Vert.x

    • Tất cả chuyên mục
  • Sê-ri
  • Thẻ
  • Luyện thi
  • Ghi chú
  • Giới thiệu
  • Liên hệ
Đăng nhập
  1. Trang chủ
  2. Thẻ
  3. io

#io

6 bài viết
Cơ sở dữ liệu 22/09/2026 5 phút

pg_stat_io của PostgreSQL 16: nhìn I/O chi tiết chưa từng có

pg_stat_io là view mới của PG16 tách I/O theo ai gây ra, trên cái gì, và vì sao. Bài này đo thật: một seq scan lớn dùng ring buffer (6,9% hit, 96 nghìn reuses thay vì evictions), extends khi bảng lớn dần, và I/O của VACUUM tách riêng. PostgreSQL 16.

#toi-uu#io#monitoring#database#postgresql#hieu-nang#sql
1
Go 27/07/2026 6 phút

os.ReadFile nạp cả tệp 2GB vào RAM — và mẹo ghi tệp an toàn bằng đổi tên nguyên tử

Làm việc với tệp như làm việc trong phòng lưu trữ hồ sơ: ReadFile là ôm cả tập tài liệu ra một lúc, đọc theo luồng là đọc từng trang tại bàn. Ghi an toàn bằng tệp tạm rồi đổi tên, đường dẫn khả chuyển, và io/fs cho test.

#zero-to-hero#io#go#golang
20
Go 26/07/2026 6 phút

Cùng một vòng ghi, bufio nhanh gấp 58 lần — và một dòng Flush() quên là mất sạch dữ liệu

io.Reader và io.Writer là một đầu nối chuẩn mà mọi nguồn cắm vào mọi đích; mỗi lời gọi hệ thống như một lần qua cửa soát vé tốn tiền, bufio chất đầy xe rồi qua một lần. Scanner và giới hạn 64KB của nó.

#zero-to-hero#io#go#golang
27
Java 28/06/2026 9 phút

Tiếng Viá»t có dấu: đọc sai bảng mã chỉ xấu, ghi sai thì mất luôn dữ liệu

UTF-8 thành mặc định từ Java 18, Files.readString ném lỗi trong khi new String âm thầm thay ký tự, NFC khác NFD khiến tên tệp từ máy Mac 'biến mất' trên Linux, và ba byte BOM vô hình làm lệch độ dài chuỗi.

#encoding#io#unicode#100-ngay-java#java
21
Java 27/06/2026 8 phút

listFiles() trả null cho bốn lý do khác nhau: vì sao nên bỏ hẳn java.io.File

Path là địa chỉ ghi trên phong bì (thao tác chuỗi thuần), Files là chuyến đi giao thật (chạm đĩa), và ba chỗ API java.io cũ nuốt lỗi trong im lặng — trả null hoặc false mà không nói vì sao.

#io#100-ngay-java#nio#java
29
Java 24/06/2026 8 phút

Cùng đếm dòng trong file 130 MB: một cách nổ OutOfMemory với heap 128 MB, cách kia chạy ngon với 61 MB

Tính lười cho phép đọc file lớn hơn cả bộ nhớ, ngắt sớm giúp không đọc phần thừa, và vì sao Files.lines là một trong số ít Stream bắt buộc phải đóng.

#stream#io#100-ngay-java#java#hieu-nang
33
Tìm kiếm
Admin

Nhấp một ngụm cà phê, viết thêm một dòng code

Xem thêm
Chuyên mục
  • Odoo 400
  • Giải thuật 270
  • Cơ sở dữ liệu 237
  • DevOps 102
  • Java 100
  • Hệ điều hành 90
  • Docker 68
  • Spring 60
  • Go 60
  • Linux 54
  • Vert.x 50
  • Mạng 45
  • Trình biên dịch 45
  • Message Queue 40
  • Backend 40
  • RabbitMQ 40
  • Bảo mật 39
  • Bảo mật ứng dụng web 1
Xem nhiều nhất
Bốn mươi dòng kiểm trước khi bấm nút triển khai — mỗi dòng đến từ một lần đã hỏng 10/08/2026 · 121
900 lần chạy test không bắt được lỗi luôn nằm đó — thêm một dòng sleep, nó lộ ra 100% 05/08/2026 · 106
Cùng một jar, ảnh Docker từ 866 MB xuống 126 MB — và cái bẫy làm ảnh nhỏ nhất in tiếng Việt ra dấu hỏi 06/08/2026 · 88
Integer 127 == 127 cho true, nhưng 128 == 128 cho false — vì sao, và bẫy đó ẩn ở đâu 05/05/2026 · 66
Một dòng println nở ra sáu lệnh, dấu cộng nối chuỗi biến thành invokedynamic — mở file .class ra xem 04/05/2026 · 61
Thẻ phổ biến
#zero-to-hero#do-dac#odoo#odoo-19#hieu-nang#developer#lap-trinh#devops#postgresql#sql#java#huong-dan#he-dieu-hanh#database#toi-uu#100-ngay-java#trinh-bien-dich#bao-mat#docker#dong-thoi#container#csdl#docker-compose#spring#go#golang#kubernetes#linux#giam-sat#mang#vertx#cau-truc-du-lieu#co-so-du-lieu#giai-thuat#kien-truc-may-tinh#quan-sat#kafka#message-queue#redis#rabbitmq#orm#web#van-hanh#view#ke-toan#owl#index#microservice#reactive#kho#qweb#website#kien-truc#crm#collections#nhan-su#thiet-ke#ban-hang#controller#do-tin-cay#gioi-thieu#bao-cao#cau-hinh#mua-hang#ecommerce#jvm#report#spring-boot#jpa#monitoring#san-xuat#stream#action#spring-security#test#bloat#du-an#http#oop#planner#tong-ket#context#event-bus#explain#jmh#module#mrp#phan-quyen#ton-kho#vacuum#amqp#bo-nho#email#exchange#io#join#kanban#lien-he#luong-ao#phan-vung#spring-amqp#thanh-toan#bat-dong-bo#concurrency#cong-cu#error#form#functional#go-loi#interface#json#logging#network#routing#spring-mvc#testing#wizard#api#assets#bytecode#chan-doan#chatter#cong-no#connection-pooling#consumer#debug#domain#generics#list#replication#san-pham#scss#statistics#trien-khai#tu-dong-hoa#widget#automation#bat-bien#bom#build#cache#chat-luong#deploy#dich-vu-khach-hang#dlx#erp#event-loop#exception#frontend#gc#group-by#helpdesk#hoa-don#hot-update#inheritance#jackson#javascript#jdbc#kieu-du-lieu#lambda#lo-trinh#luu-tru#maven#migration#nha-cung-cap#phe-duyet#portal#quan-ly-cong-viec#rang-buoc#retry#server-action#snippet#testcontainers#tim-kiem#tracing#tuy-bien#vertx-web#wal#work-mem#xpath#activity#analyze#bao-gia#bao-tri#barcode#batch#bat-dau#bien-the#button#cham-cong#channel#chi-phi#chuan-hoa#cluster#collectors#copy#crud#csrf#da-cong-ty#deadlock#default#delete#dich-thuat#dinh-gia-ton-kho#field-widget#fillfactor#future#giao-dich#giao-dien#giao-hang#ha#hikaricp#hoat-dong#hop-dong#i18n#ir-cron#java-time#jdk#jfr#jit#jsonb#junit#jwt#ke-thua#ket-noi#khoa#lead#log#luong#many2one#menu#model#nap-du-lieu#ngan-hang#nghi-phep#nhap-du-lieu#optional#owasp#parallel#partitioning#pattern-matching#phan-tich#phan-trang#pipeline#prefetch#python#queue#quorum-queue#record#recordset#rest#sap-xep#sealed#search#seo#theme#thue#tich-hop#timeout#timezone#tls#toast#transaction#transientmodel#trigram#tuyen-dung#unicode#upload#websocket#xay-dung-web#xml#abstract-model#ack#active-ids#actuator#addons#aggregate#alignment#analytic#approvals#assert#async#at-least-once#atomic#attachment#attendances#auth#autoboxing#automated-action#autovacuum#backpressure#backup#bang-dieu-khien#bang-gia#ban-hang-online#bao-cao-tai-chinh#bigdecimal#binding#blockingqueue#blog#brin#budget#bulk-load#but-toan#cache-hit-ratio#calendar#ca-nhan-hoa#canh-bao#cas#cham-gio#chart-of-accounts#chat#checklist#checkpoint#chung-chi#circuit-breaker#classloader#classpath#client-action#codec#command#comparator#completablefuture#component#compose#composite#computed#concurrenthashmap#config#cong-doan#cong-tac#constructor#cors#cot-moc#criteria#cron#csp#css#cte#da-hinh#da-ngon-ngu#danh-gia#danh-so#dashboard#datetime#ddl#default-method#delegation#demo-data#deque#developer-mode#dev-mode#devtools#dia-chi#dialog#dieu-chuyen#dieu-khien#dieu-kien#dinh-kem#discuss#display-name#distinct#doi-chieu#doi-sales#doi-soat#do-luong#don-hang#don-mua#don-vi-tinh#do-tre#download#dto#du-bao#editor#effective-cache-size#effective-io-concurrency#email-marketing#employees#encapsulation#encoding#env#ep-kieu#equals#error-boundary#error-handling#etcd#event#executor#exists#fanout#federation#field#filestore#flaky#flatmap#flyway#forkjoin#form-view#full-page-writes#full-text#full-text-search#getter#get-view#gia#giay-bao-co#gin#gist#git#gitops#gop-du-lieu#graalvm#gradle#graph#grep#group#groups#gtgt#handle#hang-doi#hash#hashcode#hashmap#hazelcast#headers#helm#help#hibernate#hoa-don-dien-tu#hoan-tien#hook#hooks#hoot#html#https#huge-pages#idempotency#inherit#inherits#inner-class#invoicing#ir-attachment#ir-sequence#isolation-level#iterator#javac#javap#jlink#jmm#journal#jsonrpc#jstack#keyset#khach-hang#khau-hao#khoa-chinh#khoa-ngoai#khoa-so#khuyen-mai#kiem-ke#kiem-soat#kien-hang#kiosk#knowledge#ky-dien-tu#ky-nang#ky-online#lag#lateral#lazy-load#lazy-queue#like#list-view#lock-date#logical#lo-serial#mail#mail-activity#mail-mail#mail-template#mail-thread#maintenance#maintenance-work-mem#management#many2many#map#materialize#mat-khau#mau-bao-gia#mau-email#ma-vach#max-connections#media#memcached#memory-leak#merge-join#message#message-post#method#mixin#mockito#moi-truong#monetary#mvcc#name-search#nang-cap#native-image#ngan-sach#nginx#nguoi-dung#nhan-hang#nhap-kho#nhat-ky#nhieu-buoc#nio#no-co#notification#n-plus-1#numeric#oauth2#observability#oca#oidc#onchange#on-conflict#one2many#openssl#or#order#outbox#package#padding#pagination#paperformat#partition-management#partition-pruning#partition-wise-join#patch#pdb#pdf#pecs#pgbadger#pgbench#pgbouncer#pg-locks#pg-repack#pg-stat-statements#pgstattuple#pg-trgm#phan-bo#phan-tan#phong-ban#phu-thuoc#pivot#plan-cache#poison-message#port#pprof#prepared-statement#producer#prometheus#promise#properties#props#publisher-confirms#pubsub#pylint#qos#qrcode#quality#quan-he#quyen#quy-trinh#random-page-cost#recruitment#redelivery#reference#regex#registry#reindex#related#replica#requests#res-company#resource#restclient#rfq#route#router#routes-rules#rpc#safe-eval#sao-ke#sao-luu#sargable#scaffold#scaling#scheduled#scheduled-action#sdkman#select#selection#separator#serialization#service-discovery#servlet#session#set#sharding#shared-buffers#shell#shovel#sign#sitemap#skip-locked#sla#slf4j#slice#slots#smart-button#so-cai#sockjs#so-do-to-chuc#solid#sort#source-code#spring-data#ssd#sse#statusbar#streaming#string#struct#structured-concurrency#studio#subquery#sudo#su-kien#switch#sync#synchronized#systray#tagged#tai-dat-hang#tai-khoan#tai-san#t-call#template#text#t-field#t-foreach#thao-tac-hang-loat#the-phan-loai#thiet-ke-api#thiet-lap#thread#threadlocal#thread-pool#thuc-hanh#thue-gtgt#thymeleaf#tieng-viet#tien-te#time#time-off#tinh-phi#toan-tu#to-khai#topic#topology#tour#transactioncase#transient-model#tra-truoc#treemap#tri-thuc#truncate#ttl#tuning#tuyen-duong#ty-gia#type-erasure#ung-dung#union#unlink#unlogged#update#upsert#useref#useservice#usestate#uuid#ux#vacuum-full#validation#varargs#verticle#vhost#viet-nam#viettel#visibility-map#volatile#wait-events#wal-compression#web-client#webclient#webhook#werkzeug#window-function#worker#workers#wraparound#write#xac-thuc-hai-lop#xml-id#xmlrpc#xuat-du-lieu#xuat-kho
Lưu trữ
  • Tháng 9/2026 1214
  • Tháng 8/2026 197
  • Tháng 7/2026 114
  • Tháng 6/2026 64
  • Tháng 5/2026 30
  • Tháng 11/2025 4
  • Tháng 10/2025 27
  • Tháng 9/2025 30
  • Tháng 8/2025 31
  • Tháng 7/2025 30
Theo dõi blog

Nhận email mỗi khi có bài viết mới. Không quảng cáo, huỷ bất cứ lúc nào.

Hoặc dùng RSS
Cà Phê & Code Cà Phê & Code

Cà Phê & Code là blog dành cho những người yêu công nghệ và lập trình. Nơi chia sẻ kiến thức coding, công cụ hữu ích, xu hướng công nghệ, kinh nghiệm phát triển phần mềm và những câu chuyện phía sau màn hình — tất cả được kể theo cách gần gũi, dễ hiểu, như một cuộc trò chuyện bên tách cà phê.

Liên kết
  • Trang chủ
  • Chuyên mục
  • Thẻ
  • Giới thiệu
  • Liên hệ
Chuyên mục nổi bật
Odoo (400)Giải thuật (270)Cơ sở dữ liệu (237)DevOps (102)Java (100)Hệ điều hành (90)Docker (68)Spring (60)Go (60)Linux (54)Vert.x (50)Mạng (45)Trình biên dịch (45)Message Queue (40)Backend (40)RabbitMQ (40)Bảo mật (39)Bảo mật ứng dụng web (1)

© 2026 Cà Phê & Code. Bảo lưu mọi quyền.