(by steven.do)
Gần đây, nhằm cải thiện trải nghiệm người dùng, Uber đã triển khai project USL (Unified Signup and Login), là một giải pháp để hợp nhất xử lý đăng ký và đăng nhập trên tất cả các ứng dụng và dịch vụ của Uber.
Cách xử lý cũ (tách biệt luồng xử lý đăng ký và đăng nhập) theo từng ứng dụng đã giúp Uber phát triển và cập nhật đổi mới nhanh chóng. Tuy nhiên, khi mở rộng quy mô hoạt động kinh doanh và phát triển thêm các ngành nghề kinh doanh phụ trợ, cách xử lý này dần phát sinh nhiều mâu thuẫn. Lúc này, mỗi sản phẩm lại có một entry point để xử lý đăng nhập và đăng ký riêng, khiến người dùng cuối phải chuyển đổi giữa hai tài khoản nếu như họ không rõ mình đã có tài khoản Uber trên sản phẩm đó hay chưa, và người dùng phải ghi nhớ thông tin của cả hai tài khoản với hai sản phẩm khác nhau, điều này khá bất tiện với người dùng cuối.
Trong bối cảnh đó, bài toán đặt ra cho các kỹ sư Uber là phải tạo ra một giải pháp mới để:
- Đáp ứng được tính nhất quán (consistency) khi xử lý lượng đăng nhập và đăng ký lớn trên nhiều ứng dụng khác nhau.
-
Giảm chi phí triển khai lại luồng xử lý trên từng ứng dụng (duplication of effort).
-
Cải thiện thời gian áp dụng các thay đổi, như cập nhật chính sách bảo mật và các bản vá lỗi.
-
Giảm độ phức tạp về mặt kỹ thuật và giảm chi phí vận hành.
Sau khi triển khai giải pháp USL dưới dạng một single page web app có thể truy cập được trên cả desktop và mobile, Uber đã giải quyết được bài toán đặt ra ban đầu. Hơn thế nữa, USL đã mở ra một nền tảng “One Uber Identity” chung với trải nghiệm đăng nhập và đăng ký thống nhất trên tất cả các sản phẩm của Uber.
Đến nay, USL đã được áp dụng cho hơn 78% lưu lượng xử lý đăng ký và đăng nhập tại Uber.
Thông qua bài viết, các kỹ sư Uber sẽ giới thiệu về USL, các thách thức đặt ra về mặt công nghệ, chi tiết giải pháp kiến trúc và khả năng tối ưu hoá cho từng nghiệp vụ.