Capítulo 19. Projetando um aplicativo de bate-papo
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
No Capítulo 6, explorámos vários protocolos de rede e mecanismos de comunicação para construir plataformas de mensagens quase em tempo real. As aplicações de mensagens são amplamente utilizadas em todo o mundo. A aplicação pode ser autónoma, como o WhatsApp ou o Telegram, ou pode ser integrada como uma funcionalidade dentro de aplicações de redes sociais como o LinkedIn ou o Instagram. Neste capítulo, aprenderemos a projetar aplicativos de mensagens em grande escala para oferecer comunicação rápida quase em tempo real. Também discutiremos a arquitetura subjacente do WhatsApp messenger, que serve um grande número de utilizadores em simultâneo. Vamos começar com os requisitos de sistema de uma aplicação de chat.
Requisitos do sistema
Uma aplicação de mensagens pode suportar uma grande variedade de funcionalidades, mas, para simplificar, vamos optar por criar um conjunto limitado de funcionalidades e ignorar funcionalidades como chamadas de voz e vídeo. Vamos finalizar os requisitos para responder a estas perguntas:
- Que tipos de comunicação são suportados pela aplicação?
-
A aplicação oferece mensagens de um para um, mensagens de grupo e mensagens de difusão. Uma difusão é diferente das mensagens de grupo, na medida em que apenas um subconjunto de utilizadores pode enviar mensagens no canal de difusão.
- Que tipo ...