Esta nueva tecnología de Microsoft hará que tus aplicaciones web se ejecuten más rápido
A pesar de todas las mejoras que Microsoft le ha hecho a lo largo de los años, la mayoría de la gente todavía piensa en SharePoint como un sistema de almacenamiento de contenido bastante arcaico, posiblemente una versión alojada más formalmente de OneDrive con un motor de flujo de trabajo. Pero como le gusta señalar a Jeff Teper, CVP de Microsoft 365, SharePoint es tanto una aplicación como una plataforma: las organizaciones pueden crear aplicaciones en SharePoint que incluyan flujos de trabajo y aprobaciones, y pueden usar marcos de trabajo de SharePoint (SPFx, controles de JavaScript, Crear sitios de intranet con cualquier Marco de JavaScript como React o Angular.
Cobertura de Windows de lectura obligada
OneDrive ahora funciona con SharePoint, y la nueva aplicación Lists en realidad usa la API Graph de SharePoint debajo. Microsoft Teams es, en muchos sentidos, una forma sencilla de acceder a los recursos de SharePoint: los archivos compartidos en Teams están en SharePoint y los chats privados se implementan en SharePoint como colecciones de sitios. El Fluid Framework de código abierto de Microsoft a principios de este año para crear aplicaciones distribuidas colaborativas, que el gerente general de Microsoft 365, Seth Patton, llama «una plataforma en la nube súper rápida y de alto rendimiento con inteligencia artificial incorporada», en realidad se basa en «Progreso bastante significativo». «escrito en almacenamiento de archivos de SharePoint turboalimentado».
Mirar: Principales comandos de ejecución de Windows 10 (PDF gratuito) (República tecnológica)
Teper recomienda ver Fluid como un avance en las API REST. «Creemos que esta capa ayudará a desbloquear la creación de varios backends para aplicaciones, con diferentes frontends [user experiences]Espero que veamos muchas aplicaciones de línea de negocios que hoy en día no son en tiempo real, se conviertan en tiempo real, agradables, interactivas y expongan componentes en su sistema de almacenamiento, que es su propio backend de procesos de negocios. »
La primera implementación propia de Microsoft de un backend Fluid es SharePoint en el nuevo servicio de consumo OneDrive, aunque es de código abierto el protocolo Fluid y las estructuras de datos, así como los componentes de colaboración que los desarrolladores pueden conectar a sus propios servicios backend, en lugar de solo SharePoint.
«Fluid comenzó con la forma en que fuimos más allá de todo lo que hicimos en torno a la colaboración de documentos, pusimos un nuevo sistema de almacenamiento específicamente en SharePoint que se asienta sobre el almacenamiento de Azure Blob que funciona en modo kernel para poner de forma nativa el protocolo en los mapas de estructura de datos de The Fluid para la [storage] Disk y SharePoint son increíblemente rápidos», dijo Teper.
Patton le dijo a Tecnopedia el año pasado que SharePoint Online usa Azure SQL y Azure Blob Storage detrás de escena. De hecho, SharePoint Online es el mayor cliente de Azure Storage, y los equipos de Windows y SharePoint trabajaron juntos para desarrollar una nueva pila de E/S de archivos para optimizar el rendimiento de los patrones de acceso de SharePoint. Esto incluye el cliente de disco virtual en modo kernel nativo en Azure, que realiza operaciones de lectura y escritura directamente en el servidor donde se almacena el blob, en lugar de hacerlo a través de un servidor y un equilibrador de carga de varios niveles (un servicio de almacenamiento similar denominado Direct Drive for Azure). Ultra Support para servicios de almacenamiento en disco, diseñado para cargas de trabajo intensivas de E/S como SAP Hana). En lugar de enviar una solicitud a Blob Storage de una parte del archivo a la vez, las solicitudes se deserializan y se envían en paralelo, de modo que cuando varias personas colaboran en un documento de Fluid, los cambios no esperan en la cola de almacenamiento.
Fluid es una nueva capa de datos que, en la implementación de Microsoft, usa esta nueva capa de almacenamiento de SharePoint para almacenar datos en el disco en Azure lo suficientemente rápido como para permitir lo que Teper llama «coautoría de latencia casi nula».
PWA más allá de lo básico
Si Fluid es el futuro de los backends de aplicaciones web, entonces Project Nucleus es la apuesta de Microsoft para mejorar el rendimiento y la confiabilidad de estas aplicaciones web, incluido el uso de ellas para navegar o editar datos cuando no está conectado (o si tiene una conexión lenta). red) ).
Las aplicaciones web progresivas (PWA) son una forma muy ligera de distribución de aplicaciones: pueden ir a una tienda de aplicaciones e instalarse como una aplicación nativa, o pueden ser algo que el usuario fijó desde un navegador web, como marcadores. Los PWA no inician una copia completamente diferente del motor del navegador (que también debe actualizarse por separado) como una aplicación Electron como Teams. Según el dispositivo, las PWA pueden obtener algunas de las mismas integraciones del sistema operativo que las aplicaciones nativas, como notificaciones y listas de salto.
Pero para cosas como SharePoint, los PWA no son una gran experiencia para trabajar con conjuntos de datos muy grandes y complejos porque el rendimiento no siempre es rápido, especialmente con conexiones de red lentas.
Al observar el rendimiento, el equipo de SharePoint mide qué tan rápido se muestra el contenido importante en la pantalla («primer dibujo significativo») y qué tan rápido la aplicación web puede responder a la entrada del usuario («primera CPU inactiva», el hilo del navegador No más tareas y puede responder de manera confiable a la entrada del usuario). El objetivo es hacer que los dos tiempos sean lo más similares posible para que puedas interactuar con el contenido tan pronto como lo veas en la pantalla. Para la mayoría de los usuarios, el objetivo actual del equipo de SharePoint es tener contenido en la pantalla en dos o tres segundos (dependiendo de qué tan dinámica sea la página y cuántos elementos web tenga); para las personas con redes lentas, el objetivo es de cuatro a seis segundos.
Ver también: Cómo reinstalar Windows 10 desde la nube (República tecnológica)
Nucleus se basa en la sincronización que hace OneDrive, incluida la sincronización diferencial (transfiriendo solo los cambios en el archivo a la vez, no el archivo completo) y lo usa como un caché para PWA para mejorar el rendimiento y permitir el uso sin conexión. El almacenamiento en caché no se limita a los archivos en OneDrive; utiliza un conjunto estándar de API para sincronizar la PWA con el backend en la nube, de modo que pueda almacenar en caché cualquier dato que necesite la aplicación. Los cambios que hagas sin conexión se cargarán cuando vuelvas a estar en línea. Por seguridad, el caché está encriptado y solo está disponible para PWA. Actualmente solo está disponible para navegadores basados en Windows y Chromium como Edge, pero cuando esté disponible de forma general, será multiplataforma y funcionará con todos los navegadores modernos.
El director de marketing de productos de Microsoft, Dan Holme, dijo a Tecnopedia que la próxima generación de aplicaciones web de OneDrive y SharePoint usará Nucleus, pero hará su debut en las Listas de Microsoft.
«El primer lugar en el que apareció fue con Microsoft Lists, que fue la evolución de las listas de SharePoint hacia una experiencia de lista de héroes independiente», dijo Holme. «Project Nucleus le permitirá usar sus listas sin conexión: manejará la combinación y sincronización de todos sus cambios. Detrás de escena, utiliza algunas de las funciones y tecnologías que desarrollamos mientras extendíamos OneDrive. OneDrive hace un gran trabajo de sincronizar archivos para clientes Como el stick, dado que estos archivos no están estructurados, lo que es aún más complejo en muchos sentidos, Project Nucleus facilitará el acceso sin conexión a las listas, tanto en dispositivos móviles como en computadoras de escritorio”.
Lista de alto rendimiento
Las listas son una buena aplicación de inicio porque el almacenamiento en caché significa que ordenar o agrupar columnas y filtrar, incluso en listas muy grandes, es muy rápido incluso en conexiones lentas. Microsoft ha demostrado esto con listas de 100.000 elementos, ha probado internamente listas de un millón de elementos y espera admitir listas más grandes. Ordenar una columna no llama al servicio web Lists; funciona con los datos en la memoria caché de Project Nucleus, por lo que ordenar o filtrar una lista de 100 000 elementos toma alrededor de dos milisegundos, lo que hace que parezca instantáneo.
La versión Project Nucleus de Microsoft Lists se encuentra actualmente en versión preliminar privada.
Pero Project Nucleus se basa en un marco extensible, por lo que otras aplicaciones web podrán aprovecharlo y cubrirá una variedad más amplia de datos que solo listas. Con el tiempo, estará disponible en SPFx y abierto a terceros que creen componentes.
«Esto se expandirá a muchas, muchas aplicaciones con el tiempo», dijo Holme. «Publicamos la aplicación del sitio principal en Microsoft Teams [at Ignite], que trae lo mejor de la intranet a los equipos para que las personas no tengan que abandonar su entorno de trabajo para buscar recursos en toda la organización o mantenerse al día con las noticias. Y Project Nucleus realmente acelerará el rendimiento de las intranets dentro de Teams. Con el tiempo, permitirá una experiencia de archivo más interesante en dispositivos móviles. En este momento, puede descargar un archivo para usarlo en un dispositivo móvil, pero aún no usa la sincronización verdadera, que será habilitada por Project Nucleus con el tiempo. »
«La tecnología de sincronización y fuera de línea que hemos creado en el lado del cliente como parte de OneDrive ha tenido mucho éxito, tenemos el marco Fluid en el servicio y tenemos la aplicación web progresiva como una forma de experimentar nuestra aplicación web», agregó. Holme. «Ahora, cuando esas tres cosas se juntan, tienes esta tecnología que permitirá nuevos escenarios como el acceso fuera de línea en el back-end».