cái này là 1 trong những cách thôi chứ không phải là cách tối ưu nhất
trước có ông nào trong này kể làm IT bên tư bổn, cụ thể là nhật, server đuối là upgrade cấu hình lên, còn ở xứ nào đó, ** mé bắt dev tối ưu bằng code hâhhaha
Phỏng vấn đôi khi không cần câu trả lời chính xác như thi cử mà chỉ là cách để gợi mở chủ đề câu chuyện thôi. Người ta xem cách bạn tư duy, tương tác thế nào. Để giải quyết vấn đề cần hiểu rõ bài toán thực tế, hệ thống hiện tại, nguồn lực của công ty,... Một câu hỏi chung chung kiểu làm sao để handle 1M users chẳng có tác dụng gì cả. Câu hỏi này tương tự như hỏi làm sao kiếm dc 1M $, chỉ là gợi mở chủ đề, từ đó 2 bên tâm sự hiểu nhau hơnvấn đề là đang phỏng vấn role middle ông ơivà thằng phỏng vấn chưa chắc trả lời được câu hỏi mà nó đặt ra, tôi đoán ở đây là system của cty mà ứng viên đang pvan cũng đang có bài toán tương tự về perf test và người pv cố tình khai thác ứng viên senior để lấy thôgn tin thoi chứ chưa chắc tuyển thật ấy, phí công sức của người khác đi pv
![]()

Tây Nhật hay ta cũng vậy thôi, tư duy làm sản phẩm nó phải thực dụng . Quan trọng ra sản phẩm nhanh, chạy kiếm user thật, rồi mới cân nhắc tối ưu. Chi phí(tiền, thời gian) thuê dev xịn về tối ưu quá cha nó chi phí thuê server. Sản phẩm chắc d' gì đã sống dc đến lúc quá tải hệ thống.
trước có ông nào trong này kể làm IT bên tư bổn, cụ thể là nhật, server đuối là upgrade cấu hình lên, còn ở xứ nào đó, ** mé bắt dev tối ưu bằng code hâhhaha
xin đừng quay tayTôi trả lời ở trên kìa fen. Ông nào hỏi tôi câu làm sao xử lý 1 mil requests per second, tôi trả lời luôn tôi viết backend bằng C++ (Drogon, Oat++, Crow).
Như benchmarks của Drogon framework ở trên có thể xử lý được >500k rps với trường hợp 1 connection có thể gửi nhiều request, ~140k rps trong th mỗi request phải tạo 1 connection. Outperform cả Nginx luôn
Benchmarks được chạy trên con server 2 CPUs 16 cores, 32 threads, 64GB RAM, giá thuê chắc xấp xỉ $250/m, quá bèo cho 1 cty có số lượng traffic như vậy. Ông nào lăn tăn mời vào repo của Drogon mà var![]()
BU lead lương 100 là ez vl mà anh, trc tôi SA Fsoft lương đã 8x nhỏ rồi. Nhưng so với làm product thì vẫn xa vlLụm review túm tắt thị trường htai (vn):
- như tao đang làm. 2022,2023 rât dễ kiếm remote , có nhiều job 5000,6000 là bình thường. h khó chết mẹ, ngày xưa bố hãy tìm việc trên angelist, tokyodev nhưng pv h khó vcl, éo có home assignment đâu , whiteboard hết rồi , nó cho 1,2 tiếng pair code với senior nó éo có Al , éo có stackoverflow , thi thoảng google hói han ) ,mà éo phải thuật toán ko đâu ,h nó bắt dựng cả 1 mini app . System thì hỏi toàn trên trời, mệt vkl . PV éo gì toàn 2,3 tuần mới xong -> rồi trượt
- Đi làm cho các công ty outsource: làm outsource dễ kiếm nhưng lương thấp, trăm củ đến BU lead ở fsoft chưa chắc đc . Nhưng ko phải ko có, làm outsource các vị trí PM/PO/Brse thường cao nhất là biết tiếng nhật (N1 trở lên) , hàn nhưng nói thật làm vị trí này tù ng có thể trăm triệu nhưng ngoài kỹ năng chém gió - thông dịch ra, kỹ năng IT éo có mấy. Tao từng làm chung 1 ông pm /Brse (U50) đến git éo biết dùng hỏi loạn xạ cả lên.
- Đi làm product cho water house (Vnpay , ...) hay ngân hàng : Đc. Nhưng bên này quy tắc nó rõ ràng , 1 .Mày có quan hệ , 2. Mày phải trội , giỏi hơn thị trường
Anh siêu nhầm cmnr, product lớn mà a đập infra thì có mà tiền núi. Làm sàn mà code cùi thì có bn lãi trả tiền infra chắc đi moẹ hết
trước có ông nào trong này kể làm IT bên tư bổn, cụ thể là nhật, server đuối là upgrade cấu hình lên, còn ở xứ nào đó, ** mé bắt dev tối ưu bằng code hâhhaha
Tôi trả lời ở trên kìa fen. Ông nào hỏi tôi câu làm sao xử lý 1 mil requests per second, tôi trả lời luôn tôi viết backend bằng C++ (Drogon, Oat++, Crow).
Như benchmarks của Drogon framework ở trên có thể xử lý được >500k rps với trường hợp 1 connection có thể gửi nhiều request, ~140k rps trong th mỗi request phải tạo 1 connection. Outperform cả Nginx luôn
Benchmarks được chạy trên con server 2 CPUs 16 cores, 32 threads, 64GB RAM, giá thuê chắc xấp xỉ $250/m, quá bèo cho 1 cty có số lượng traffic như vậy. Ông nào lăn tăn mời vào repo của Drogon mà var![]()


Có éo gì mà phải quay tay nhỉ? Mấy cái requests đơn giản mà không cần phải thọc vào DB, không phải parsing các file JSON lớn thì các C/C++ backend frameworks nó xử lý nhanh như rửa đítxin đừng quay tay

Tôi thất học anh ạThấy anh zai khoe tới khoe lui con framework gần như no-name, tôi cũng tò mò vào xem vì anh qc tận 2-3 lần. Tưởng gì ghê té ra bench bằng cách trả về chuỗi String hello world
Anh zai đi làm bao năm rồi mà ko hiểu bench và real world nó khác nhau cỡ nào. 500k rps trả về chuỗi ko đổi mà cũng khoe.
Bài toán thực tế nó phức tạp gấp trăm lần, hệ thống back-end chạy đc 40k rps là cũng dạng trâu rồi, bao gồm tất cả các thể loại query db, authen/autho, serialize/deserialize, searching, paging... đủ các món.
Mà cứ cho là Drogon nó chạy đc 500k rps thật đi, anh zai có contribute gì trong đó k? Hay là fork về build rồi chạy back-end với 10 DAU![]()


tôi thấy ông mới là gen z thiếu muối ấy, chỗ nào tôi bảo bào toán hạ tầng với kiến trúc cả dn vậy, rồi thằng interviewer chắc nó đủ quyền để đề xuất thay đổi cả hệ thống ? hay nhiều khi nó chỉ là 1 SE ở 1 vertical con con trong nguyên cái org?Nếu nó trả lương cao thì level nào không quan trọng. Vì middle công ty này là senior công ty khác bình thường
còn phỏng vấn vài câu mà giải quyết được bài toán ở hạ tầng và kiến trúc cho cả doanh nghiệp thì kinh quá.
tâm lý lo sợ giống mấy đứa gen Z bảo công ty ra bài test để collect our brain
phán thì hay, SA bên ép sốp ngoài cái C99 có dự án nào đủ lớn cỡ mấy cái sàn để làm chưaAnh siêu nhầm cmnr, product lớn mà a đập infra thì có mà tiền núi. Làm sàn mà code cùi thì có bn lãi trả tiền infra chắc đi moẹ hết
via theNEXTvoz for iPhone
Tôi làm product 10 năm rồi mới sang out source ông ạ, với t cũng làm Fsoft chưa đc 1 năm thì thấy os chán quá nghỉ làm remote product tiếp rồiphán thì hay, SA bên ép sốp ngoài cái C99 có dự án nào đủ lớn cỡ mấy cái sàn để làm chưa

dăm ba cái synthetic benchmark đem ra đi phán như đúng rồiCó éo gì mà phải quay tay nhỉ? Mấy cái requests đơn giản mà không cần phải thọc vào DB, không phải parsing các file JSON lớn thì các C/C++ backend frameworks nó xử lý nhanh như rửa đít
Anh lấy performance là ưu tiên số 1 thì chọn 1 ngôn ngữ có lợi thế về performance để phát triển là solution hợp lý nhất rồi. Chỉ cần following document của framework đấy thôi là cũng đủ rồi, éo cần phải áp dụng mấy kỹ thuật như kiểu load balancer, redis caching blah blah.
Éo phải tự nhiên mà top web framework benchmarks toàn C/C++ và Rust:
Xem tệp đính kèm 3345718
Source: TechEmpower Web Framework Performance Comparison (https://www.techempower.com/benchmarks/#section=data-r23)
hm .,, hợp lý fennói chung là mấy câu hỏi dạng này chỉ có giá trị phân loại ứng viên chứ không có giá trị trong thực tế. Tôi nghĩ cả thằng hỏi và thằng trả lời đều không có cơ hội để đụng vào mấy hệ thống tầm cỡ như thế, và nếu may mắn được làm thì bài toán khi đấy nó khác rất nhiều khi ngồi chém gió với nhau, Nhưng đã xác định đi pv thì phải chấp nhận thôi.
Không được đâu fen ạ, bảng này ảo vì JSON trả về {"message":"Hello, World!"}Có éo gì mà phải quay tay nhỉ? Mấy cái requests đơn giản mà không cần phải thọc vào DB, không phải parsing các file JSON lớn thì các C/C++ backend frameworks nó xử lý nhanh như rửa đít
Anh lấy performance là ưu tiên số 1 thì chọn 1 ngôn ngữ có lợi thế về performance để phát triển là solution hợp lý nhất rồi. Chỉ cần following document của framework đấy thôi là cũng đủ rồi, éo cần phải áp dụng mấy kỹ thuật như kiểu load balancer, redis caching blah blah.
Éo phải tự nhiên mà top web framework benchmarks toàn C/C++ và Rust:
Xem tệp đính kèm 3345718
Source: TechEmpower Web Framework Performance Comparison (https://www.techempower.com/benchmarks/#section=data-r23)
#[actix_web::main]
async fn main() -> std::io::Result<()> {
HttpServer::new(|| App::new().service(devices).service(health))
.workers(16)
.bind(("0.0.0.0", 8080))?
.run()
.await
}
Benchmark đéo nào mà chả là synthetic. Đéo ai chả biết là benchmark nó khác với thực tế. Chả lẽ cứ mỗi framework phải làm một product thực tế rồi kiếm cả triệu users để benchmark thì đéo ai mà làm được.dăm ba cái synthetic benchmark đem ra đi phán như đúng rồi