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

    • Xem tất cả
    • Chuyên mục
    • Sê-ri
    • Thẻ
  • Luyện thi
  • Ghi chú
  • Thiết kế CSDL
  • Thông tin
    • Giới thiệu
    • Liên hệ
Đăng nhập
  1. Trang chủ
  2. Thẻ
  3. golang

#golang

212 bài viết
Go 27/07/2026 10 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.

#io#zero-to-hero#golang#go
24
Go 26/07/2026 9 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ó.

#io#zero-to-hero#golang#go
30
Go 25/07/2026 12 phút

'Luôn dùng channel' là hiểu sai châm ngôn nổi tiếng nhất của Go — và số đo cho thấy vì sao

Hỏi 'channel hay mutex nhanh hơn' giống hỏi 'email nhanh hơn hay họp phòng nhanh hơn' — vô nghĩa nếu không biết đang phối hợp việc gì. Đo channel, Mutex và atomic trên cùng khối lượng, và bộ tiêu chí chọn theo cấu trúc bài toán.

#zero-to-hero#dong-thoi#golang#hieu-nang#go
25
Go 24/07/2026 10 phút

errgroup: khi một goroutine hỏng, cả nhóm dừng theo — thứ WaitGroup không làm được

WaitGroup như đội leo núi mạnh ai nấy leo, tới đỉnh mới biết ai kẹt; errgroup buộc cả đội chung một dây có bộ đàm. SetLimit giới hạn đồng thời, và điều errgroup KHÔNG làm.

#zero-to-hero#dong-thoi#golang#go
26
Go 23/07/2026 10 phút

'Chỉ đọc thôi chắc không sao' — câu sai nguy hiểm nhất về đồng thời, đo bằng atomic và mô hình bộ nhớ Go

atomic như cú bật công tắc đèn — không bao giờ có trạng thái nửa vời để ai thấy. Ba con số cho atomic/Mutex/channel, CompareAndSwap, atomic.Pointer, và vì sao 'đua dữ liệu' không phải đọc-ra-giá-trị-cũ mà là không-xác-định.

#zero-to-hero#dong-thoi#golang#go
28
Go 22/07/2026 10 phút

Hàm trả về khi hết giờ, nhưng goroutine bên trong kẹt mãi — và cách sửa bằng đúng một ký tự

Hết giờ bạn bỏ về, người giao hàng làm xong vẫn đứng ở cửa ôm gói không ai nhận. Lan truyền huỷ qua nhiều tầng goroutine, mẫu kết quả có đệm, và ba chỗ context buộc phải xuất hiện.

#zero-to-hero#dong-thoi#context#golang#go
27
  • 1
  • …
  • 27
  • 28
  • 29
  • 30
  • 31
  • …
  • 36

Trang 29 / 36 — tổng 212 bài viết

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
  • Lập trình 216
  • Lập trình Go 133
  • DevOps 114
  • Java 100
  • Hệ điều hành 90
  • Docker 68
  • Go 60
  • Spring 60
  • Bảo mật 57
  • Linux 54
  • Vert.x 50
  • Trình biên dịch 45
  • Mạng 45
  • RabbitMQ 40
  • Backend 40
  • Message Queue 40
  • Công cụ 30
  • Web 18
  • Hệ thống 12
  • Kiến trúc hệ thống 12
  • 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 · 129
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 · 114
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 · 93
Integer 127 == 127 cho true, nhưng 128 == 128 cho false — vì sao, và bẫy đó ẩn ở đâu 05/05/2026 · 72
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 · 66
Thẻ phổ biến
#zero-to-hero#do-dac#hieu-nang#odoo#odoo-19#go#developer#postgresql#devops#golang#lap-trinh#sql#java#database#huong-dan#he-dieu-hanh#toi-uu#bao-mat#100-ngay-java#backend#docker#trinh-bien-dich#container#linux#dong-thoi#csdl#docker-compose#spring#kafka#redis#kubernetes#web#giai-thuat#message-queue#giam-sat#mang#vertx#cau-truc-du-lieu#co-so-du-lieu#kien-truc-may-tinh#performance#quan-sat#orm#rabbitmq#van-hanh#concurrency#kien-truc#view#ke-toan#owl#http#index#microservice#observability#grpc#reactive#runtime#cong-cu#kho#monitoring#networking#bo-nho#qweb#debug#git#mat-ma#version-control#security#website#gc#resilience#crm#data-structures#prometheus#protobuf#serialization#collections#compression#nhan-su#regex#search#testing#thiet-ke#ban-hang#cau-hinh#context#controller#do-tin-cay#elasticsearch#gioi-thieu#interface#probabilistic#shell#algorithms#bao-cao#command-line#compiler#he-thong-lon#json#mua-hang#nen-du-lieu#regular-expression#streaming#system-design#tong-ket#unix#cache#ecommerce#jvm#openssl#owasp#report#spring-boot#stream#distributed#jpa#metrics#san-xuat#vacuum#action#bloat#gzip#io#logging#network#planner#spring-security#test#tracing#benchmark#chan-doan#checklist#du-an#explain#oop#phan-quyen#pprof#retry#tcp#architecture#encoding#event-bus#generics#goroutine#jmh#join#latency#memory#module#mrp#mvcc#scheduler#tls#ton-kho#transaction#amqp#bloom-filter#distributed-systems#email#error#exchange#heap#http2#kanban#lien-he#luong-ao#opentelemetry#phan-vung#replication#spring-amqp#statistics#thanh-toan#bat-dong-bo#binary#debugging#form#functional#go-loi#idempotency#load-balancing#map#middleware#pipeline#profiling#quality#routing#rpc#spring-mvc#sre#wizard#api#assets#atomic#backpressure#backtracking#bat-bien#build#bytecode#cardinality#channel#chatter#closure#cong-no#connection-pool#connection-pooling#consumer#cpu#deadlock#domain#histogram#hot-update#https#isolation#jwt#list#log#mutex#namespace#percentile#rate-limiting#re2#rest#san-pham#scss#sharding#slice#syscall#testcontainers#trien-khai#tu-dong-hoa#unicode#wal#websocket#widget#wire-format#zstd#aes#allocation#assembly#authentication#automation#backoff#bash#bom#cas#chat-luong#circuit-breaker#cqrs#csrf#deploy#dich-vu-khach-hang#dlx#dockerfile#do-tre#entropy#erp#error-handling#escape-analysis#event-driven#event-loop#exception#frontend#grep#group-by#hash-table#helpdesk#hmac#hoa-don#inheritance#interceptor#iterator#jackson#jaeger#javascript#jdbc#kieu-du-lieu#lambda#lock-free#lo-trinh#lua#luu-tru#mat-khau#maven#migration#multiplexing#nginx#nha-cung-cap#outbox#pagination#partition#phe-duyet#portal#quan-ly-cong-viec#queue#rang-buoc#reflect#reflection#server-action#snippet#socket#status-code#string#timeout#tim-kiem#toolchain#tuy-bien#varint#vertx-web#work-mem#xac-thuc#xpath#activity#aead#aggregate#alignment#analytics#analyze#async#auth#autovacuum#awk#bao-gia#bao-tri#barcode#batch#bat-dau#bcrypt#bien-the#big-o#brotli#button#byte#caching#cgroup#cham-cong#chi-phi#chuan-hoa#chung-chi#cluster#codegen#collectors#commit#constant-time#constraint#consumer-group#consumer-lag#copy#cors#count-min-sketch#cron#cross-compile#crud#csp#cte#da-cong-ty#database-sql#deadline#default#delete#delivery-semantics#delve#dependency-inversion#devirtualization#dich-thuat#dictionary#dinh-gia-ton-kho#distributed-lock#dns#do-ben#dynamic-programming#ecdsa#embed#event-sourcing#fanout#field-widget#fillfactor#full-text-search#future#giao-dich#giao-dien#giao-hang#goroutine-leak#graph#greedy#ha#hash#hashing#health-check#he-thong#hikaricp#hoat-dong#hooks#hop-dong#hyperloglog#i18n#inlining#inverted-index#ir-cron#itab#java-time#jdk#jfr#jit#jsonb#junit#keep-alive#ke-thua#ket-noi#khoa#lead#lock#luong#many2one#memory-leak#menu#merge#metadata#model#nap-du-lieu#ngan-hang#nghi-phep#nhap-du-lieu#optimization#optional#ordering#padding#parallel#partitioning#pattern-matching#pbkdf2#pgbouncer#phan-tich#phan-trang#plan9#port#prefetch#prepared-statement#proc#pubsub#python#quorum-queue#rate-limit#realtime#rebase#record#recordset#recovery#registry#replica#retention#sampling#sap-xep#scaling#schema#schema-evolution#sealed#secrets#sed#seo#service-discovery#session#signal#singleflight#skip-locked#sliding-window#slog#sort#stack#strace#struct#tai-nguyen#theme#thread#throughput#thue#tich-hop#tieng-viet#time#timezone#timing-attack#toast#token#transientmodel#trigram#ttl#tuyen-dung#type-parameter#unsafe#upload#window-function#worker-pool#xay-dung-web#xml#x-sync#xz#zigzag#2fa#abstract-model#access-control#ack#active-ids#actuator#addons#aggregation#alerting#alertmanager#allocator#amazon#analytic#analyzer#anchor#an-toan#aof#api-design#api-key#append#approvals#argon2#assert#at-least-once#attachment#attendances#audit#authorization#autoboxing#autocomplete#automated-action#avro#backlog#backreference#backup#bandwidth#bang-dieu-khien#bang-gia#ban-hang-online#bao-cao-tai-chinh#barrier#batch-insert#bce#bearer-token#benchmem#benchstat#bfs#bidirectional#bigdecimal#bigkey#bigtable#binary-search#binding#bind-mount#bisect#blockingqueue#blog#bm25#bool-query#bounds-check#boxing#branch#brin#brute-force#bst#bucket#budget#buffer#build-context#build-tags#bulk#bulkhead#bulk-load#but-toan#bzip2#cache-hit-ratio#cache-line#calendar#cam-bay#cancellation#ca-nhan-hoa#canh-bao#capture-group#cassandra#cay-can-bang#cbc#cbor#cgo#chacha20#cham-gio#character-class#chart-of-accounts#chat#checkpoint#cherry-pick#chmod#chu-ky-so#chunked#c-interop#classloader#classpath#clean-architecture#client-action#cloudflare#codec#code-generation#collision#command#command-injection#comparator#comparison#compatibility#compile-time#completablefuture#component#compose#composite#computed#concurrenthashmap#conditional-compilation#config#configuration#conflict#cong-doan#cong-tac#consensus#consistent-hashing#constructor#con-tro#con-tro-ham#cookie#core-dump#coredump#coroutine#cost#cost-model#cot-moc#coverage#criteria#cross-origin#csprng#css#cuckoo-filter#curl#cut#dag#da-hinh#da-ngon-ngu#danh-gia#danh-so#dashboard#data-processing#datetime#dce#ddd#ddl#dead-code#dead-letter-queue#decoder#deduplication#default-method#deflate#delegation#delta#demo-data#dependencies#dependency-injection#deployment#deque#detached-head#developer-mode#dev-mode#devtools#dfa#dfs#dia-chi#dialog#dieu-chuyen#dieu-khien#dieu-kien#diffie-hellman#dijkstra#dinh-kem#directive#discord#discuss#disk#display-name#distinct#distributed-transaction#dlv#dockerignore#doi-chieu#doi-sales#doi-soat#do-luong#domain-driven-design#don-hang#don-mua#don-vi-tinh#do-phuc-tap#download#dto#dual-write#du-bao#du-lieu#durability#dynamo#ecb#ecdh#editor#effective-cache-size#effective-io-concurrency#elliptic-curve#email-marketing#embed-fs#employees#encapsulation#entity#enum#env#envelope-encryption#ep-kieu#epoll#equals#errgroup#error-boundary#etag#etcd#evacuation#event#eviction#exactly-once#executor#exists#exit-code#expvar#fail-fast#fallback#false-sharing#federation#feed#fetch#ffi#field#file-descriptor#filestore#filter#finalizer#find#flaky#flatbuffers#flatmap#flyway#forkjoin#form-view#for-update#fsck#full-page-writes#full-text#functional-options#fuzzing#fuzzy#garbage-collector#gcm#gctrace#geohash#geospatial#getter#get-view#gia#giay-bao-co#gin#gist#gitignore#gitops#gob#godebug#gogc#go-generate#golangci-lint#golden-file#gomaxprocs#gomemlimit#gomock#go-modules#google#goos#gop-du-lieu#go-redis#gorilla#gossafunc#go-vet#govulncheck#go-work#graalvm#graceful-degradation#graceful-shutdown#gradle#group#groups#grpcurl#gtgt#h3#hàm-bậc-cao#handle#hang-doi#happens-before#haproxy#hashcode#hashicorp#hashmap#hazelcast#header#headers#heavy-hitters#helm#help#hexagonal#hibernate#hmap#hoa-don-dien-tu#hoan-tien#hook#hoot#hsts#html#http3#huffman#huge-pages#idempotence#id-generation#idor#iface#image#image-size#indexing#index-only-scan#inherit#inherits#init#inner-class#instagram#integration-test#internals#invoicing#iot#ir-attachment#ir-sequence#isolation-level#isr#iter-pull#iter-seq#jaccard#javac#javap#jitter#jlink#jmm#job-queue#journal#jsonrpc#jstack#kek-dek#key-rotation#keyset#khach-hang#khau-hao#khoa-chinh#khoa-cong-khai#khoa-ngoai#khoa-so#khuyen-mai#kiem-ke#kiem-soat#kien-hang#kiosk#knowledge#ky-dien-tu#ky-nang#ky-online#lag#lap-lich#lateral#layer#lazy#lazy-load#lazy-queue#leak#level#like#linear-search#linker#linkname#linter#list-view#livelock#load-average#load-shedding#locality#lock-date#log-compaction#logical#logs#lookahead#lookaround#lookbehind#lo-serial#lost-update#lru#lucene#lz4#lz77#ma-hoa#mail#mail-activity#mail-mail#mail-template#mail-thread#maintenance#maintenance-work-mem#management#many2many#mapping#mapstructure#match#materialize#mau-bao-gia#mau-email#ma-vach#max-connections#media#memcached#memoization#memory-hard#memory-mapped-file#memory-model#merge-join#mergesort#message#messagepack#message-post#messaging#metaprogramming#method#microbenchmark#microservices#minhash#mixin#mmap#mockgen#mocking#mockito#moi-truong#monetary#monorepo#mo-rong#mount#mtls#multiline#multi-stage#nagle#name-search#nang-cap#native-image#nen-file#net-http#netpoller#nfa#ngan-sach#nguoi-dung#nhan-hang#nhap-kho#nhat-ky#nhieu-buoc#nio#no-co#noinline#non-root#notification#n-plus-1#numeric#oauth2#oca#offset#oidc#onchange#on-conflict#one2many#or#order#overlayfs#p99#pacing#package#packfile#panic#paperformat#partition-management#partition-pruning#partition-wise-join#password#password-hashing#patch#path-traversal#patterns#payment#pdb#pdf#pecs#perf#persistence#pgbadger#pgbench#pg-locks#pgo#pg-repack#pg-stat-statements#pgstattuple#pg-trgm#phan-bo#phan-tan#phoi-hop#phong-ban#phu-thuoc#pid#pipe#pivot#plan-cache#plugin#poison-message#poly1305#ports-adapters#post-mortem#preemption#preflight#priority-queue#process#producer#production#projection#promise#promql#properties#property-based-testing#props#ps#publisher-confirms#push#pylint#qos#qrcode#quan-he#quantifier#quantile#query-dsl#quic#quicksort#quoting#quyen#quy-trinh#race#raft#random#random-page-cost#range-over-func#range-request#rdb#read-model#rebalance#recruitment#recursive#red#redelivery#redirect#red-method#redos#ref#reference#reflog#reindex#related#relevance#remote-debug#repository#requests#res-company#resource#rest-api#restclient#resume#reverse-proxy#rfq#ripgrep#rle#rootfs#ro-ri-bo-nho#round-robin#route#router#routes-rules#rsa#rss#run-length-encoding#runqueue#safe-eval#saga#sao-ke#sao-luu#sargable#saturation#scaffold#scale#schedtrace#scheduled#scheduled-action#script#scylladb#sdkman#search-after#secure-coding#security-header#select#selection#semaphore#sendfile#separator#serializable#servlet#set#set-e#sha256#shannon#shard#shared-buffers#shellcheck#shortest-path#shovel#side-channel#sign#simd#sitemap#size-class#sketch#sla#slf4j#slice-header#slices#slots#smart-button#snapshot#snapshot-testing#so-cai#sockjs#so-do-to-chuc#solid#sorting#source-code#span#spring-data#sqlc#sql-injection#ssa#ssd#sse#stackoverflow#stack-trace#staging#stampede#starvation#stash#static-analysis#staticcheck#status#statusbar#stenciling#stop-the-world#storage#streams#stringer#stripe#struct-tag#structured-concurrency#studio#stw#submodule#subquery#substitution#sudo#su-kien#switch#sync#sync-cond#synchronized#sync-map#sync-pool#syscall-js#sysmon#systray#tagged#tai-dat-hang#tai-khoan#tai-san#tang-truong#tar#t-call#t-digest#template#testing-quick#text#text-keyword#text-processing#t-field#t-foreach#thao-tac-hang-loat#the-phan-loai#thiet-ke-api#thiet-lap#threadlocal#thread-pool#thuc-hanh#thue-gtgt#thundering-herd#thymeleaf#tien-te#timeline#time-off#time-wait#tinh-phi#tiny-allocator#toan-tu#token-bucket#tokenizer#to-khai#top#topic#top-k#topology#totp#tour#transactioncase#transient-model#tra-truoc#tree#treemap#tricolor#tri-thuc#truncate#tuning#tuyen-duong#twitter#ty-gia#type-assertion#typed-nil#type-erasure#type-inference#type-safety#type-set#type-switch#uber#udp#uintptr#ulimit#ung-dung#union#uniq#unlink#unlogged#unsafe-pointer#update#upgrade#upsert#use#use-method#useref#useservice#usestate#utf-8#uuid#ux#vacuum-full#validation#value-object#varargs#verticle#veth#vhost#viet-nam#viettel#visibility-map#volatile#volume#vsz#vulnerability#wait-events#wal-compression#wasi#wasm#webassembly#web-client#webclient#webhook#werkzeug#wire#word-boundary#word-splitting#worker#workers#workspace#work-stealing#worktree#wraparound#write#write-barrier#write-skew#x509#xac-thuc-hai-lop#xargs#xml-id#xmlrpc#xoay-khoa#xss#x-time#xuat-du-lieu#xuat-kho#yield#zero-copy#zero-trust#zlib
Lưu trữ
  • Tháng 9/2026 1665
  • 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)Lập trình (216)Lập trình Go (133)DevOps (114)Java (100)Hệ điều hành (90)Docker (68)Go (60)Spring (60)Bảo mật (57)Linux (54)Vert.x (50)Trình biên dịch (45)Mạng (45)RabbitMQ (40)Backend (40)Message Queue (40)Công cụ (30)Web (18)Hệ thống (12)Kiến trúc hệ thống (12)Bảo mật ứng dụng web (1)

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