Projeto LightSpeed: reengenharia do app Facebook Messenger para ficar menor e mais rápido
(engineering.fb.com)-
Começa a distribuição do app Messenger para iOS com 1/4 do tamanho e o dobro da velocidade
-
Usar, sempre que possível, os recursos nativos do sistema operacional
-
Mudança para um modelo em que tudo é armazenado em SQLite. O trabalho acontece todo no banco de dados, e a UI apenas exibe isso
-
Em vez de o app e o servidor se comunicarem por funcionalidade, o DB e o broker do servidor passam a se comunicar, simplificando a lógica
1 comentários
Achei que seria só um texto do tipo “o Messenger ficou mais rápido!”, mas traz muitos insights.
Embora surjam vários frameworks de UI, para a melhor experiência do usuário a resposta continua sendo Native
Escolheram o banco de dados SQLite para reutilização de UI
E foram além: passaram a usar o SQLite como um sistema universal que suporta todas as funcionalidades. Tudo acontece no DB, e a UI apenas exibe
Criaram um esquema unificado que suporta todas as funcionalidades e desenvolveram separadamente uma plataforma (MSYS) capaz de implementar as lógicas de negócio com procedures armazenadas
A forma como o app se comunica com o servidor também mudou de protocolos individuais para um modelo unificado
Um broker no servidor se comunica, como gateway, com cada funcionalidade do servidor, e sincroniza o broker do servidor com o DB do app para simplificar a lógica de comunicação