Facebook如何构建其新的位置功能

导读 本周初,Facebook 为第三方应用程序启动了许多新功能。如果您想在引擎盖下看一眼,今天早上可以请客。在新的博客文章中,Facebook工程师Ka...

本周初,Facebook 为第三方应用程序启动了许多新功能。如果您想在引擎盖下看一眼,今天早上可以请客。

在新的博客文章中,Facebook工程师Karan Mangla解释了新功能的产生方式。

为了概括这些新功能和相应的API,Facebook使第三方开发人员能够将位置和朋友添加为任何更新,照片或链接的属性。为了实现这一壮举,社交网络推出了一大堆新的API和文档。您拥有位置设置API,朋友标记API,改进的地点搜索API和位置读取API。

曼格拉说,在过去的一年半中,该公司一直在努力加强地方信息和其他位置功能。现在,位置标记已成为所有照片和状态的通用功能,并且甚至为时间轴提供了新的地图视图,因此您可以选择以地理而不是按时间顺序显示活动。

创建该地图是一个特殊的挑战。在按时间顺序排列的“时间轴”页面中,如果没有“延迟加载”类型的滚动操作,则必须立即获取并显示来自用户的所有位置数据,Mangal说,这为Facebook处理提供了巨大的数据负载。为了解决这个问题,Mangal写道:“该团队“创建了将数据提取到多个服务器的基础架构”。“在每次页面加载时,一台服务器都会获取可为当前用户显示的所有内容的ID。然后,该服务器将这些数据分解为较小的块,每个块在请求中发送给另一台服务器,以实际获取数据并进行隐私检查。然后,将这些服务器的响应合并在一起以创建时间线图显示。”

此外,为了使位置特征(尤其是缺少GPS的功能电话用户)更容易使用,该团队构建了新的位置搜索功能,该功能考虑了用户可能与搜索中的前三个字母相匹配的位置查询。

Mangal写道:“开发通用搜索基础架构使我们能够解决此问题,并为用户提供在任何电话上搜索地点的能力,并通过位置来提高搜索质量。” “这大大增加了可以通过手机签到某个地方的用户数量。”

版权声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。