DTube 0.8: La gran actualización finalmente está aquí.steemCreated with Sketch.

in e5 •  6 years ago 

DTube 0.8: La gran actualización finalmente está aquí. DTV, DTalk, sistema VIP, etc.
heimindanger ( 67 ) endtube • hace 5 meses

La versión 0.8 tomó un tiempo, este artículo explicará por qué. Pero viene con muchas cosas nuevas que fueron altamente solicitadas. Casi un año después de nuestra creación, estamos llegando a la octava versión de DTube y hasta dónde hemos llegado. Esta actualización una vez más introduce más características nuevas para que la experiencia sea más completa y similar a las plataformas de video principales. Pero antes de hablar sobre nuevas características, tengo un gran anuncio:

DTube ahora es totalmente de código abierto
Hasta ahora, todo era de código abierto, excepto la aplicación principal que solo estaba disponible en formato minificado, que aparentemente era muy frustrante para muchas personas.

Me complace anunciar que DTube ahora es un software de código abierto 100% gratuito. Nuestra aplicación principal ahora está disponible para que todos la lean o modifiquen en github.com/dtube/dtube . Este es otro movimiento con la esperanza de mejorar la transparencia de nuestro proyecto y permitir las contribuciones de cualquier persona.

Notificaciones
He hablado mucho sobre las notificaciones en artículos anteriores, y es algo que pensé que tendríamos antes en nuestro desarrollo. Finalmente, aquí está. Se requieren muchos cambios en DTube para que cualquier contenido pueda verse en DTube, incluido el contenido que no sea de video.

Nuestras notificaciones son totalmente similares a lo que busy.org implementó, solo el lado del cliente es ligeramente diferente y debería permitirle identificar mejor en qué notificaciones ya ha hecho clic.

DTV : Livestreaming ahora disponible en DTube

Una nueva característica importante, que estoy seguro de que todos disfrutarán, es la transmisión en vivo. Estamos utilizando MistServer , un servidor de transmisión en vivo centralizado, con una versión de código abierto .

Además de Mist, construí una api para generar de forma segura claves de transmisión asociadas directamente a un nombre de usuario de steem. Cuando haga clic en el botón para obtener su clave de transmisión, se creará una dtubeStreamVeriftransacción personalizada en segundo plano que verificará su identidad de steem y autorizará su token de transmisión. Esto significa que puede iniciar la transmisión en vivo, sin tener necesariamente que publicar una nueva publicación raíz en la cadena de bloques.

Por supuesto, esta característica es efectivamente monetizada. Una vez que se transmita, solo publique su transmisión en la página 'Go Live', y se creará un nuevo contenido de steem. Su transmisión en vivo se mostrará en la sección de DTV de DTube. Al igual que con los videos, a medida que recibes más y más votos, tu transmisión subirá en las listas y aumentará tu audiencia de forma orgánica.

Si bien descentralizar livestream sería bueno, es una tarea difícil que tomará tiempo. Es nuestro objetivo final. Sin embargo, a diferencia de la codificación de video en masa, los servidores de transmisión en vivo son un mercado muy abierto con muchas alternativas, incluidas las de código abierto. Decidimos que es una buena opción usar solo eso por ahora, ya que no nos genera mucho costo ni tiempo de mantenimiento, al tiempo que satisfacemos la mayor demanda de nuestra comunidad.

Quería lanzar esto como una función de transmisión básica, pero muchos usuarios privados se quejaron de que una transmisión en vivo en sí misma no serviría de nada si el video no estuviera disponible más adelante. Por lo tanto, estamos almacenando todas sus transmisiones en vivo dentro de nuestra infraestructura, y al hacer clic en un contenido antiguo se mostrará el video correspondiente al momento de la publicación en la cadena de bloques de steem. Estos videos, así como las transmisiones de livestream, no están codificados (un poco cómo nuestros videos no estaban codificados en versiones anteriores del proyecto), así que ten eso en cuenta y asegúrate de que la calidad de tu transmisión no sea demasiado alta si quieres Los usuarios con mala conexión a internet podrán seguir tu stream.

En la próxima versión de MistServer, también deberíamos tener acceso a la transmisión de WebRTC, que permitirá la transmisión directa en el navegador a través de WebRTC, es decir, ya no será necesario que el software como OBS o Larix Broadcaster comience la transmisión.

DTalk : Steem Mensajería Privada
Steem Private Messaging es un tema que parece volver a la vida de vez en cuando, sin encontrar una solución que funcione. Personalmente creo que si todas las redes sociales principales han implementado la mensajería , hay una razón. Actualmente, la mayoría de los steemianos están usando steem.chat o Discord. Estas soluciones son deficientes porque requieren que los usuarios verifiquen con quién están hablando, si no quieren que se les preste atención. Si queremos una verdadera forma de enviar mensajes entre los usuarios de steem, no deberíamos necesitar una cuenta secundaria en Discord en Steem.chat.

Algunos otros desarrolladores han intentado encontrar soluciones a este problema anteriormente, como Mangosteem by @mynameisbrian o Steem Messenger by @therealwolf . Estas soluciones no fueron adoptadas por la comunidad porque están en cadena. Mangosteem hizo spam en la cadena como comentarios y quedó inutilizable después de poco tiempo. Steem Messenger utiliza las operaciones de transferencia para enviar mensajes (cortos), por lo que cada mensaje costará 0.001 STEEM o SBD. Además, incluso si no pudiera decodificar un mensaje, aún sabría quién está hablando con quién.

Después de considerar detenidamente estos hechos y de querer permitir que los usuarios de DTube se envíen mensajes, he intentado encontrar soluciones. Una solución centralizada simple sería usar un servidor irc modificado que pueda iniciar sesión con los usuarios de STEEM pidiéndoles que descodifiquen un mensaje que solo ellos pueden descifrar. Esta solución funciona bien y debería escalar tan bien como un servidor IRC tradicional (bastante bueno).

Pero, ¿podemos descentralizarlo?
Si podemos hacerlo para fotos y videos, ¿por qué no las cadenas de texto? Porque si no queremos usar la cadena de bloques STEEM como una base de datos como usualmente lo hacemos, el almacenamiento de los mensajes no serviría para nada, ya que no tendríamos manera de obtener todos los mensajes de la misma discusión fácilmente ... Lo que necesitamos es una base de datos descentralizada que se ejecuta dentro del navegador, dentro de la aplicación DTube ...

¡Si podemos!

Para este propósito, DTube ahora está usando Gun , una tecnología de base de datos de gráficos descentralizada . Fue creado por @marknadal , con quien tuve la suerte de colaborar para hacer realidad a DTalk. Un buen ejemplo de arma que se usa en la producción hoy en día es notabug.io , un reddit descentralizado, que funciona al 100% en el arma, sin blockchain, sin backend. DTube es ahora otro gran ejemplo de las capacidades de Gun.

Al igual que para IPFS, DTube tendrá un nodo Gun que se ejecuta 24/7 dentro de la infraestructura, lo que debería ayudar a los corresponsales a ver mensajes nuevos, incluso si el remitente se desconectó, y mantener sus mensajes cifrados almacenados en algún lugar, incluso si borra todos sus navegadores.

Todos los mensajes están cifrados de extremo a extremo, y descubrir quién habla con quién es imposible si no puede descifrar el mensaje. La única advertencia es que necesitará publicar su llave de pistola dentro de su perfil para poder ser detectada y recibir mensajes de otros usuarios. Debería ver un botón rojo en la parte DTalk de DTube. Es una cosa que se hace una sola vez, excepto si reinicia sus teclas STEEM, en cuyo caso tendrá que volver a hacerlo y todas sus conversaciones antiguas se perderán.

Entonces, si bien la primera opción probablemente hubiera funcionado mejor y con menos trabajo, la segunda es nuestro objetivo final, es por eso que estamos comenzando esta función directamente con un enfoque descentralizado, incluso si es posible que tenga un poco de buggy en las primeras semanas, mientras que Manejar todos los detalles.

Manejo de DMCAs
No es realmente una buena función, pero hemos comenzado a bloquear algunos videos del dominio d.tube en base a las quejas de DMCA que hemos recibido. Ahora estamos ejecutando un servidor súper delgado de 18 líneas que identifica videos DMCA'd.

Esto es desafortunado, pero todas las solicitudes recibidas hasta el momento han sido 100% legítimas, en su mayoría han sido reeditadas o en enlaces a software pirateado. Una gran mayoría de nuestros usuarios están jugando limpio y cargando solo contenido original, ¡sigamos así!

Agrupando nuestra infraestructura
Después de la actualización anterior, estábamos administrando aproximadamente 10 servidores especializados de diferentes tamaños para D.Tube. Algunos se enfocaban en el almacenamiento (servidores de almacenamiento), otros en la potencia de cómputo (servidores de codificación), otros se utilizaban para propósitos generales o pruebas. Esto fue conveniente y simple de administrar mientras teníamos un bajo número de servidores, pero el crecimiento del proyecto nos obligó a profesionalizar esa parte, aunque en el futuro no se debe ejecutar nada del lado del servidor, no es así. Es el caso actual.

Agrupar todo, es un poco como crear una gran máquina combinando todas las otras máquinas. Esta gran máquina es lo que llamamos un cluster. Luego, con herramientas de virtualización como Docker, podemos lanzar muchas instancias pequeñas del mismo software dentro del clúster, sin tener que alquilar un nuevo servidor y esperar cada vez.

Dockerificación de todo nuestro software.
Estas pequeñas instancias se ejecutan a través de Docker, una forma popular de lograrlo. La mayoría de los testigos de STEEM también están utilizando la ventana acoplable para ejecutar la cadena de bloques STEEM.

La mayoría del software que ejecutamos en el lado del servidor es nuestro propio código, y el ipfs-uploader, por ejemplo, no estaba listo para el soporte de clústeres. Tuvimos que adaptar todo para que sea fácil iniciar / detener cualquier número del mismo servicio de DTube y escalar.

Por el momento, nuestro cluster ejecuta un total de 7 servicios:

traefik: el servicio que maneja todo el tráfico y lo redirige al buen contenedor docker
IPFS Uploader: nuestro servicio de carga (codificación ffmpeg, reajuste de tamaño, nodo ipfs)
Streaming: MistServer combinado con nuestra propia api de claves de transmisión.
Entrega directa de video (más sobre esto más adelante)
Nodo GunDB
MariaDB (nuestra base de datos de sql pequeño para contabilidad y @ dtube.rewards )
vip.d.tube: un sitio web pequeño para crear rápidamente cuentas steem si tiene un código
Almacenamiento de datos y redundancia.
Otro gran problema de nuestra configuración anterior, fue lo que ocurrió cuando murió un disco. Todos los datos en su interior murieron con él y, a menos que el archivo se haya copiado en otro nodo ipfs, o el autor vuelva a cargar el mismo archivo, el video nunca se volvería a cargar. El plan original era administrar la redundancia con IPFS, pero el uso ipfs pin lsen grandes almacenes de datos como el nuestro lleva demasiado tiempo y no es manejable.

En su lugar, tratamos de utilizar soluciones existentes de nivel empresarial para crear básicamente una enorme carpeta en la nube para todos nuestros videos, y cada bit de datos dentro de esta carpeta se escribe en al menos 2 máquinas físicas reales diferentes. Primero probamos 'GlusterFS', que terminó siendo muy lento debido a todos los archivos pequeños creados dentro del almacén de datos de IPFS. Finalmente estamos usando Ceph, que parece hacer lo que queremos que haga.

Migración
Una parte importante del proyecto de clúster, fue trasladar todo desde nuestra configuración simple a lo nuevo que no tenía pruebas previas. Hicimos algunos días de prueba en los que la mitad de nuestras subidas irían al clúster y la mitad en la configuración anterior. Terminamos de migrar la carga de ipfs y la entrega de video al clúster el 19 de junio.

IPFS se vuelve lento, agregando la entrega directa de video
En medio de todo este cambio, la puerta de enlace de la red IPFS comenzó a ser más lenta para cargar videos, incluso cuando usamos nuestra forma de hacer las cosas en la vieja escuela. Los usuarios se quejaban. Teníamos que hacer algo. Creamos un nuevo servicio que se ejecuta en el dominio 'video.dtube.top', que sirve videos directamente desde nuestro clúster, exactamente como IPFS, pero sin pasar por la red IPFS. Los archivos aún se guardan en el almacén de datos de IPFS y la recuperación del video de IPFS aún funciona.

Si bien esto fue cierto hace 1 mes, parece que IPFS logra cargar videos nuevamente muy rápido. Espera mira

Problemas que tuvimos
Todos estos cambios en la infraestructura tuvieron un costo bastante alto. Nuestro servicio ha sido inestable en los últimos meses.

Tuvimos un gran incidente el 15 de julio que causó aproximadamente 6 horas de inactividad de las cargas y la entrega de videos.

También tuvimos varios incidentes a corto plazo, principalmente durante el período de migración. Ya sea colas súper largas para la carga, o videos que no se reproducen.

En nombre del equipo de DTube, me gustaría disculparme por todas estas fallas. Nuestro servicio ha estado funcionando sin interrupciones durante las últimas 3 semanas , y creemos que será bueno ahora. En caso de problemas, comuníquese con nosotros en el canal # upload-issues como lo ha hecho en el pasado, esto nos ayuda enormemente.

Comienza el desarrollo de DTube con Utopian.io
Si bien hoy solo estoy anunciando en nuestro blog el hecho de que la aplicación principal de DTube es de código abierto, ya hemos recopilado 75 estrellas y muchas solicitudes de contribuciones de contribuyentes, en su mayoría de Utopian.

Contribuir al desarrollo de DTube con Utopian es una posibilidad única hoy en día para los desarrolladores de código abierto, y ya tuvimos múltiples experiencias positivas de desarrolladores que trabajan para DTube, por su propia motivación, sin esperar un pago. Excepto que terminan con criptografía en su cuenta y mucha visibilidad para su trabajo.

El proceso es fácil:

Encuentra algo en lo que trabajar. Ya sea en nuestros problemas etiquetados de GitHub o contactándome directamente en discord.gg/dtube
Escriba un buen código y envíelo como una solicitud de extracción en GitHub.
Revisaremos su solicitud de extracción y la fusionaremos, o comentaremos los problemas que descubrimos.
Dentro de los próximos 14 días de la fusión, envíe una publicación en la red STEEM. Puede ser un video de DTube.
La primera etiqueta debe ser utopian-io
La segunda etiqueta debe ser development.
???
Aprovecha y hazte famoso.
DTube 0.8 Contribuciones de código abierto
Nuevo estilo de curación
Colaborador: @wehmoen | Puesto utópico | Nuevo repo
Desde hace un par de semanas, tenemos un nuevo robot de discordia que ayuda a nuestros curadores a hacer su trabajo de manera más precisa.

¡En lugar de simplemente votar siempre al mismo porcentaje (20%), los curadores ahora pueden controlar el peso de votación del bot a través de emojis! Cada reacción (👍, 👎, 💯, 🎲 o ❤) tiene un impacto diferente en la votación.

Plataforma de incorporación DTube: vip.d.tube
Colaborador: @wehmoen | Puesto utópico | New Repo
Es algo que me han solicitado muchas veces y que no quería hacer antes, pero se está volviendo importante ahora. Ahora podremos generar códigos de cupones que permitan a las personas obtener una cuenta instantánea de STEEM. Planeamos distribuir estos códigos en eventos, probablemente directamente en nuestras tarjetas de visita como un primer. También podemos dar códigos a los Youtubers populares que desean hacer el cambio sin tener que esperar en el futuro.

IU pequeña y elevación gráfica (menú, carga, página de inicio, etc.)
Colaborador: @happyrobot | PR
0.8 se ve mejor que 0.7, y todo eso es gracias a nuestro nuevo colaborador @happyrobot . Los cambios más notables se verán en la barra lateral y en la página de carga, pero casi todo tiene un pequeño levantamiento.

Cajón inferior para listas de idiomas y notificaciones.
Colaborador: @happyrobot | PR
Nuestro menú de selección de idioma se estaba haciendo bastante largo, incluso en el escritorio, haciendo que los idiomas al final del alfabeto salgan de la pantalla. Las notificaciones también se estaban ejecutando en este problema en dispositivos móviles donde era imposible mostrar un menú flotante con todas las notificaciones dentro. Por lo tanto, creamos una nueva forma de mostrar una larga lista de información en DTube.

Recordando la configuración del usuario para modo de noche y peso de votación.
Colaborador: @kirkins | Puesto utópico | PR
Otra pequeña molestia al usar DTube fue cómo se restablecieron los ajustes de peso de votación o modo de noche cuando abrió una nueva pestaña o actualizó la actual. Esto ahora está funcionando como se esperaba y será recordado.

Ultimas palabras
Esta actualización es otro gran paso hacia la finalización de un gran proyecto. El año pasado, cuando originalmente publiqué acerca de la versión 0.1 de DTube, honestamente no tenía idea de dónde irían las cosas, ni siquiera estaba seguro de que funcionaría.

Quiero que DTube salga de la etapa de prueba de concepto y se convierta en un producto totalmente integrado. En este momento la maquinaria no está muy pulida, pero las cosas se están enchufando rápidamente.

Todavía hay toneladas de funciones que serán necesarias para hacer de DTube la plataforma de video que los productores y consumidores quieren usar en el futuro. Listas de reproducción, VOD, donaciones al estilo Twitch, análisis, plataforma de anuncios, sigo teniendo buenas ideas de características a medida que avanza el proyecto.

Únase al servidor Discord de DTube: https://discord.gg/dtube
Ponga algunas estrellas en nuestros repositorios de GitHub: https://github.com/dtube
Traduzca DTube a su idioma: https://crowdin.com/project/dtube
Cómo iniciar sesión en DTube: https: //about.d.tube#faq1
DTube: https://d.tube

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Hello @jose15! This is a friendly reminder that you have 3000 Partiko Points unclaimed in your Partiko account!

Partiko is a fast and beautiful mobile app for Steem, and it’s the most popular Steem mobile app out there! Download Partiko using the link below and login using SteemConnect to claim your 3000 Partiko points! You can easily convert them into Steem token!

https://partiko.app/referral/partiko

Congratulations @jose15! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!