Введение в конкурс
Облако Собственный
Большие награды ждут вас, чтобы зарегистрироваться!
Облако Собственный
-
Разделите денежный приз в размере 510 000 йен -
Три популярных трека на выбор -
Пригласите друзей зарегистрироваться, чтобы получить красивые подарки -
Завершите бессерверную сцену, чтобы получить рюкзак Alibaba Cloud.
Предыстория конкурса
В эпоху облачных вычислений IDE становятся все более легкими и распределенными.Такие известные продукты, как VSCode и IntelliJ Idea, выпустили версии Web IDE. В области небольших программ, Low code/No code, онлайн-обучения программированию, интегрированной разработки внешнего интерфейса, обработки больших данных и других областях Web IDE демонстрирует все более важное значение. Например:
-
Могу ли я использовать интеллектуальные подсказки кода IDE для анализа кода проекта на github вместо клонирования всего проекта? Попробуйте заменить github.com в URL-адресе проекта на Github на github.dev, вы можете использовать веб-идею vscode для просмотра и изменения кода в браузере, не правда ли, это очень удобно? -
Участвуйте в разработке проекта, можете ли вы начать программировать напрямую, не тратя время на установку инструментов и зависимых библиотек? Попробуйте добавить https://gitpod.io/# к URL-адресу проекта на github, чтобы создать предварительно настроенную среду Web IDE для проекта и сразу начать разработку, не правда ли? -
В таких сценариях, как небольшие программы и низкоуровневый код, существует ли высокоинтегрированная универсальная среда разработки, которая делает замкнутый цикл разработки, отладки и просмотра эффектов кратчайшим? -
Облачные приложения неизбежно зависят от различных облачных сервисов. Отладка интеграционных тестов на локальной машине разработки слишком сложна. Не было бы очень удобно использовать различные облачные продукты или вызывать вышестоящие и нижестоящие сервисы в настроенной удаленной среде? -
Для разработки приложений X86 под ноутбуки Apple на базе чипов архитектуры ARM конфигурация кросс-компиляции сложна, а запуск приложений X86 в аналоговом режиме имеет низкую производительность и быстрое энергопотребление.Можно ли разрабатывать и отлаживать программы в удаленной среде X86 IDE? -
...
Тематический анализ
Web IDE — это, по сути, сервис SaaS.Даже с таким легким программным обеспечением IDE, как Vscode, по-прежнему существует множество технических проблем для создания надежного и простого в использовании сервиса Web IDE:
-
Многопользовательская изоляция безопасности. Чтобы получить доступ к основным активам пользователя — коду, Web IDE должна обеспечить изоляцию безопасности между различными арендаторами для обеспечения безопасности данных. -
ресурсная квота. Использование ресурсов пользователями должно быть контролируемым и не будет нарушать работу всей системы и влиять на других пользователей. -
Данные сохраняются в режиме реального времени. Пользователи могут закрыть страницу в любой момент, не беспокоясь о потере данных. -
Статус восстанавливается в режиме реального времени. Когда пользователи хотят продолжить работу, они могут восстановить последнее состояние за считанные секунды и продолжить работу. -
Высокая степень использования ресурсов и низкая стоимость. Подавляющее большинство IDE используется фрагментарно и используется только в течение небольшой части дня, поэтому неразумно иметь резидентные экземпляры IDE. -
...
-
Как запустить экземпляр, работающий за секунды? -
Как оптимизировать использование ресурсов для низкочастотного использования IDE с длинным хвостом? -
Как обеспечить, чтобы изоляция безопасности мультитенантности достигла уровня виртуальной машины и действительно обеспечила безопасность данных?
Идеи решения проблем
Команда конкурса представила пример Serverless Vscode, запустив сервер openvscode на платформе функциональных вычислений без изменения ни одной строки кода и реализовав простые возможности сохранения и восстановления данных. Весь пример кода занимает менее 500 строк, но это уже относительно законченный сервис Web IDE. Вы можете расширяться на этой основе, включая, но не ограничиваясь:
-
Основываясь на возможности многопользовательской изоляции бессерверных облачных служб, пример расширен до многопользовательской службы IDE SaaS. -
Оптимизируйте стратегию сохранения и восстановления данных. Даже если пользователь случайно закроет страницу IDE или экземпляр, на котором запущена IDE, выйдет из строя, пользователь все равно сможет быстро восстановить предыдущее состояние. -
Оптимизируйте скорость запуска экземпляра Web IDE и открывайте IDE за считанные секунды в любое время и в любом месте! -
Оптимизируйте расходы. Максимальное использование ресурсов и снижение затрат.
-
Для вертикальных сценариев, таких как небольшие программы, низкоуровневый код и обработка данных, внедрите единый сервис IDE, аналогичный CodeSandbox, охватывающий весь процесс разработки, тестирования и развертывания. -
Реализуйте многопользовательскую совместную разработку -
Может устанавливать многоязычные плагины vscode и писать примеры кода с некоторыми умными советами.
-
Загрузка файлов может нарушить ограничение максимальной полезной нагрузки в 16 МБ при расчете функции.
-
...
Справочная документация
Официальный сайт Function Compute:
Быстро разрабатывайте кулинарные книги FC с помощью инструментов Serverless-Devs:
Официальная ссылка DEMO:
【Награды за опыт】Конкурсная практическая лаборатория
Облако Собственный