Выставите сайт, и я провожу на нем выходные.

задняя часть
Выставите сайт, и я провожу на нем выходные.

Здравствуйте, меня зовут почему.

Что вы делали в прошлые выходные, свернувшись или лежа?

Я вообще-то хотела полежать, но случайно нашла обучающий сайт, меня собственно этот сайт и привлек, а потом с сайтом скатилась.

Это действительно очень хороший веб-сайт, хорошие вещи, которыми я хочу поделиться со всеми, поэтому я решил «разоблачить» его.

Прежде чем представить этот сайт, позвольте мне задать вам вопрос:

Знаешь, Артем, этот инструмент для диагностики Java-программ?

Я полагаю, что это известно большинству студентов, но есть и большое количество студентов, которые находятся только на стадии «говорения на бумаге».

Сам правда не эксплуатировал.

Зачем?

Я думаю, когда вы впервые узнали об Артасе, вас, должно быть, привлекли его различные классные операции и страницы.

Я подумал про себя: какого хрена, так 6?

С азартом я был готов практиковаться, а результат был такой: мне нужно было самому собрать Демо, кинуть Демо на сервер для запуска, а потом установить Артаса на сервер для его анализа.

Этот набор операций не представляет проблемы для большинства людей.

Однако все еще остается значительное количество студентов, у которых нет собственного сервера.

Умной женщине тоже трудно готовить без риса.

Первый шаг застрял.

Имейте сердце и практику, но условия ограничены.

Так что это дело было отложено, а так как я никогда не практиковался в этом сам, я почти забыл о различных грязных операциях Артаса.

Нет ни демо, ни сервера, ни сервера с установленной средой.

Такого рода проблемы возникают часто, и их также можно рассматривать как проблему «последней мили», с которой приходится сталкиваться в обучении.

Этот веб-сайт, на который я наткнулся, предназначен для решения проблемы «последней мили».

Может быть, это не идеально, но, по крайней мере, поддержка Артаса безупречна, настоящее практическое обучение.

С таким большим предзнаменованием, что такое веб-сайт?

Это этот сайт:

https://start.aliyun.com/

Лаборатория знаний — это облачная технологическая платформа с открытым исходным кодом, разработанная Alibaba Cloud, дочерней компанией Alibaba.

Он поставляется со своей собственной средой выполнения.

Пользователям нужно заботиться только о содержании самого туториала, не тратя время на утомительную подготовку операционной среды. Все эксперименты запускаются в контейнере с заранее подготовленной средой выполнения.

Он имеет захватывающий опыт обучения.

Интегрируйте три окна интерактивного документа, терминала и редактора в одну страницу браузера без копирования и вставки туда и обратно в нескольких окнах.

Он может автоматически выполнять команды и автоматически изменять коды одним щелчком мыши.

С документами можно взаимодействовать в режиме реального времени, а такие операции, как автоматическое выполнение команд одним щелчком мыши, автоматическая модификация кода и т. д., могут выполняться щелчком мыши; вы также можете выбрать ручной вход в терминал или редактор для просмотра эффекта.

Я знаю, стиль здесь очень похож на рекламу.

Но я клянусь, я действительно в курсе, и я действительно рекомендую это.

Чтобы принять участие, больше рук

Зная Action Lab, вы можете видеть из названия, что оно подчеркивает «единство действия и знания» и «практическое действие».

Однажды я видел статью Али под названием «Я смотрю на путь роста технологов».

В статье предлагается оригинал 721:

70% учатся на практике, 20% учатся у других, 10% учатся сами

Но на самом деле приходится признать, что самостоятельная работа занимает значительную долю.

И у всех есть общая проблема при самообучении: они только видят, только думают и в основном ничего не делают.

Что касается практического применения, то больше всего меня впечатлила эта книга:

Я помню, как читал эту книгу, когда я только что закончил университет, больше года назад.

В то время я чувствовал, что техническая книга стоит довольно дорого, поэтому купил ее вместе с коллегами, один человек заплатил половину денег, а книга осталась в офисе, чтобы все читали вместе.

Я читал эту книгу всякий раз, когда у меня было время.

Когда я прочитал ее в первый раз, я почувствовал: вау, это действительно хорошая книга. Он полон вещей, которых я не знаю.

Но после прочтения, вскоре после этого, я столкнулся с проблемой и долго думал над ней: Э-э, эта проблема, кажется, упоминалась в книге, почему я не могу ее вспомнить?

Поэтому я спросил своего коллегу: как вы читали эту книгу? Некоторое время назад я перелистывал каждую страницу книги, но сейчас уже многого не могу вспомнить.

Он сказал мне: Во-первых, читайте больше, объем информации в книге для вас все еще слишком велик, и это нормально, что вы не усваиваете ее полностью после прочтения. Кроме того, вы следовали так много практических примеров в книге? Я эксплуатировал его снова и снова и столкнулся со всеми видами ям. Впечатлил естественно немного глубже.

Можно сказать, что это слово разбудит мечтателя, я действительно не практиковал его.

Я не только никогда не практиковал его, но когда я увидел конкретные команды в практической части, я просто просмотрел его и закончил, потому что я не думал, что эта часть важна.

Позже я перечитал ее еще раз.Когда я перечитал ее снова, я настроил несколько серверов, поэтому я следовал книге и набирал все вышеперечисленные команды.

Прогресс намного медленнее, но и поглощение тоже намного, намного больше.

Прошло так много лет, и я до сих пор помню сцену, когда я пошел в компанию, чтобы полистать эту книгу на выходных. Я помню всевозможные странные проблемы, с которыми я столкнулся, когда следовал книге, чтобы построить кластер. Я помню слоты 16384 и redis-trib.rb, до которого не могу добраться.

Помню, через несколько лет интервьюер спросил меня: знаешь ли ты кластер Redis, сам собирал кластер?

Конечно помню, ведь когда молодой человек со стажем всего в один год стиснул зубы и настроил кластер, его психика несколько раз была сломлена.

Есть также «45 лекций по практике работы с MySQL», «Как работает MySQL» и «Высокопроизводительный MySQL», которые я периодически просматривал в последнее время.

На самом деле в ней очень много примеров, особенно 45 лекций, хорошие вещи, преподаватель все на кейсах.

Когда я читал его, он был очень медленным.В любом случае, понял я это или нет, я сначала открыл несколько окон, затем подготовил SQL для эксперимента и шаг за шагом следовал за учителем.

Короче говоря, это о том, чтобы начать. Практический опыт — единственный способ изучить новые технологии.

Учиться, делая, значит делать это вручную, и учиться, делая.

Однако большая часть времени при этом уходит на подготовку среды, что приводит к немного низкой эффективности.

И этот сайт на некоторых проектах решает эту проблему.

лаборатория ноу-хау

Вернитесь в Лабораторию действий знаний, пригласите всех посетить этот сайт.

Честно говоря, сейчас на этом сайте не так уж и много всего, то есть мне понадобились выходные, чтобы изучить его.

В основном из-за того, что есть некоторые проекты с открытым исходным кодом, о которых я мало что знаю, я пошел, чтобы узнать об этом и расширил свой кругозор.

Основными из них являются некоторые технологические стеки в экосистеме Alibaba.В настоящее время существует 16 учебных пособий:

Видно, что первое, что бросается в глаза, это диагностический прибор Артас, ведь это один из самых перспективных сыновей Али.

Делайте все возможное, чтобы продвигать его, но не слишком.

Артас разделен на четыре урока, от вводного до практического.

Далее следует опыт серии Spring Cloud Alibaba:

Шесть небольших экспериментов, включая распределенную конфигурацию, регистрацию и обнаружение сервисов, основаны на Nacos. Dubbo Spring Cloud используется для вызовов RPC, Sentinel — для ограничения тока и прерывателя цепи, Seata — для распределенных транзакций, а RocketMQ — для распределенных сообщений.

Он в основном охватывает основные модули разработки микросервисов.

Это полный опыт.

Конечно, есть и другие практические руководства по RocketMQ, Dapr, Dubbogo, ChaosBlade и k8s, поэтому я не буду объяснять их по отдельности.

Все знают, что там есть эти вещи.

Все упомянутые выше могут быть немного незнакомы с Dapr и ChaosBlade.

Кратко.

Полное название Dapr — Distributed Application Runtime, что переводится как Distributed Application Runtime.

Это в основном для облачных сервисов.

Это должна быть технология в сервисной сетке. Это среда выполнения, поддерживающая k8s. Цель состоит в том, чтобы лучше изолировать бизнес и сделать его менее осведомленным об инфраструктуре, такой как промежуточное программное обеспечение.

На самом деле это должна быть архитектура istio.

Следует отметить, что Dapr — это проект с открытым исходным кодом, инициированный Microsoft, а не Ali.

Али является активным участником и одним из первых внедрил проект с открытым исходным кодом Dapr, что эквивалентно поддержке крупного отечественного производителя Dapr.

ChaosBlade — экспериментальный инструмент внедрения с открытым исходным кодом от Alibaba, который следует принципам хаос-инжиниринга и экспериментальной модели хаоса, помогает предприятиям повысить отказоустойчивость распределенных систем и гарантирует непрерывность бизнеса в процессе миграции предприятий в облако или в облако. -родные системы.

Цитирование его описания на git:

https://github.com/chaosblade-io/chaosblade/blob/master/README_CN.md

Экология проекта такова:

В настоящее время поддерживает так много сценариев:

Например, в Лаборатории действий знаний есть три экспериментальных сценария:

Короче говоря, вы должны запомнить одно предложение о ChaosBlade:

Это для разрушения. Внедрение различных ошибок в систему или среду, в которой работает система, для тестирования и повышения стабильности и высокой доступности системы.

В Лаборатории действий знаний, в дополнение к упомянутым выше официальным руководствам, также поддерживается загрузка собственных руководств всеми желающими.

Для публикации туториалов на нем подходят следующие ситуации:

  • Сообщества разработчиков с открытым исходным кодом и разработчиков публикуют вводные руководства по проектам с открытым исходным кодом на Zhixing, чтобы помочь пользователям вашего сообщества лучше начать работу.
  • Автор технических книг публикует ваши эксперименты с книгой о Чжисин, чтобы компенсировать недостатки технических книг, которые можно только читать, а не практиковать.
  • Курсы, выпущенные учебным заведением в Чжисине, являются в первую очередь связанными учебными пособиями.С помощью существующих видеокурсов ваши студенты могут практиковаться в Чжисине.

Подумайте об этом, если бы сопровождающие эксперименты в книге «Разработка, эксплуатация и обслуживание Redis», о которых я упоминал ранее, можно было бы опубликовать здесь, разве это не было бы замечательно?

Эффективность обучения определенно повысится снова.

Учебники — одна из основных функций лаборатории.

Однако у него есть еще одна замечательная особенность:

Инженерные леса Java, следующий слоган:

Инженерные леса Java, которые больше подходят для разработчиков в Азиатско-Тихоокеанском регионе.

Хотя я до сих пор не понимаю, почему он «больше подходит для Азиатско-Тихоокеанского региона», все равно звучит очень мощно.

Страница выглядит так, разве это не выглядит знакомо?

На первый взгляд, это тот, который всем более знаком:

https://start.spring.io/

Но благодаря моему фактическому использованию я должен сказать, что строительные леса Али лучше использовать.

Например, я использую скаффолдинг Али и выбираю пример кода для веб-проекта при сборке:

Структура проекта следующая:

И этому веб-проекту не нужно изменять строку кода или даже запускать базу данных, он может работать напрямую.

Поскольку он использует базу данных h2:

После запуска получите доступ к консоли h2 следующим образом:

Хотя я обнаружил несколько ошибок во время работы над демо-проектом, в целом он безвреден и легко модифицируется, но по-прежнему очень удобен для новичков.

На этой странице я также нашел архитектуру проекта под названием COLA:

Что такое КОЛА?

https://github.com/alibaba/COLA/

Я вытащил демо-версию COLA на официальном сайте и запустил ее Структура проекта выглядит следующим образом:

Чиновник дал такую ​​схему структуры кода:

Когда я это увидел, я, наверное, понял, что есть уровень приложения, уровень домена, уровень инфраструктуры.Эта архитектура на самом деле является своего рода посадочной идеей DDD.

После краткого понимания этих двух дней я обнаружил, что если я хочу понять абстрактную идею DDD, то архитектура COLA, я чувствую, что это хорошая отправная точка.

Учебник Артаса

Так много вещей было представлено ранее, я возьму вас на практику, золотой учебник внутри:

На самом деле, я не думаю, что это действительно необходимо, потому что туториал по нему — это уже пошаговое обучение рукопашному бою.

Например, если вы посмотрите на это базовое руководство по Артасу, я запишу для вас экран:

Слева рабочий документ, а справа операционная среда. Что получишь, то и получишь, как ароматно.

Я настоятельно рекомендую вам прочитать все четыре руководства и использовать их.

Но основное внимание можно поставить в этом уроке:

Посмотрите 14 экспериментов в этом уроке:

Это все практическое обучение. Среды, сценарии и инструменты других людей подготовлены для вас. Вам просто нужно сосредоточиться на том, как использовать инструмент.

Например, «случай горячего обновления кода Arthas» на самом деле является проблемой, с которой часто сталкивается производственная среда:

Проблема с логикой суждения, не хочется модифицировать код, переупаковывать, а потом выходить в интернет, что делать?

Горячее обновление Артаса понять?

Например, следующий код:

@GetMapping(value={"/user/{id}"})
public User findUserById(@PathVariable Integer id) {
    logger.info("id: {}", (Object)id);
    if (id != null && id < 1) {
        throw new IllegalArgumentException("id < 1");
    }
    return new User(id.intValue(), "name" + id);
}

Теперь выдает исключение, когда запрошенный идентификатор меньше 1. Но после выхода в интернет мы обнаружили, что это место может возвращать значение по умолчанию после оценки, и было бы лучше не генерировать исключение.

Затем мы можем использовать Артаса для горячего обновления этого кода.

Слева после модификации, справа до модификации:

Конкретно как модифицировать, как использовать ClassLoader для загрузки модифицированного кода, на этот случай есть подробная инструкция:

Конечно, если вы понимаете принцип работы его горячего обновления после фактической работы, то это будет лучше.

Умейте им пользоваться и освойте принцип реализации. Поздравляю, дайте свой комплект производственного кейса, дополнительный балл, когда вы ненароком берете интервью.

К тому же, по-тихому скажем, показательная операция.

Вы можете просто найти учебник, получить окно и...

Например, я устанавливаю Redis:

Также хорошо использовать:

И он также поддерживает загрузку и скачивание файлов:

Эх, это просто для удовольствия. Просто ознакомьтесь с командами Linux.