Cómo WHATSAPP sobrevive a MILLONES de USUARIOS
HTML-код
- Опубликовано: 6 сен 2024
- 👉🏻 Obtén 7 días de trial y 25$ de crédito en UpCloud
👉🏻upcloud.com/si...
Nunca te has preguntado como leches funciona Whatsapp? Como hacen para que con tantos usuarios vaya más o menos bien?
En éste vídeo te lo explico!
EMAIL PARA COMPARTIR PROYECTOS A REVISAR EN DIRECTO! 💥
bettatechyt@gmail.com
REPOSITORIO: 😸
github.com/mar...
VIDEO APIS REST:
• ¿Qué es una API HTTP? ...
CANAL DE SLACK AQUI! 👇🏻👇🏻👇🏻👇🏻
bit.ly/33gaDDM
👾 Redes sociales 👾
► Twitter: / bettatech
► Instagram: / betta_tech
► Canal Secundario: / @forkdebettatech
► Slack: bit.ly/33gaDDM
👨🏼🏫 MIS CURSOS 👨🏼🏫
👽 Curso de iniciación a la programación con JavaScript:
► bit.ly/3kr4bTc
👕 MERCHANDISING DEL CANAL:
► Tienda RUclips: / bettatech
► Tienda Teespring: teespring.com/...
⭐️ AFILIADOS ⭐️
🎁 7% Descuento en HOSTINGER (Código BETTATECH)
► www.hostg.xyz/...
🧠 Autocompletado con IA (Kite)
► www.kite.com/g...
🐾 MacPaw (CleanMyMacX):
► macpaw.audw.ne...
🎵 TODA la música es de EpidemicSound:
► www.epidemicso...
✉️ CONTACTO PROFESIONAL:
► Respuesta no garantizada:
bettatechyt@gmail.com
📚 LIBROS 📚
Design Patterns
► amzn.to/39XuQlq
Head First Design Patterns
► amzn.to/2uq6XUq
Refactoring
► amzn.to/2SQnf2c
Clean Architecture
► amzn.to/3bZVonJ
Clean Code
► amzn.to/32WVKq3
Introduction to Algorithms
► amzn.to/34SyVFP
Cracking the Coding Interview
► amzn.to/2QkdwC6
Me interesa saber como whats sabe el "leído" y el "está escribiendo" y todo lo demás que puedas mostrarnos Betta.
Gracias por los excelentes vídeos.
Los mensajes de leído ha de ser una propiedad del mensaje en sí, evidentemente con un evento de la app se puede hacer el cambio de la propiedad. Bajo el mismo concepto va a el está escribiendo, en cierto evento de la app se ejecuta un evento del socket.
El "Leído" es una propiedad del mensaje en sí x2. El "Está escribiendo" es lo que él está describiendo, pues ya hay información enviándose
Claro pero ese socket no guarda nada en una base de datos, solo realiza un cambio de estado así sería mucho más óptimo
programación, hijo
@@jeancarlosdelacruzcriollo6191 No, si usasen el cambio de estado no sería persistente al "cerrar la sesión" (que se cierre la app básicamente), pasaría lo mismo en React usando Redux sin base de datos por atrás.
El "está escribiendo" se sabe porque se puede detectar el evento "onKeydown" (o similares) que permiten al programa (e incluso a los sitios web, usando JS) saber que estás pulsando el teclado, por ende, escribiendo.
Muy interesante, sigue con vídeos de Whatsapp !
Gracias! Si os molan explicare mas cosas!
Sí, por favor, estaría muy agradecido en que profundices a nivel funcional y tecnológico.
x2
@@BettaTech Sí, esta muy bien, sigue con la temática de Whatsapp
Confirmo, estaría genial
La palabra mágica para desarrollar hoy en dia, "escalabilidad".
la palabra clave es "javascript" las cosas como son.
@@stackercoding2054 no solo js, pero js es ultra importante
@@skilinebackdoor9229 ya ves, javascript es como el multiusos de hoy en dia, puedes hacer de todo, frontend, backend, aplicaciones de escritorio, apps para movil, incluso programar para dispositivos como arduino, me parece flipante como hoy en día solo con aprender un lenguaje de programación se puedan hacer todas esas cosas.
@@ogilvie15 ninguno es mejor que ninguno, todos funcionan para algo, yo soy programador de python y te puedo decir que hace cosas bastante cool, pero también js puede, hasta donde he usado ambos he visto que js hace cosas que python no y python hace cosas que js no.
@@skilinebackdoor9229 Cierto, no son comparables, a mi por ejemplo python me ha servido para realizar varias tareas de automatización como web scraping y este tipo de cosas.
Te mereces más reconocimiento, muy buen video, perfectamente explicado
Muchísimas gracias !!!
me encanto el video... muy bien explicado y a la vez abarcador.... ademas, se nota que lo hizo sin leer, con fluidez y seguridad.. saludos desde Cuba
Ademas que corre sobre la maquina virtual de Erlang, que esta enfocado en la "programación concurrente" por llamarlo de algún modo, muy buen vídeo para entender los sockets
En la práctica WhatsApp utiliza XMPP no WebSockets, aunque el concepto es similar.
No entendí nada pero me siento inteligente.
Solo míralo de nuevo ;]
Es muy fácil entenderlo.
Alto capo el Ted
Eso representa al 90% de su publico
Yo también me siento inteligente 😊
Buen video! Lo unico, que en pleno 2020 no utilizaría ya jquery, y menos si solo lo usaste para un par de selectores y nada mas... Te terminas bajandi toda una libreria para hacer algo que con vainilla js lo haces en una linea. Saludos!
Es el primer video que miro de tu canal, muy interesante, me gustaría que siguieras hablando del funcionamiento de WhatsApp, Saludos.
Llegue muy tarde ya estaba caido el server, de resto esta super genial la explicacion. Sigue con mas videos asi me sirve muchisimo
Que tal para los próximos vídeos, el diseño de sistemas de Telegram! :)
Lo apunto! Telegram es una app muy muy interesante
MIGUEL ANGEL GUERRERO VIVEROS x2
aqui tienes un cliente de telegram hecho por mi en vue github.com/mdbetancourt/vue-telegram
Genial!
Estaría bueno ver que pasa cuando el servidor del socket está en un puerto: 3001 y el chat con otro webserver tipo un http-server: 8080 para que puedan observar que el server con socket y webchat pueden convivir de manera distribuida.
Saludos desde Uruguay!
He descubierto tu canal hace poco tiempo. Enhorabuena por el formato y la sencillez en tus explicaciones. Animo!
Deberías hacer un video de la seguridad, por ejemplo whatsapp web muestra las imágenes en el navegador pero si se copia esa URL de la imagen no se puede abrir en otro navegador, como funciona eso, gracias por tus videos
Muy interesante y bien clara la explicación, quisiera saber si sabes cómo es que WhatsApp puede manejar las notificaciones push en un Mobile ya que las recibe primero el so y te las entrega luego del tap del usuario, pero parecería que WhatsApp tiene un tratamiento especial, y cómo maneja las llamadas telefónicas que claramente son IP
Eres un crack, cuando sea grande quiero ser como tú
Normalmente no escribo en los comentarios de los vídeos, pero este canal es genial, explicaciones tan sencillas pero funcionales, además se muestra código cosa que a cualquier programador le mola bastante. Éxitos para el canal!
Muchísimas gracias por verme y por los ánimos!
Muchísimas gracias por este video. Absolutamente instructivo! No me sabía lo del servidor que conoce en qué microservicio está el websocket de Pepito, para que enrute el mensaje!
Y ya que los textos están en los teléfonos de cada parte en la conversación, lo que lo convertiría en una suerte de base de datos distribuida... será que con las imágenes, audios y otros activos digitales que se envía por Whatsapp... pasará lo mismo? No hay copias almacenadas en ningún almacén centralizado, sino que también permanecen en cada teléfono participante en la conversación?
si compañero comparte esa informacion que dijiste en el video
Geníal. Recién descubrí tu canal y los vídeos dejan mucho para aprender. Saludos.
Habla de los bootcamps de programación y data science!
Muy bien explicado. Y estaria interesado en aprender mas acerca del tema. Saludos.
¡Este canal es oro puro! Más videos de este tipo de temáticas por favor
Si me interesa!! :v más videos como este, explicando más whatsapp y el tema de los web socket :'D pls
Hace poco que llegué a tu canal y me encanta el contenido. Me quedaré por aquí.
Dale caña ! 🔥
Gracias!!! Estoy super animado para hacer mas videos 💪💪💪💪
Hola, el contenido de tus videos son lo mejor. puedes seguir con vídeos de Whatsapp !!
Este vídeo me ha gustado mucho! Me suscribo y POR FAVOR sigue haciendo vídeos de diseño de sistemas. GRACIAS!
Por eso solo los usuarios pueder ver sus mensages y por eso se dice que tus mensages estan encriptados de punto a punto, mientras no autorices a google respaldar fotos y mensages y salvo que watsapp te quiera monitorear
Por supuesto, queremos más.
Uf muy buen video, muchas gracias, una cosa es aprender a programar y otra aprender como es la estructura que han ido construyendo grandes plataformas como WhatsApp, no tenéis un curso tuyo?
wow te ganaste un nuevo suscriptor, un nuevo fan y alguien que le gustaria mucho que le enseñes a programar jeje espero cresca mas tu canal
Me encanto tu video, continua con este tipo de contenido explicando como funcionan este tipo de apps, puedes hablar sobre como diseñan la arquitectura de estos sistemas?
Estos vídeos son crema. Enhorabuena. Voto por más vídeos de diseño de sistemas.
Excelentes videos, cada vez q veo un video tuyo me interesa mas la programación. Saludos desde Uruguay
Excelente video!
Ingresé a la ip y ya no es accesible, supongo que al estar todo público se salió de control jajaja
intentaste montar un chat?
Una comparación con Telegram por favor! Excelentes videos!!!!!!
Si los mensajes se guardan en mi telefono... si logro ingresar a el con un programa puedo eliminar definitivamente los mensajes que deseo eliminar ??'?
Video genial! muy claro y muy útil. No sabía que whatsapp guardaba los mensajes únicamente en los terminales. Supongo que también los almacenará en otro lugar... 😈
Me bueno todo me gusto el video solo una quisiera que analizaras Telegram y sus diferencias con Whatsapp en cuanto a arquitectura de sistemas como lo diseñarias. Saludos
WhatsApp utiliza XMPP hubieras usado eso en vez de los sockets, ya que no es muy difícil echar a andar una demo de esa tecnología y mostraría mucho mejor Como es que WhatsApp manda mensajes.
Sos grande men una pregunta podes hablar sobre bases de datos gran cantidad de datos y un sistema de busqueda que optimice su funcionamiento y escalabilidad
Muy interesante he empezado a ver varios vídeos de este canal y la verdad el contenido es muy bueno y claro felicidades...
Ya habia visto el canal pero volví porque mi Instituto pone este video en los recursos digitales de mi plan de estudios para Ing de Software xD
Saludos amigo, me gustó mucho tu vídeo. Quisiera pudieras ayudarme con una duda que tengo, es algo ya salido del tema. Entre python o Java por cual de los dos caminos te irías y porqué?. Gracias.
Osea que anteriormente, antes de que Whatsapp incluyera la posibilidad de eliminar los mensajes para ambas personas del chat... Si "Pepito" habia borrado ciertos mensajes pero en su proprio chat con Marcelo, y Marcelo cambia de telefono. Al pedir el backup del chat a Pepito este le devuelve El chat "modificado"??
A proposito. Que perfil de usuario usas al grabar video? Usas correccion de color? Gracias. Buena esa Sony 6300.
Gracias por el vídeo...desde hace mucho buscaba un canal como este, es muy importante conocer como funcionan los software que utilizamos día a día, muy buena explicación, gracias.
pero si tu abres un socket TCP para intercambiar streams de datos, eso obliga al smartphone a tener que estar continuamente intercambiando información con ese servidor. Mejor dicho la antena de radio tendrá que estar todo el rato encendida para muestrear si hay algún paquete para él. Eso no supone mucho consumo?
desde la uma de informatica de malaga te seguimos toda una clase sube mas videos de programacion orientada a objetos, programar con c++ y estadisticas ( big data ) con r
Creo que amo tus videos. Muchas gracias por el contenido. Puedes hacer un video donde expliques como hacer codigo limpio, legible y sin enredos. Es q recien empiezo y tengo algunos problemas, me llego a complicar. Y otro video donde expliques como llevar un proyecto desde cero q sea exitoso, explicando metodologia fases de desarrollo, etc, y algunos consejos. Te lo agradeceria.
Acabo de descubrir tu canal, y sí me encantarían más vídeos sobre las características de whatsapp 🙆🏻♂️😍 Graciaaaas
Y si en lugar de sockets usamos una arquitectura orientada a eventos?
Por ejemplo "Pepito envia un mensaje", se dispara el evento de 'envioMensaje' y bueno el server recibe el evento con su payload y lo resuelve ...
EL video está excelente!!!! aprendí mucho, también como es que las bases de datos de telegram se gestionan ya que esa no necesariamente se guarda en nuestro telefono
1:40 creo que antes era asi no? me refiero a las versiones anteriores a whatsapp (es una hipotesis)
Primera vez que veo un video tuyo, nuevo suscriptor, buen video
Me parece que este video se merece más comentarios 🤔 fue excelente
Muy bueno, me ha encantado el video, seria genial una serie sobre grandes aplicaciones y sus diferentes servicios, enhorabuena.
Muy concreta la explicación, fluida y sencilla.
Genial, mas de este tipo de videos explicando apps.
Además que el backend de whatsapp está desarrollado en erlang, una de las cosas que lo hace tan robusto y estable
Acabo de descubrir tu canal, contenido muy bueno, me suscribo
Este tio es un Crack, muchas gracias por compartir tus bastos conocimientos, seguire viendo estos videos para ampliar mis experiencia!!!
Sugieres que la aplicación de WhatsApp usa un sistema de pushing pero esto sólo es válido para WhatsApp web que usa web sockets y necesita que la app del móvil esté conectada.
La app del móvil utiliza un sistema de pulling via FunXMPP, una extensión del protocolo público y ampliamente utilizado XMPP.
La única parte de sistema push que hay en la app son las notificaciones push de Google Play Services.
Pero toda la app en sí es un sistema de pulling de los servidores centrales.
Totalmente de acuerdo con el protocolo, pero he creido mas conveniente hablar de sockets en general que de un protocolo de transmision concreto, ya que a diferencia de http-rest whatsapp si deja el socket abierto.
Sobre lo de los mensajes, lo que he conseguido encontrar sobre el workflow de whatsapp es que tiene 2 sockets abiertos y que uno de ellos se encarga de escuchar eventos del servidor.
Gracias por el comentario y por la info!
@@BettaTech Es un poco mezcla en realidad, el cliente utiliza un único socket, lo deja abierto y tiene que hacer polling y acknowledgear los mensajes, además de suscribirse a eventos y otras cosas que van pasando según te metes en distintas partes de la app.
Si te interesan los detalles, aquí tienes una ingeniería inversa muy reputable pre abril 2016, antes de que encriptaran todo con Noise, que además documenta bastante bien el protocolo: github.com/mgp25/Chat-API/blob/master/src/whatsprot.class.php#L297
Muy buen vídeo, que no paren los vídeos de arquitectura
Que no paren! 💪💪
Te acabas de ganar un seguidor más, sabia como funcionaba pero como tú lo explicaste me pareció perfecto. Muchas gracias por el código. Saludos.
Wow me encantaría ver más videos de diseño de sistemas
Saludos, prueba poner el enfoque de la cámara fijo, se notará con un poco más de calidad
Excelente Video, me gustaría ver más a fondo el diseño de esos sistemas, ojalá más adelante los publiques
pero que buen video estoy averiguando mucho sobre los WebSocket... gracias...
Mas ejemplos de diseno de sistenmas y codigo escalable y q se pueda poner en production :) obvio no algo nivel Facebook pero es interest te saber como funcionan estos sistenmas grandees en el backend
Me encanto!.. sigue así.. super bien explicado y es a nivel más bajo que solo hablar de forma genérica. Me parece muy bueno. Gracias
Tu trabajo se agradece mucho. Gracias
Si porfavor haz uno de diseño de sistemas, saludos.
Yo estoy haciendo un curso de Python para principiantes incluyendo resolución de problemas de programación en tiempo real. Con eso tengo más que suficiente.
Muy buen trabajo, quizá la habilidad más notable, de alguien que sabe, es tener la capacidad de transmitirlo de forma fácil y amena. Yo lo llamo trascender. Cambiando un poco de tema me gustaría que considerara la posibilidad de publicar su opinión en relación con Flutter (Dart).
La magia tras whatsapp se llama Erlang que corre sobre el BEAM una VM inventada en los 80's por Ericsson para sus switches de teléfono que requieren alta disponibilidad, alta concurrencia y paralelismo. Hoy en día se usa en antenas 3G, 4G, 5G y un montón de hardware de cisco entre otros.
www.erlang-solutions.com/blog/which-companies-are-using-erlang-and-why-mytopdogstatus.html
Qué IDE utilizas para programar?? no lo reconozco en el vídeo.
Gracias, Saludos!.
Esta genial la explicación sería bueno q en hiciera un futuro vídeo emulando como lo q hace wsp
Eres un crack! Gracias por tu aportación. Es la primera vez que te veo y no creo que sea la única. Muy recomendable!!!!
4:19 no creo que haya entendido esa parte, como así que en WhatsApp los mensajes de tu amigo se pueden recuperar si el cambio de móvil o si reinstaló la aplicación? Hasta donde sé, si el no tiene backup, la información desde su lado se pierde para siempre y no se puede recuperar
Me gustaria conocer cómo funcionan los programas que detectan tu celular a partir de un código QR, como la parte de Whatsapp web, pero no es el único que lo hace. Como enlaza el celular y lo mantiene enlazado mientras está cerca.
5:04 Está bueno para hacer un meme "Clonando WhatsApp, Desarrollador Backend vs Frontend" 🤣
3:45 similar a como trabajan los Switches y Routers??
Muy interesante como siempre. Esperare con muchas ganas los siguientes videos.
lo tenía guardado hace varios meses , y recien ahora voy a verlo
Me encantan los videos de diseño de sistemas. Gracias por el contenido. Como comentario diría si subes más videos de este estilo sería genial :)
Muchas gracias por el comentario! :D
Excelente video. Bien explicado. ¡Muchas gracias!
Me encanta este canal!! Podrías hacer vídeos sobre inteligencia artificial!!
Gracias! Veré que puedo hacer 🥰
Cada canal está especializado en una cosa concreta. Si te interesa un tema, ve al canal especializado en él. No hay que obtener refritos,pudiendo consumir originales ruclips.net/video/7xtX1KNSlrY/видео.html
@@a0z9 Vale, pero yo puedo decir eso, porque quiero y me gustaría verle a el explicando eso.
Que lenguaje de programación uso? Que excelente video me encanta este canal
ya llevo viendo varios videos del tuyos y estoy que flipo con toda la información esta muy interesante si puedes hacer un video sobre netflix como mantiene la escalabilidad estaria muy interesante
Estoy aprendiendo con tus videos fascinante como explicas de fácil.....
Gracias! 🙏
Pregunta por q no tenés el servidor de Index y solo pasas la sesión a el teléfono para q se conecten entre sí, omitido carga al servidor q el servidor aga de DNS no
Yo me imaginama algo mas como MQTT usando topics,
Por ejemplo los mensajes usuario usuario seria un topic /messages/usuario-usuario
y para los grupos, un topic /messages/grupo_uuid y los "telefonos" se subscriben a ese topic
No lo se, es solo una vaga idea.
Amigo. Configura el autofocus de la camara para que solo enfoque la cara. Con face detecting. Asi se evita esos continuos desenfoques que se ven en el video. Ok
Excelente contenido.
Ojalá pudieses subir más vídeos de diseño de sistemas.
Sublime como siempre! Que diferencia hay y como manejan la escalibilidad en chats de apps como Instagram/Facebook?
El caso concreto de cada empresa puede ser muy distinto aunque el objetivo sea el mismo. Cuando haga la serie de diseño de sistemas intentaré aportar un poco el como yo atacaría el problema, peor luego la realidad puede ser muy diferente.
Me mola la camisa donde la has comprado?
Muy muy interesante, me suscribo a través de este video. Me encantaría ver videos mas extensos de explicación de sistemas en general. Gracias
Deberías de hacer un vídeo de el protocolo de comunicación SSH