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

OSCHINA-MIRROR/yangdechao_admin-guage-notes

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 22 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 24.06.2025 02:12 0782333

Введение

Меня зовут Гуа Го, и я работаю в IT-индустрии более 10 лет. Начальный язык программирования, которым я начал заниматься, был Java. За время работы в этой отрасли я приобрел опыт в разработке распределенных систем, микросервисов, контейнеризации с использованием K8S, больших данных и хранилищ данных.

У меня более 10 лет опыта работы с JavaWeb (ПК, Android, WeChat Mini Programs) / J2EE. Я знаком с архитектурой распределенных микросервисов Dubbo/Spring Cloud/ShardingSphere. Я специализируюсь на проектировании распределенных систем, разделении сервисов, разделении чтения и записи, а также на разбиении баз данных на таблицы.

Добро пожаловать на мой сайт по обучению программированию! Это место, которое стремится помочь разработчикам, студентам, любителям и всем тем, кто интересуется программированием, чтобы они могли учиться и повышать свои навыки программирования. Здесь мы предоставляем различные ресурсы по программированию, включая учебники, исследования случаев, лучшие практики, рекомендации по инструментам и онлайн-курсы.В современном цифровом мире программирование стало важным навыком, который широко используется не только в сфере технологий, но и во многих других областях, таких как медицина, образование, искусство и другие. Независимо от того, являетесь ли вы новичком, который хочет начать изучение программирования, или опытным разработчиком, который хочет повысить свои навыки программирования, наш сайт по обучению стремится помочь вам в этом.Наш сайт по обучению имеет удобную структуру навигации, которая позволяет вам легко находить нужную информацию. Мы также предлагаем активный форум сообщества, где вы можете делиться своим опытом и проблемами, общаться и учиться вместе с другими разработчиками.

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

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

Список знаний

01JAVA классические знания

02JVM знания

03JUC многопоточное программирование

04Mysql знания

05Kafka知识点总结

Kafka简介

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

Kafka архитектура

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

  • Broker: узел в кластере Kafka.
  • Topic: категория или тема сообщений.
  • Partition: каждая тема может быть разделена на несколько партиций.
  • Producer: отправитель сообщений.
  • Consumer: получатель сообщений.
  • Consumer Group: группа получателей, совместно потребляющих сообщения одной темы.## Характеристики Kafka

Высокая производительность

Kafka повышает производительность и надежность за счет разделения данных на разделы и репликацию.

Надежность

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

Гибкость

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


06 Реализация распределенного блокировки Redis в 7 способах и правильное использование

Обзор распределенной блокировки Redis

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

Реализационные схемы

Схема 1: Атомарные операции с помощью скриптов Lua

local result = redis.call("SET", KEYS[1], ARGV[1], "NX")
if result == false then
    return 0
else
    return 1
end

Схема 2: Распределенная блокировка с использованием алгоритма Redlock

import time
from redis import StrictRedis

redis_clients = [StrictRedis(host='localhost', port=6379, db=i) for i in range(3)]

def acquire_lock_with_redlock(key, num_slaves):
    lock_acquired = False
    start_time = time.time()
    while not lock_acquired and time.time() - start_time < 10:
        lock_acquired = True
        for client in redis_clients:
            if client.setnx(key, 'locked') == 0:
                lock_acquired = False
                break
    return lock_acquired

Правильное использование

Установка времени ожидания блокировки

Для предотвращения мертвых блокировок следует установить разумное время ожидания блокировки.

Обработка ошибок

При неудачной попытке получить блокировку следует предусмотреть логику обработки ошибок.


07 Сводка по Redis

Обзор Redis

Redis — это открытая система базы данных на основе ANSI C, поддерживающая сетевые соединения, которая может хранить данные как в оперативной памяти, так и записывать их на диск. Она предоставляет множество вариантов использования.

Типы данных Redis

Строка (String)

Наиболее простый тип, который может хранить строки, целые числа или числа с плавающей запятой.

Список (List)

Простой список строк, отсортированный по порядку вставки.

Хэш (Hash)

Сборник пар ключ-значение, отображаемых в хэш-таблице.

Множество (Set)

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

Отсортированное множество (Sorted Set)

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


08 Сводка по Spring

Обзор фреймворка Spring

Spring — это легковесный Java-фреймворк, который предоставляет полное поддержание инфраструктуры, упрощая разработку корпоративных приложений.## Ядро Spring

Ядро контейнера (Core Container)

Включает интерфейсы BeanFactory и ApplicationContext, которые предоставляют базовые функции IoC-контейнера.

Модуль доступа к данным (DAO)

Предоставляет абстрактный уровень JDBC, упрощающий код доступа к базам данных.

Модуль Web

Предоставляет поддержку для веб-приложений, включая Servlet, Filter и другие.


09 Обзор распределённых транзакций

Концепция распределённых транзакций

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

Решения для распределённых транзакций

Двухфазный протокол коммита (Two-Phase Commit)

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

Очередь сообщений (Message Queue)

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


10 Обзор ключевых моментов Zookeeper

Введение в Zookeeper

Zookeeper — это распределённая система координации открытого исходного кода, предназначенная для эффективного предоставления услуг поиска и управления конфигурацией.

Архитектура Zookeeper

Узел (Node)

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

Сессия (Session)

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


11 Общие знания о компьютерах

Основные знания о компьютерах

Центральный процессор (CPU)

Центральный процессор, который выполняет команды программ.

Оперативная память (RAM)

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

Устройства хранения

Жёсткие диски (HDD) и твердотельные накопители (SSD), используемые для долгосрочного хранения данных.


12 Обзор разделения баз данных и таблиц

Концепция разделения баз данных и таблиц

Разделение баз данных и таблиц — это процесс разбиения базы данных на несколько независимых баз данных или таблиц для повышения масштабируемости и балансировки нагрузки.

Методы реализации

Горизонтальное разделение

Разделение данных по определённому правилу на различные таблицы или базы данных.

Вертикальное разделение

Разделение различных полей на различные таблицы или базы данных.


13 Часто используемые операции в алгоритмах

Часто используемые операции в алгоритмах

Сортировочные алгоритмы

  • Бульбашный сортировочный алгоритм
  • Быстрая сортировка
  • Слияние сортировки

Поисковые алгоритмы

  • Двоичный поиск
  • Глубокий поиск
  • Широкий поиск

14 Обзор задач по алгоритмам

Часто встречающиеся задачи по алгоритмам

Операции с массивами

  • Переворот массива

  • Сортировка массива

  • Удаление повторений в массиве### Строковые операции

  • Переворот строки

  • Замена в строке

  • Разбиение строки


15 Ключевые知识点总结 для работы с большими данными

Обзор технологий больших данных

Технологии больших данных — это технологии для обработки огромных объемов данных, включая сбор, хранение, обработку, анализ и визуализацию данных.

Инструменты для работы с большими данными

Hadoop

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

Spark

Унифицированный вычислительный фреймворк, поддерживающий как пакетные, так и реальные-time вычисления.


16 Сводка по решению проблем в производственной среде

Шаги поиска и решения проблем в производственной среде

Анализ логов

Просмотр системных логов для определения мест локализации ошибок.

Мониторинг производительности

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

Проверка кода

Проверка логики кода для выявления потенциальных проблем.


17 Сводка по финансовому знанию

Основы финансовой теории

Процентная ставка по кредитам

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

Коэффициент доходности инвестиций

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


18 Сводка по банковским услугам

Обзор банковских услуг

Банковские услуги включают в себя такие услуги, как депозиты, кредиты, переводы денег, кредитные карты и другие финансовые услуги.

Управление рисками в банках

Кредитный риск

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

Ликвидационный риск

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


19 RWA риск-взвешенные активы

20 Сводка по собеседованиям в крупных компаниях

21 CSND сертификация и организация22HarmonyOS 4.0 разработка на OpenHarmony

23Linux ядро разработка обучения

Учебный план по Big DataСтек технологий Big Data

Hadoop Hive Spark Storm Flink HBase Kafka ZooKeeper Flume Sqoop Azkaban Scala

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

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

1
https://api.gitlife.ru/oschina-mirror/yangdechao_admin-guage-notes.git
git@api.gitlife.ru:oschina-mirror/yangdechao_admin-guage-notes.git
oschina-mirror
yangdechao_admin-guage-notes
yangdechao_admin-guage-notes
master