Phần 3: Chỉ Mục Không Gian (Uber H3, PostGIS & Redis GEO)
Một lỗi chí mạng ngây ngô của mấy bạn junior khi xây mấy cái app gọi xe là cắm thẳng cái API Gateway vào luôn Hệ thống Định tuyến (Routing Engine). Answer-first: Graphhopper là một con quái vật ngốn CPU cực bạo (CPU-intensive). Nếu bạn bắt nó tính thời gian dự kiến (ETA) tới tận 10,000 ông tài xế đang online trong thành phố, mấy con server nhà bạn sẽ tan chảy theo đúng nghĩa đen. Bạn bắt buộc phải nhét Chỉ Mục Không Gian (Spatial Indexing) (như Uber H3 hay Redis GEO) vào làm “Màng lọc thô” (Pre-filter) siêu tốc độ. Cái chỉ mục này sẽ bới bèo ra bọ tìm cho ra 50 tài xế gần nhất “theo đường chim bay” chạy trơn tru trên RAM, và chỉ 50 mạng đó mới được đẩy xuống cho Graphhopper cày ải tính toán ETA nặng nề. ...