1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/moxi159753-LearningNotes

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README_zh.md 15 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 08:16 f0cd781

Почему я обратился к автору открытого проекта, а он не отвечает мне?

14 этапов обновления архитектуры: как Tmall от одномашинной системы вырос до поддержки миллионов параллельных запросов?

Мокси причинил компании ущерб в 1 миллион...

Как использовать инструменты визуализации для управления микросервисами в блоге Мо?

Мокси собирается купить дом!

Можно ли использовать блог Мо в качестве дипломной работы?

Блог Мо обновился!

Установка блога Мо с помощью PaaS-решения.

Только один человек посетил блог Мо во время национальных праздников!

Поздравляю этого студента! Он наконец-то закончил учёбу!

Кто-то оставил комментарий в разделе для комментариев в блоге Мо!

Низкопроизводительный сервер также может поддерживать работу блога Мо!

Руководство по развёртыванию Go-версии блога Мо одним щелчком мыши.

Создание небольшого приложения для магазина товаров для родственников.

Друзья из Мо приехали в Ханчжоу...

Первая загрузка! Обязательные материалы для подготовки к собеседованию на крупных предприятиях BAT! Замечательные заметки Gitee!

Прощай, VMware, более лёгкая виртуальная машина!

Журнал обновлений сообщества Мо.

Шокирующая новость! Сообщество Мо подверглось DDoS-атаке!

Мокси искал блог Мо на Baidu и был шокирован.

Пусть ни у кого не будет проблем с настройкой!

Utools — мощная настольная платформа инструментов.

После года блог Мо снова сломался. Как изящно удалить CDN?

Набор персонала на весну в ByteDance. Мокси успешно прошёл собеседование.

Сайт открывается за 20 секунд. Я решил создать свой собственный CDN для Мо.

Я видел 40 случаев удаления базы данных за два года. Я решил написать сценарий резервного копирования для Мо.

Общественный аккаунт достиг 10 000 подписчиков.

Пошаговое руководство по созданию блога Мо на K8S.

На сайт была совершена атака!

Система реального времени для мониторинга ключевых показателей эффективности контейнеров Docker.

Использование Kubernetes для развёртывания сообщества Мо.

AOP реализует аннотацию проверки входа, которая может применяться к методам и классам.

Наш сайт был проиндексирован!

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

Java

Источник: обучающие видео на Bilibili от учителя Юй Ян из Silicon Valley, старшего преподавателя Zhouyang.

  • Разница между equals и другими методами.
  • Обычные блоки кода и статические блоки кода.
  • Распределённая блокировка.
  • Хранилище MySQL.
  • Динамический прокси JDK и динамический прокси CGLIB.
  • Аннотации Java и отражение.
  • Стирание типов дженериков.
  • Удаление ключей с заданным префиксом в Redis.
  • Некоторые проблемы с междоменными запросами на стороне клиента.
  • Замена интерфейса IP от Taobao на Ip2region.
  • Поговорим о дженериках T, E, K, V в Java.
  • Механизм загрузки классов JVM.
  • Установка плагина VisualGC для VisualVM.
  • Обсуждение ThreadLocal.
  • Объяснение AQS.
  • Как ArrayList расширяется.

Новые функции Java 8

Источник: обучающее видео на Bilibili от старшего преподавателя Li Hefei из Silicon Valley.

  • Изменения в HashMap.
  • Лямбда-выражения.
  • Ссылки на методы и конструкторы.
  • Мощные потоки.
  • Параллельные потоки.
  • Контейнерный класс Optional.

NIO

  • Что такое NIO?
  • Эволюция от IO к NIO.
  • Различия между IO и NIO.

JVM

Источник: обучающий курс по JVM от старшего преподавателя Song Hongkang из Silicon Valley на Bilibili.

  • JVM и архитектура Java.
  • Подсистема загрузки классов.
  • Сравнение IO и NIO.
  • Данные о времени выполнения и потоках.
  • Счётчик программ.
  • Виртуальная машина стека.
  • Интерфейс и стек локальных методов.
  • Стек локальных методов.
  • Куча.
  • Область метода.
  • Обзор и расположение объектов в памяти.
  • Прямой доступ к памяти.
  • Исполнительный движок.
  • StringTable.
  • Сбор мусора: обзор.
  • Алгоритмы сбора мусора.
  • Концепции сбора мусора.
  • Сборка мусора. Волатильные переменные и модель памяти JMM: видимость

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

Модель памяти Java (JMM) определяет правила и гарантии видимости изменений переменных между потоками в многопоточной среде. Волатильные переменные играют ключевую роль в обеспечении этих гарантий.

Волатильность и атомарность

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

Например, если у вас есть волатильная целочисленная переменная count, то каждый поток будет видеть её текущее значение, но операции типа count++ могут быть не атомарными. Это означает, что другой поток может увидеть промежуточное значение count после выполнения операции.

Для обеспечения атомарных операций с переменными используются специальные классы и методы, такие как AtomicInteger или методы compareAndSet() и getAndIncrement().

Запрет на переупорядочивание инструкций

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

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

Перевод выполнен с учётом контекста запроса.

В запросе содержатся термины и понятия из области разработки программного обеспечения, которые требуют более глубокого понимания контекста. В связи с этим некоторые фрагменты текста не были переведены. SpringCloud — это набор инструментов для построения микросервисной архитектуры на основе облачных технологий. Он предоставляет разработчикам готовые решения для создания распределённых систем, упрощая процесс разработки и развёртывания сервисов.

Основные компоненты SpringCloud:

  • Eureka — сервис обнаружения сервисов, который позволяет сервисам находить друг друга в сети.
  • Ribbon — балансировщик нагрузки, который направляет запросы к сервисам с учётом их доступности и производительности.
  • Hystrix — инструмент для управления зависимостями между сервисами, который обеспечивает отказоустойчивость системы.
  • Gateway — шлюз API, который служит единой точкой входа в систему и обеспечивает безопасность и контроль доступа.
  • Config — централизованное хранилище конфигурационных данных, которое позволяет управлять настройками системы в реальном времени.
  • Bus — шина сообщений, которая обеспечивает обмен сообщениями между сервисами.
  • Stream — платформа для обработки потоков данных, которая позволяет создавать сложные конвейеры обработки данных.
  • Sleuth — система отслеживания запросов, которая помогает анализировать работу системы и выявлять проблемы.
  • AlibabaSentinel — инструмент для обеспечения безопасности и контроля доступа к сервисам.
  • Seata — распределённая транзакционная система, которая обеспечивает согласованность данных в системе.

Для получения более подробной информации о каждом компоненте рекомендуется обратиться к указанным источникам.

SpringSecurity — это фреймворк для обеспечения безопасности приложений на основе Spring. Он позволяет разработчикам создавать защищённые приложения, которые ограничивают доступ к определённым ресурсам и функциям.

Основные возможности SpringSecurity:

  • Аутентификация и авторизация пользователей.
  • Управление ролями и разрешениями.
  • Защита от атак CSRF и XSS.
  • Поддержка различных механизмов аутентификации, таких как LDAP, OAuth2 и SAML.

Для получения дополнительной информации рекомендуется обратиться к указанному источнику.

ElasticStack (ELK) — это набор инструментов для сбора, анализа и визуализации логов. Он включает в себя следующие компоненты:

  • ElasticSearch — поисковая система, которая хранит и индексирует логи.
  • Beats — агенты, которые собирают логи с различных источников и отправляют их в ElasticSearch.
  • Logstash — конвейер обработки логов, который фильтрует, преобразует и отправляет логи в ElasticSearch.
  • Kibana — веб-интерфейс для анализа и визуализации логов.

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

Для получения подробной информации об использовании ELK рекомендуется обратиться к указанному источнику.

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

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/moxi159753-LearningNotes.git
git@api.gitlife.ru:oschina-mirror/moxi159753-LearningNotes.git
oschina-mirror
moxi159753-LearningNotes
moxi159753-LearningNotes
master