写点什么

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:001748

评论

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

准备参加软考的小伙伴注意了!

IT蜗壳-Tango

IT蜗壳 3月日更

如何用python优雅的写论文

张鹤羽

28天写作 3月日更

接口测试--apipost接口断言详解

测试人生路

接口

女神营业!云通信产品运营带你玩转号码隐私保护:网约车、外卖等O2O行业的最佳实践

阿里云Edge Plus

云通信 通信云

话说cas

木子的昼夜

Apache Ranger的部署安装

大数据技术指南

大数据 3月日更

几千次的重复提交,我用 SpringBoot+Redis 居然扛住了!

Java小咖秀

redis 后端 springboot 幂等

程序员成长第二十三篇:员工不符合预期,怎么办?

石云升

程序员 28天写作 职场经验 管理经验 3月日更

Wireshark数据包分析学习笔记Day5

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

Go语言学习笔记:抓取XKCD中文站的漫画

worry

Go 语言

职场求生攻略答疑篇之 5 —— 我,程序员,非常焦虑

臧萌

职场 成长

one day

旭陽

芯翌科技领跑NIST-FRVT戴口罩人脸识别评测,助力后疫情时代科技创新

朋湖网

2021金三银四必备:“基础-中级-高级”Java程序员面试复习路线

比伯

Java 编程 程序员 架构 面试

面试被吊打系列 - Redis原理

数据库 架构 面试

雪花算法,到底是个啥?

架构精进之路

算法 七日更 3月日更

优雅编程 | javascript代码优化的15个小知识

devpoint

ES6 JS代码优化 JS迭代

《接口测试入门》 学习笔记

有梦想的tester

七日更 3月日更

线上MySQL读写分离,出现写完读不到问题如何解决

程序员历小冰

MySQL 读写分离

冰河公开了进大厂的核心技能,服了!

冰河

程序员 面试 大厂技能 硬核技能图谱

vm

梅花鹿鹿

28天写作 3月日更

拼多多五面面经(Java岗),全面涵盖Java基础到高并发级别

Java架构之路

Java 程序员 架构 面试 编程语言

容器 & 服务:K8s 与 Docker 应用集群 (四)

程序员架构进阶

Docker Kubernetes 容器 28天写作 3月日更

更新60篇的复盘:持续书写,见证文字的力量

boshi

写作 七日更

搞定计算机网络的常见面试问题

什么是职业

ES_her0

28天写作 3月日更

LeetCode题解:518. 零钱兑换 II,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

SRS流媒体服务器源码分析--RTMP消息play

赖猫

音视频 流媒体 SRS 流媒体开发

新人报道

shun123456789

翻译:《实用的Python编程》04_02_Inheritance

codists

Python 继承 inheritance

redis工作原理(上)

Sakura

28天写作 3月日更 21天挑战

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