写点什么

Facebook 如何针对新兴市场设计安卓应用

  • 2016-03-22
  • 本文字数:591 字

    阅读完需:约 2 分钟

事实上,移动技术已经在新兴市场风生水起了,新兴和发达国家之间的移动领域有着巨大的差异。特别是 3G 和 4G 移动网络尚未在新兴国家得到广泛地应用,甚至即使有 3G 的连接,也是时断时续的。此外,3G 网络在很多情况下对于大多数人来说都太昂贵了。另一方面,Gautam Roy 曾写道,全球 96% 的人可以连接到 2G 网络,全球有一半以上的人口在使用它。Facebook 于是在此背景下定义了自己的目标,即:

  • 很小的应用足迹(在 1MB APK 以内);
  • 较低的数据使用率并支持 2G 网络;
  • 支持较老的、 2009 年代的设备

这个主要的架构决定 Facebook 引擎要用一个代理服务器,而安卓应用实现为瘦客户端,如下图所示:

这个架构的设计使得该服务器要承担繁重的工作,Roy 说,通过把来自于 Facebook 后端服务的数据抓取出来并打包给客户端使用。这个客户端应用本身设计成一种虚拟机,提供摄像头、SQL lite 和 UI 引擎之类 OS 资源的访问。此外,这个客户端依赖于本地缓存,以避免针对同一事项发起多次请求。有趣的是,Facebook 的工程师们为了取代 HTTPS 在 TLS 层上设计了它们自定义的信息协议,以便将来减少数据的使用以及削减建立安全连接所需的时间。

由于这些设计选择,Roy 总结说,Facebook 工程师们在登录、启动、摘取刷新和图像加载上实现了一流的性能,并且,即使在低性能和时断时续的网络上也能确保正确性。

查看英文原文: How Facebook Designed its Android App for Emerging Markets

2016-03-22 19:001542

评论

发布
暂无评论
发现更多内容

SpringBoot之Tomcat与Undertow容器性能对比 | 超级详细,建议收藏

bug菌

tomcat 三周年连更 Undertow

Gradle工程适配为Hvigor工程

坚果

OpenHarmony 三周年连更

AI大模型加速RPAxAI时代到来,谁会是RPA领域的杀手级应用?

王吉伟频道

RPA AI大模型 ChatGPT RPAxAI 企业级RPA

winDbg 提示 Unable to verify checksum for IOCommModel.exe

linux大本营

网络安全 数字证书

【Linux】iptables之防火墙概述及规则匹配+实例(1)

A-刘晨阳

Linux iptables 防火墙规则 三周年连更

创新引领・数创未来 | 数据流通与治理专题论坛交流会顺利召开

郑州埃文科技

【Python实战】XPath采集数据

BROKEN

三周年连更

Go 语言中的 Slice 陷阱:如何避免常见错误

陈明勇

Go golang 切片 三周年连更 切片陷阱

ES开发指南|如何快速上手ElasticSearch

浅羽技术

全文检索 搜索 Lucence Elastic Search 三周年连更

koal_dm8_crypto.so.1.0.9.x86.b6f523 怎么安装

linux大本营

Linux linux文件

ChatGPT安全受质疑 网信办发布生成式人工智能服务管理办法意见稿

郑州埃文科技

基于Java+Dubbo设计的智能公交查询系统

DS小龙哥

三周年连更

uniapp配置基本的tabbar和动态修改内容

格斗家不爱在外太空沉思

uni-app 三周年连更

创建和管理复杂的项目:OmniPlan Pro 4 mac中文版

真大的脸盆

Mac Mac 软件 项目管理工具 项目流程软件

什么叫函数的注册,用c++举个例子

linux大本营

c++ 函数

跨平台应用开发进阶(五十三):uni-app 通过webview方式嵌套H5实现图片点击下载

No Silver Bullet

uni-app 跨平台应用开发 三周年连更 web-view

强大的音频分析编辑工具:Amadeus Pro 汉化激活版

真大的脸盆

Mac Mac 软件 音频编辑 音频处理工具 编辑音频

面试必考: 手撕代码系列(一)

沉浸式趣谈

JavaScript 手写代码 前端面试 手撕代码 超全前端面试题

火山引擎云原生数据仓库ByteHouse技术白皮书V1.0 (Ⅴ)

字节跳动数据平台

数据仓库 云原生 白皮书 企业号 4 月 PK 榜

C++grpc 服务器接收到请求后如何处理

linux大本营

gRPC 序列化 protobuf C++

缓解过拟合方法

linux大本营

delphi中TServerSocker使用stThreadBlocking模式的例子

linux大本营

arm m4 xpsr每一位的作用

linux大本营

寄存器 arm

linux tee命令

linux大本营

linux命令 TEE

算法题每日一练:组合总和 Ⅳ

知心宝贝

数据结构 算法 前端 后端 三周年连更

@PathVariable 和 @RequestParam 的区别

linux大本营

leaflet加载聚合

linux大本营

想转行计算机但不知道转哪个方面比较好?

linux大本营

软件开发 计算机

Qz学算法-数据结构篇(链表、栈)

浅辄

数据结构 链表 三周年连更

领先企业的数智化进入2.0阶段,需要升级数智底座

用友BIP

/sbin/kexec参数说明

linux大本营

Linux 镜像 Linux内核

Facebook如何针对新兴市场设计安卓应用_移动_Sergio De Simone_InfoQ精选文章