Introducción a la competencia
Nativo de la nube
¡Te esperan grandes recompensas por registrarte!
Nativo de la nube
-
Comparte el premio en efectivo de ¥ 510,000 -
Tres pistas populares para elegir -
Invita a tus amigos a registrarse para canjear hermosos regalos -
Completa la experiencia de escena sin servidor para obtener la mochila Alibaba Cloud
Antecedentes del concurso
En la era de la nube, los IDE se están volviendo cada vez más livianos y distribuidos. Productos conocidos como VSCode e IntelliJ Idea han lanzado versiones Web IDE. En los campos de programas pequeños, código bajo/sin código, educación de programación en línea, desarrollo integrado front-end, procesamiento de big data y otros campos, Web IDE ha demostrado un valor cada vez más importante. por ejemplo:
-
¿Puedo usar las sugerencias de código inteligente del IDE para analizar el código del proyecto en github en lugar de clonar todo el proyecto? Intente reemplazar github.com en la URL del proyecto en Github con github.dev, puede usar el ide web de vscode para navegar y modificar el código en el navegador, ¿no es muy conveniente? -
Participe en el desarrollo de proyectos, ¿puede comenzar a codificar directamente sin perder tiempo instalando herramientas y bibliotecas dependientes? Intente anteponer https://gitpod.io/# a la URL del proyecto de github para crear un entorno IDE web preconfigurado para el proyecto y comience a desarrollarlo de inmediato, ¿no es genial? -
En escenarios como programas pequeños y código bajo, ¿existe un entorno de desarrollo integral altamente integrado que hace que el ciclo cerrado de desarrollo, depuración y efectos de visualización sea lo más corto posible? -
Las aplicaciones nativas de la nube inevitablemente dependen de varios servicios en la nube. La depuración de pruebas de integración en una máquina de desarrollo local es demasiado difícil. ¿No sería muy conveniente usar varios productos en la nube o llamar a servicios de flujo ascendente y descendente en el entorno remoto configurado? -
Para desarrollar aplicaciones X86 en computadoras portátiles de Apple basadas en chips de arquitectura ARM, la configuración de compilación cruzada es compleja y ejecutar aplicaciones X86 en modo analógico tiene un rendimiento bajo y un consumo de energía rápido. ¿Puede desarrollar y depurar programas en un entorno IDE X86 remoto? -
...
Análisis del tema
Web IDE es esencialmente un servicio SaaS Incluso con un excelente software IDE liviano como Vscode, aún existen muchos desafíos técnicos para crear un servicio Web IDE confiable y fácil de usar:
-
Aislamiento de seguridad multiinquilino. Para acceder a los activos principales del usuario: el código, Web IDE debe lograr un aislamiento de seguridad entre diferentes inquilinos para garantizar la seguridad de los datos. -
cuota de recursos. El uso de los recursos por parte de los usuarios debe ser controlable y no derribará todo el sistema ni afectará a otros usuarios. -
Los datos se guardan en tiempo real. Los usuarios pueden cerrar la página en cualquier momento sin preocuparse por la pérdida de datos. -
El estado se restaura en tiempo real. Cuando los usuarios quieren seguir trabajando, pueden restaurar al último estado en segundos y seguir trabajando. -
Alta utilización de recursos y bajo costo. La gran mayoría del uso de IDE está fragmentado y solo se usa durante una pequeña parte del día, por lo que no es aconsejable tener instancias de IDE residentes. -
...
-
¿Cómo iniciar una instancia ejecutándose en segundos? -
¿Cómo optimizar la utilización de recursos para el uso de IDE de cola larga y baja frecuencia? -
¿Cómo garantizar que el aislamiento de seguridad de la tenencia múltiple pueda alcanzar el nivel de la máquina virtual y lograr realmente la seguridad de los datos?
Ideas para resolver problemas
El equipo de la competencia brindó un ejemplo de Vscode sin servidor, ejecutando el servidor openvscode en la plataforma de computación de funciones sin cambiar una sola línea de código y realizando capacidades simples de recuperación y guardado de datos. El código de muestra completo tiene menos de 500 líneas, pero ya es un servicio Web IDE relativamente completo. Puede ampliar sobre esta base, incluyendo pero no limitado a:
-
Basado en la capacidad de aislamiento de múltiples arrendatarios de los servicios en la nube sin servidor, el ejemplo se extiende a un servicio IDE SaaS de múltiples arrendatarios. -
Optimice la estrategia de recuperación y guardado de datos, incluso si el usuario cierra accidentalmente la página del IDE o falla la instancia que ejecuta el IDE, el usuario aún puede recuperar rápidamente el estado anterior. -
¡Optimice el rendimiento de inicio de la instancia del IDE web y abra el IDE en segundos en cualquier momento y en cualquier lugar! -
Optimizar costos. Maximice la utilización de los recursos y reduzca los costos.
-
Para escenarios verticales como programas pequeños, código bajo y procesamiento de datos, implemente un servicio IDE integral similar a CodeSandbox, que cubra todo el proceso de desarrollo, prueba e implementación. -
Realice el desarrollo colaborativo multiusuario -
Puede instalar complementos de vscode en varios idiomas y escribir código de muestra con ciertos consejos inteligentes
-
La carga de archivos puede romper el límite de la carga útil máxima de 16M en el cálculo de la función
-
...
Documentación de referencia
Sitio web oficial de Function Compute:
Desarrolle rápidamente libros de cocina FC utilizando las herramientas Serverless-Devs:
Referencia oficial DEMO:
【Recompensas de experiencia】Laboratorio práctico del concurso
Nativo de la nube