系统设计中,如何优化邻近服务的长尾词策略?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2935个文字,预计阅读时间需要12分钟。
在本文中,我们将设计一款邻近服务,旨在发现用户附近的餐馆、酒店、商场等。设计目标是从一个简单面试案例开始。
面试官:你好,我想考察一下你的设计能力,比如设计一款邻近服务。
在本文中,我们将设计一个邻近服务,用来发现用户附近的地方,比如餐馆,酒店,商场等。
设计要求从一个小明去面试的故事开始。
面试官:你好,我想考察一下你的设计能力,如果让你设计一个邻近服务,用来搜索用户附近的商家,你会怎么做?
小明:好的,用户可以指定搜索半径吗?如果搜索范围内没有足够的商家,系统是否支持扩大搜索范围?
面试官:对,用户可以根据需要修改,大概有以下几个选项,0.5km,1km,2km,5km,10km,20km。
小明:嗯,还有其他的系统要求吗?
面试官:另外还需要考虑的是,系统的低延迟,高可用,和可扩展性,以及数据隐私。
小明:好的,了解了。
总结一下,需要做一个邻近服务,可以根据用户的位置(经度和纬度)以及搜索半径返回附近的商家,半径可以修改。因为用户的位置信息是敏感数据,我们可能需要遵守数据隐私保护法。
高层次设计高层次设计图如下所示,系统包括两部分:基于位置的服务 (location-based service)LBS 和业务(bussiness)相关的服务。
让我们来看看系统的每个组件。
负载均衡器
负载均衡器可以根据路由把流量分配给多个后端服务。
基于位置的服务 (LBS)
LBS 服务是系统的核心部分,通过位置和半径寻找附近的商家。
本文共计2935个文字,预计阅读时间需要12分钟。
在本文中,我们将设计一款邻近服务,旨在发现用户附近的餐馆、酒店、商场等。设计目标是从一个简单面试案例开始。
面试官:你好,我想考察一下你的设计能力,比如设计一款邻近服务。
在本文中,我们将设计一个邻近服务,用来发现用户附近的地方,比如餐馆,酒店,商场等。
设计要求从一个小明去面试的故事开始。
面试官:你好,我想考察一下你的设计能力,如果让你设计一个邻近服务,用来搜索用户附近的商家,你会怎么做?
小明:好的,用户可以指定搜索半径吗?如果搜索范围内没有足够的商家,系统是否支持扩大搜索范围?
面试官:对,用户可以根据需要修改,大概有以下几个选项,0.5km,1km,2km,5km,10km,20km。
小明:嗯,还有其他的系统要求吗?
面试官:另外还需要考虑的是,系统的低延迟,高可用,和可扩展性,以及数据隐私。
小明:好的,了解了。
总结一下,需要做一个邻近服务,可以根据用户的位置(经度和纬度)以及搜索半径返回附近的商家,半径可以修改。因为用户的位置信息是敏感数据,我们可能需要遵守数据隐私保护法。
高层次设计高层次设计图如下所示,系统包括两部分:基于位置的服务 (location-based service)LBS 和业务(bussiness)相关的服务。
让我们来看看系统的每个组件。
负载均衡器
负载均衡器可以根据路由把流量分配给多个后端服务。
基于位置的服务 (LBS)
LBS 服务是系统的核心部分,通过位置和半径寻找附近的商家。

