Глосарій

Словник веб-розробника

Визначення технічних термінів з PHP, DevOps, MySQL та AI — з прикладами коду та поясненнями простою мовою.

228 термінів
47 літер
Х
Хеш-таблиця
Хеш-таблиця — структура даних, що забезпечує доступ за ключем за O(1) у середньому. Ключ передається через хеш-функцію, результат вказує на «кошик» (bucket), де зберігається значення. Асоціативні масиви в PHP і dict у Python — хеш-таблиці.КолізіїРізні ключі можуть дати однаковий хеш — це колізія. Вирішується двома способами:Chaining — кожен bucket — список елементів з однаковим хешемOpen addressing — при колізії шукається наступний вільний bucketLoad factorСпіввідношення кількості елементів до кількості buckets. При перевищенні порогу (зазвичай 0.75) — рехешування (збільшення таблиці і перерозподіл елементів). Дороге, але рідке.Vs дерево пошукуHash table: O(1) доступ, але немає порядку. BST: O(log n) доступ, але елементи відсортовані. Вибір залежить від потреби в сортуванні.
Хешування (Hashing)
Хешування — одностороннє перетворення даних у рядок фіксованої довжини (хеш). «Одностороннє» означає: відновити оригінал із хешу математично неможливо. Паролі в БД зберігаються виключно у вигляді хешів, а не відкритим текстом.Алгоритми для паролівbcrypt — вбудований cost-фактор для уповільнення перебору. Стандарт де-фактоArgon2id — переможець Password Hashing Competition 2015. Стійкіший до GPU-атакPBKDF2 — широко підтримується, особливо у корпоративному середовищіХешування ≠ ШифруванняШифрування двостороннє — зашифровані дані можна розшифрувати ключем. Хешування одностороннє — відновлення неможливе. Для паролів потрібне хешування; для даних, які потрібно прочитати (наприклад, API-ключ) — шифрування.Сіль (Salt)Випадковий рядок, доданий до пароля перед хешуванням. Захищає від rainbow table атак: однаковий пароль у двох користувачів дасть різні хеші. bcrypt і Argon2 включають сіль автоматично.
Хмарні обчислення
Хмарні обчислення — надання обчислювальних ресурсів (сервери, сховища, БД, мережі) через інтернет з оплатою за фактичне використання. Замість купівлі і обслуговування власного заліза — орендуєте потрібне у провайдера.Моделі сервісуIaaS (Infrastructure as a Service) — орендуєте VM, диски, мережу. Самі ставите ОС, middleware. AWS EC2, Google Compute EnginePaaS (Platform as a Service) — провайдер керує інфраструктурою, ви деплоїте код. Heroku, Google App Engine, RenderSaaS (Software as a Service) — готовий продукт через браузер. Gmail, Slack, SalesforceПеревагиПлатите лише за використані ресурсиМасштабування за хвилиниГлобальна інфраструктураНемає капітальних витрат на залізо