Что такое SMS‑сообщение?
Аббревиатура SMS расшифровывается как Short Message Service (сервис коротких сообщений). Это служба текстовых сообщений, которая позволяет обмениваться короткими текстовыми сообщениями между мобильными устройствами. SMS-сообщения обычно имеют максимальную длину 160 символов и могут быть отправлены и получены в различных мобильных сетях. SMS широко используются для личного и делового общения, обеспечивая быстрый и удобный способ отправки кратких сообщений отдельным лицам или группам людей. Она стала неотъемлемой частью мобильной связи и поддерживается практически всеми мобильными устройствами.
Что означает SMS?
Аббревиатура SMS расшифровывается как Short Message Service (сервис коротких сообщений). Это служба текстовых сообщений, которая позволяет обмениваться короткими текстовыми сообщениями между мобильными устройствами.
Как работает SMS?
SMS работает на сигнальных каналах мобильных сетей, используя уже существующую инфраструктуру для голосовых вызовов. Ниже приведен упрощенный обзор того, как работает SMS.
- Отправитель инициирует сообщение: отправитель создает текстовое сообщение на своем мобильном устройстве и вводит номер телефона получателя.
- Сообщение, отправленное в SMSC: мобильное устройство отправителя отправляет сообщение в Центр обслуживания коротких сообщений (SMSC), который является централизованным сервером, отвечающим за обработку SMS-сообщений.
- Маршрутизация сообщений SMSC: SMSC проверяет телефонный номер получателя и определяет подходящую сеть для доставки сообщения.
- Доставка сообщения: затем SMSC отправляет сообщение в мобильную сеть получателя с помощью серии сигнальных сообщений.
- Сообщение, сохраненное в SMSC получателя: SMSC получателя принимает сообщение и временно сохраняет его до тех пор, пока устройство получателя не станет доступно для его получения.
- Уведомление на устройство получателя: как только устройство получателя будет доступно, SMSC получателя отправляет уведомление о доступности нового SMS.
- Получение сообщения: мобильное устройство получателя подключается к SMSC получателя для получения сообщения.
- Отображаемое сообщение: мобильное устройство получателя получает сообщение и отображает его.
- Дополнительное подтверждение доставки: мобильное устройство получателя может отправить подтверждение доставки обратно в SMSC отправителя, указывая, что сообщение было успешно получено.
Важно отметить, что SMS-сообщения обычно передаются по каналам управления и не используют те же голосовые каналы или каналы передачи данных, которые используются в других мобильных сервисах. Это позволяет SMS быть надежной и широко поддерживаемой формой связи даже в районах с ограниченным покрытием сети или во время перегрузки сети.
Как работает SMS-маркетинг?
SMS-маркетинг часто использует API SMS для автоматизации и оптимизации процесса. Вот обзор того, как работает SMS-маркетинг с помощью API SMS:
- Интеграция с API SMS: для реализации SMS-маркетинга компании интегрируют свои системы или приложения с API SMS. API служит интерфейсом, позволяющим программному обеспечению компании отправлять и получать SMS-сообщения программно.
- Составление списка подписчиков: компании собирают информацию о подписке от лиц, желающих получать маркетинговые SMS-сообщения. Эти данные можно собирать с помощью различных каналов, таких как веб-формы, мобильные приложения или регистрация в магазине. API позволяет легко интегрировать эти данные в список подписчиков.
- Создание и персонализация сообщений. Используя API SMS, компании создают персонализированные и целевые SMS-сообщения для взаимодействия со своими подписчиками. API позволяет динамически вставлять контент, позволяя настраивать сообщения на основе информации о подписчиках, такой как имена, история покупок или предпочтения.
- Запуск автоматических сообщений: API SMS позволяют автоматизировать отправку SMS-сообщений на основе заранее определенных триггеров или событий. Например, компании могут настроить автоматические приветственные сообщения для новых подписчиков или транзакционные сообщения для подтверждения заказов или обновлений касательно доставки.
- Отправка массовых SMS-кампаний: с помощью API SMS компании могут отправлять массовые SMS-кампании своему списку подписчиков. Они могут сегментировать свою аудиторию на основе демографических данных, предпочтений или поведения и отправлять целевые сообщения определенным сегментам, максимально повышая эффективность своих маркетинговых кампаний.
- Доставка и отслеживание сообщений: когда SMS отправляется через API SMS, сообщение передается на мобильные устройства абонентов через мобильную сеть. API управляет процессом доставки и предоставляет отчеты о доставке или обновления статуса, что позволяет компаниям отслеживать успех своих SMS-кампаний.
- Взаимодействие с абонентами и двусторонняя связь: API SMS позволяют компаниям упрощать двустороннюю связь со своими подписчиками. Подписчики могут отвечать на SMS-сообщения, что позволяет компаниям общаться в режиме реального времени, оказывать поддержку или собирать отзывы.
- Соответствие требованиям и нормативные требования. При использовании API SMS для SMS-маркетинга крайне важно соблюдать применимые правила, такие как получение надлежащего согласия и предоставление механизмов отказа от рассылки. API SMS часто включают функции, отвечающие требованиям соответствия, такие как управление отписками и обработка запросов на отказ от подписки.
Что такое API SMS?
API SMS, или прикладной программный интерфейс службы коротких сообщений, представляет собой механизм, позволяющий программным системам отправлять и получать SMS-сообщения программно. Он предоставляет набор определений и протоколов, обеспечивающих связь между различными программными компонентами. Подобно тому, как приложение погоды на вашем телефоне взаимодействует с программной системой метеорологического бюро с помощью API для отображения ежедневных обновлений погоды, API SMS позволяет приложениям взаимодействовать с SMS-сервисами и отправлять сообщения получателям.
Как работает API SMS?
API SMS использует архитектуру клиент-сервер. Приложение, которое инициирует запрос на отправку SMS, является клиентом, а сервер обрабатывает запрос и отправляет SMS предполагаемому получателю. API SMS выступает в качестве интерфейса между клиентским приложением и поставщиком услуг SMS.
Когда клиентское приложение хочет отправить SMS, оно отправляет запрос к API SMS с необходимой информацией, такой как номер телефона получателя и содержимое сообщения. API проверяет запрос, взаимодействует с поставщиком услуг SMS и доставляет сообщение получателю. Аналогичным образом, когда клиентское приложение хочет получать SMS-сообщения, оно может использовать API для получения входящих сообщений от поставщика услуг SMS.
Каковы преимущества использования API SMS?
Использование API SMS дает несколько преимуществ.
Автоматизация: API SMS позволяет автоматически отправлять и получать SMS-сообщения, что позволяет сэкономить время и силы по сравнению с ручными процессами.
Интеграция: API упрощают интеграцию функций SMS в существующие программные системы, позволяя компаниям включать SMS в свою коммуникационную стратегию.
Масштабируемость: с помощью API SMS компании могут легко масштабировать свои возможности SMS в соответствии с растущими коммуникационными потребностями, будь то отправка сообщений большой клиентской базе или обработка увеличенного объема сообщений.
Персонализация: API позволяют настраивать и персонализировать SMS-сообщения, интегрируя в них динамический контент, такой как имена клиентов или сведения о заказе.
Общение в реальном времени. Используя API SMS, компании могут общаться со своими клиентами в режиме реального времени, мгновенно доставляя важные уведомления, оповещения или рекламные сообщения.
Где найти поставщиков SMS-маркетинга?
API SMS доступны у различных поставщиков услуг SMS. Вы можете найти и изучить различные API SMS на торговых площадках или в каталогах API, посвященных демонстрации и предложению широкого спектра API. Некоторые популярные поставщики услуг SMS включают Amazon Pinpoint, Amazon SNS, Twilio и Sinch.
Не забудьте выбрать API SMS, соответствующие вашим конкретным потребностям, учитывая такие факторы, как цена, надежность, функции и качество документации.
Как использовать API SMS?
Чтобы использовать API SMS, выполните указанные ниже действия.
- Получите учетные данные API: зарегистрируйтесь у поставщика услуг SMS, который предлагает API SMS, и получите необходимые учетные данные API, такие как ключ API или токен доступа.
- Интегрируйте API: в зависимости от используемого языка программирования или платформы интегрируйте API SMS в код приложения. Обычно это связано с отправкой HTTP-запросов на адреса API, предоставленные поставщиком услуг SMS.
- Отправка SMS-сообщений: используйте методы или адреса API для отправки SMS-сообщений. Укажите необходимые параметры, такие как номер телефона получателя и содержимое сообщения, в запросе API.
- Обработка ответов: после отправки API SMS предоставит ответ с указанием статуса доставки сообщения. Обработайте эти ответы в своем приложении, чтобы обеспечить успешную доставку сообщений и устранить возможные ошибки.
- Получение SMS-сообщений (опционально): если ваш вариант использования связан с получением SMS-сообщений, API SMS может предоставить адреса или веб-хуки для получения входящих сообщений. Настройте приложение для прослушивания входящих сообщений и соответствующей их обработки.
Как AWS может удовлетворить ваши потребности в SMS?
Amazon Pinpoint – это многоканальный сервис связи и привлечения клиентов, предлагаемый AWS. Он предоставляет компаниям инструменты для эффективного привлечения клиентов по различным каналам, включая SMS, push-уведомления и голосовые сообщения. С помощью Amazon Pinpoint компании могут создавать целевые и персонализированные кампании, отслеживать взаимодействие с пользователями и анализировать эффективность кампаний для оптимизации стратегий привлечения клиентов. Amazon Pinpoint в первую очередь помогает компаниям отправлять SMS, push-уведомления или голосовые сообщения людям или конечным клиентам, что часто называют обменом сообщениями от приложения к пользователю (A2P). Amazon Pinpoint также позволяет компаниям создавать индивидуальные маршруты, чтобы клиенты получали нужное сообщение в нужное время.
Amazon Simple Notification Service (SNS) – это гибкий и масштабируемый сервис обмена сообщениями, предоставляемый AWS. Это позволяет разработчикам отправлять сообщения или уведомления большому количеству подписчиков или адресов, таких как мобильные устройства, адреса электронной почты или распределенные системы. Amazon SNS в первую очередь помогает компаниям отправлять сообщения A2A или из приложения в приложение с помощью автоматических уведомлений. Это позволяет приложениям взаимодействовать и обмениваться информацией друг с другом, обеспечивая беспрепятственную связь и интеграцию между различными программными компонентами.
Начните работу с SaaS на AWS, создав бесплатный аккаунт уже сегодня.
Отправляем SMS из Erlang/Elixir. Короткая инструкция
Photo by Science in HD
Если вам когда-либо приходилось решать задачу отправки SMS из кода вашего приложения, скорее всего, вы использовали готовое REST API поставщика дополнительных услуг. Но что происходит после того, как поставщик получит ваш запрос? Какие протоколы используются и какой путь проходит текст сообщения, прежде чем оказаться на экране мобильного терминала пользователя?
В этой статье вы найдёте:
- Немного теории и терминологии SMPP-протокола: SMSC, ESME, PDU, MO/MT SM.
- Краткий обзор существующих библиотек для работы с SMPP в Erlang/Elixir.
- Пример реализации асинхронного клиента при помощи библиотеки SMPPEX. Возможно, он будет полезен тем, кто ещё не использовал Elixir-библиотеки в Erlang-проектах.
- Информацию по обработке deliver_sm, MO SM.
Чего тут точно нет, так это информации по отправке коротких сообщений через SIGTRAN.
Определимся с терминами и понятиями
Прежде чем погружаться в протоколы и код, предлагаю разобраться в терминологии. Если быть придирчивым к определениям, то отправить SMS невозможно. Вспоминается момент из «Джентльменов удачи»: «Кто ж его отправит — он же сервис!» SMS — акроним от short message service, что на русский переводится как «сервис/служба коротких сообщений». Если возвращаться к шутке, то отправляем мы SM, т. е. короткие сообщения, используя SMS — сервис коротких сообщений.
У каждого оператора мобильной связи есть компонент, отвечающий за работу службы коротких сообщений. Это так называемый SMS-центр, он же SMSC, он же SMS-SC. Его задачами являются хранение, передача, конвертация и доставка SM-сообщений. Наиболее распространенным внешним протоколом взаимодействия с SMSC является SMPP. SMPP — клиент-серверный протокол-комбайн, отвечающий за обмен короткими сообщениями в одноранговой сети. Источником SM могут быть устройства и приложения. В терминологии SMPP их называют ESME.
Давайте ответим на вопросы в начале статьи. Итак, ваше сообщение по REST API или SMPP попало к поставщику услуг, у которого заключён договор с одним или несколькими операторами связи или другими посредниками. Сервер поставщика подключается к SMSC и отправляет по SMPP ваше SM, затем получает отчёт о доставке или ответное SM. В процессе обработки SM могут проходить через маршрутизаторы — RE. SMSC, сходив в HLR, узнает местоположение абонента и доставит SM абоненту. Общая картина и понимание проблемы, надеюсь, у вас появились. Давайте погрузимся в протокольные тонкости.
SMPP
Выше я сказал, что SMPP — протокол-комбайн. Подобный эвфемизм я позволил себе из-за того, что SMPP применим не только для организации обмена SMS, с его помощью можно организовать различные сервисы: ESM, голосовой почты, уведомлений, сотового радиовещания, WAP, USSD и прочие. Весь обмен происходит с помощью пар запрос-ответ. Их называют PDU — блоками данных или пакетами.
Инициализация подключения
Перед началом обмена мы должны указать, в каком направлении будет работать наше подключение. За это отвечают соответствующие команды:
- bind_transmitter — клиент может только отправлять запросы на сервер;
- bind_receiver — клиент только получает ответы от сервера;
- bind_transceiver — клиент работает в обоих направлениях, этот режим появился в SMPPv3.4.
Безопасность
При выполнении команды привязки мы должны передать параметры безопасности для идентификации нашего ESME: system_id, system_type и password.
SMPP в экосистеме OTP
Недавно у хорошего друга возник вопрос по работе с SMPP в Erlang. Собственно, благодаря этому и родился этот текст.
Казалось бы, никаких проблем. Проверенный временем телеком-протокол с давно известными проблемами с одной стороны и телеком-язык с другой. Все должно быть просто и весело, как в песенке PPAP.
Но есть нюанс… Найти адекватную реализацию оказалось непросто.
Наверняка все, кто пытался серьёзно работать с Erlang, знают про его недостаток, связанный с ограниченным выбором библиотек. С SMPP такая же история — в OTP нет штатной поддержки этого протокола, а на первой странице выдачи Гугла творится что-то странное:
- esmpp — библиотека со странным API и отсутствующим сообществом;
- древний OSERL — проект стартовал 11 лет назад, последний коммит сделали более 5 лет назад;
- неподдерживаемый smpp34 — последний коммит был более 10 лет назад;
- куча вопросов вида «Какую библиотеку/клиента использовать для SMPP?» на тематических форумах.
Лично я бы загрустил от такого разнообразия существующих решений. Особенно, когда хочется асинхронного режима, адекватной поддержки SMPP 3.4 и возможности написать как клиент, так и сервер. Но на помощь приходит Elixir и библиотека SMPPEX.
SMPPEX
Про сам проект скажу только то, что он активный и готов для продакшен-применения. Это стабильная, всесторонняя библиотека для SMPP с продуманным API, хорошей поддержкой разработчиков и отсутствием проблем с лицензией.
От слов к делу
Сначала можно ознакомиться с примерами синхронного и асинхронного клиента в документации. Затем можно перейти к более сложным вещам в контексте использования SMPPEX в Erlang-проекте.
Для иллюстрации возможностей библиотеки возьмём простой сценарий:
- Поднять линк.
- Отправить сообщение.
- Дождаться отчёта о доставке либо обработать входящие сообщения.
Придумаем дополнительные требования. Допустим, мы хотим отправлять MT SM, получать отчёты о доставке и MO SM. При этом по каким-то причинам нам нужны кастомные PDU и полный контроль над линком, поэтому за формирование submit_sm PDU и обработку всех входящих PDU мы будем отвечать сами. При этом мы не должны забывать про требование асинхронности.
Работа с линком
Надеюсь, что сложностей с установкой зависимости из hex.pm у вас не возникло и мы можем приступить к написанию кода. Как говорилось выше, работать мы будем в асинхронном режиме, поэтому запускаем клиента с помощью модуля SMPPEX.ESME:
'Elixir.SMPPEX.ESME':start_link(SmscHost, SmscPort, )
Для синхронного режима существует SMPPEX.ESME.Sync.
Наш клиент готов, и мы можем сделать привязку к SMSC. Предположим, что SMSC поддерживает SMPPv3.4 и мы можем использовать transceiver режим:
'Elixir.SMPPEX.Pdu.Factory':bind_transceiver(SystemId, Pass)
Если всё прошло хорошо, нам должен прийти PDU с командой bind_transceiver_resp:
bind_transceiver_resp = 'Elixir.SMPPEX.Pdu':command_name(Pdu)
Формирование PDU для MT SM
Линк поднят, и мы можем отправить наше сообщение. В терминах SMPP, сообщения адресуемые абоненту называются Mobile Terminated (MT SM). Соберём PDU для него:
submit_sm_pdu(SourceMsisdn, DestMsisdn, Message, Ttl) -> = 'Elixir.SMPPEX.Protocol.CommandNames':id_by_name(submit_sm), > = calendar:seconds_to_daystime(Ttl), VP = lists:flatten(io_lib:format("0000~2..0w~2..0w~2..0w~2..0w000R", [D, H, M, S])), 'Elixir.SMPPEX.Pdu':new( CommandId, # < source_addr =>SourceMsisdn, source_addr_ton => 1, source_addr_npi => 1, destination_addr => DestMsisdn, dest_addr_ton => 1, dest_addr_npi => 1, short_message => Message, data_coding => 246, protocol_id => 127, %% For concatenated messages esm_class => 64, registered_delivery => 1, validity_period => list_to_binary(VP) > ).
Обработка отчетов о доставке и MO SM
Mobile originated (MO SM) — сообщения от абонента.
После отправки сообщения в линк SMSC ответит нам submit_sm_resp, в котором указан уникальный ID нашего сообщения:
MsgId = 'Elixir.SMPPEX.Pdu':mandatory_field(Pdu, message_id)
Теперь нам необходимо дождаться deliver_sm с этим message_id.
Чтобы отличить отчёты о доставке от MO SM, проанализируем esm_class:
EsmClass = 'Elixir.SMPPEX.Pdu':mandatory_field(Pdu, esm_class), case > of > -> handle_delivery_receipt(Pdu); > -> handle_standart_message(Pdu); Some -> ?LOG_ERROR("unknown deliver_sm: ~p", [Some]) end
При этом для обработки отчётов о доставке нам достаточно узнать ID доставленного сообщения:
SmsId = 'Elixir.SMPPEX.Pdu':field(Pdu, receipted_message_id)
А для входящих сообщений узнать номер отправителя:
Msisdn = 'Elixir.SMPPEX.Pdu':field(Pdu, source_addr)
и полезное содержимое сообщения:
Payload = 'Elixir.SMPPEX.Pdu':field(Pdu, short_message)
Как известно, спецификация SMPP требует deliver_sm_resp в ответ на deliver_sm. Поэтому после обработки отчёта о доставке и входящего сообщения мы должны ответить deliver_sm_resp. Создадим PDU для него:
deliver_sm_resp_pdu(MessageId) -> = 'Elixir.SMPPEX.Protocol.CommandNames':id_by_name(deliver_sm_resp), CommandStatus = 0, SeqNumber = 0, 'Elixir.SMPPEX.Pdu':new(, # MessageId>, #<>).
Я специально не указываю номер команды, добавим его автоматически:
ReplyPdu = 'Elixir.SMPPEX.Pdu':as_reply_to(deliver_sm_resp(SmsId), Pdu)
Весь код демопроекта можно найти в репозитории.
OTP-тренды
В 2020 году на тренды развития OTP и BEAM всё большее влияние оказывает сообщество Elixir. Чаще и чаще хорошие инструменты и полезные библиотеки можно найти на Elixir, а не на Erlang. Это не повод для тревоги за Erlang, просто Elixir смог заинтересовать и привлечь больше людей в своё сообщество, и это прекрасно. А благодаря OTP для использования той или иной библиотеки нам не важно, на чём она написана. Надеюсь, пример из статьи смог показать гибкость SMPPEX как инструмента и удобство применения библиотек, написанных на Elixir в Erlang-проектах.
- Erlang/OTP
- Функциональное программирование
- Elixir/Phoenix
Apache Kafka: основы технологии
У Kafka есть множество способов применения, и у каждого способа есть свои особенности. В этой статье разберём, чем Kafka отличается от популярных систем обмена сообщениями; рассмотрим, как Kafka хранит данные и обеспечивает гарантию сохранности; поймём, как записываются и читаются данные.
Статья подготовлена на основе открытого занятия из видеокурса по Apache Kafka. Авторы — Анатолий Солдатов, Lead Engineer в Авито, и Александр Миронов, Infrastructure Engineer в Stripe. Базовые темы курса доступны на Youtube.
Kafka и классические сервисы очередей
Для первого погружения в технологию сравним Kafka и классические сервисы очередей, такие как RabbitMQ и Amazon SQS.
Системы очередей обычно состоят из трёх базовых компонентов:
1) сервер,
2) продюсеры, которые отправляют сообщения в некую именованную очередь, заранее сконфигурированную администратором на сервере,
3) консьюмеры, которые считывают те же самые сообщения по мере их появления.
Базовые компоненты классической системы очередей
В веб-приложениях очереди часто используются для отложенной обработки событий или в качестве временного буфера между другими сервисами, тем самым защищая их от всплесков нагрузки.
Консьюмеры получают данные с сервера, используя две разные модели запросов: pull или push.
pull-модель — консьюмеры сами отправляют запрос раз в n секунд на сервер для получения новой порции сообщений. При таком подходе клиенты могут эффективно контролировать собственную нагрузку. Кроме того, pull-модель позволяет группировать сообщения в батчи, таким образом достигая лучшей пропускной способности. К минусам модели можно отнести потенциальную разбалансированность нагрузки между разными консьюмерами, а также более высокую задержку обработки данных.
push-модель — сервер делает запрос к клиенту, посылая ему новую порцию данных. По такой модели, например, работает RabbitMQ. Она снижает задержку обработки сообщений и позволяет эффективно балансировать распределение сообщений по консьюмерам. Но для предотвращения перегрузки консьюмеров в случае с RabbitMQ клиентам приходится использовать функционал QS, выставляя лимиты.
Как правило, приложение пишет и читает из очереди с помощью нескольких инстансов продюсеров и консьюмеров. Это позволяет эффективно распределить нагрузку.
Типичный жизненный цикл сообщений в системах очередей:
- Продюсер отправляет сообщение на сервер.
- Консьюмер фетчит (от англ. fetch — принести) сообщение и его уникальный идентификатор сервера.
- Сервер помечает сообщение как in-flight. Сообщения в таком состоянии всё ещё хранятся на сервере, но временно не доставляются другим консьюмерам. Таймаут этого состояния контролируется специальной настройкой.
- Консьюмер обрабатывает сообщение, следуя бизнес-логике. Затем отправляет ack или nack-запрос обратно на сервер, используя уникальный идентификатор, полученный ранее — тем самым либо подтверждая успешную обработку сообщения, либо сигнализируя об ошибке.
- В случае успеха сообщение удаляется с сервера навсегда. В случае ошибки или таймаута состояния in-flight сообщение доставляется консьюмеру для повторной обработки.
Типичный жизненный цикл сообщений в системах очередей
С базовыми принципами работы очередей разобрались, теперь перейдём к Kafka. Рассмотрим её фундаментальные отличия.
Как и сервисы обработки очередей, Kafka условно состоит из трёх компонентов:
1) сервер (по-другому ещё называется брокер),
2) продюсеры — они отправляют сообщения брокеру,
3) консьюмеры — считывают эти сообщения, используя модель pull.
Базовые компоненты Kafka
Пожалуй, фундаментальное отличие Kafka от очередей состоит в том, как сообщения хранятся на брокере и как потребляются консьюмерами.
- Сообщения в Kafka не удаляются брокерами по мере их обработки консьюмерами — данные в Kafka могут храниться днями, неделями, годами.
- Благодаря этому одно и то же сообщение может быть обработано сколько угодно раз разными консьюмерами и в разных контекстах.
В этом кроется главная мощь и главное отличие Kafka от традиционных систем обмена сообщениями.
Теперь давайте посмотрим, как Kafka и системы очередей решают одну и ту же задачу. Начнём с системы очередей.
Представим, что есть некий сайт, на котором происходит регистрация пользователя. Для каждой регистрации мы должны:
1) отправить письмо пользователю,
2) пересчитать дневную статистику регистраций.
В случае с RabbitMQ или Amazon SQS функционал может помочь нам доставить сообщения всем сервисам одновременно. Но при необходимости подключения нового сервиса придётся конфигурировать новую очередь.
Kafka упрощает задачу. Достаточно послать сообщения всего один раз, а консьюмеры сервиса отправки сообщений и консьюмеры статистики сами считают его по мере необходимости.
Kafka также позволяет тривиально подключать новые сервисы к стриму регистрации. Например, сервис архивирования всех регистраций в S3 для последующей обработки с помощью Spark или Redshift можно добавить без дополнительного конфигурирования сервера или создания дополнительных очередей.
Кроме того, раз Kafka не удаляет данные после обработки консьюмерами, эти данные могут обрабатываться заново, как бы отматывая время назад сколько угодно раз. Это оказывается невероятно полезно для восстановления после сбоев и, например, верификации кода новых консьюмеров. В случае с RabbitMQ пришлось бы записывать все данные заново, при этом, скорее всего, в отдельную очередь, чтобы не сломать уже имеющихся клиентов.
Структура данных
Наверняка возникает вопрос: «Раз сообщения не удаляются, то как тогда гарантировать, что консьюмер не будет читать одни и те же сообщения (например, при перезапуске)?».
Для ответа на этот вопрос разберёмся, какова внутренняя структура Kafka и как в ней хранятся сообщения.
Каждое сообщение (event или message) в Kafka состоит из ключа, значения, таймстампа и опционального набора метаданных (так называемых хедеров).
Сообщения в Kafka организованы и хранятся в именованных топиках (Topics), каждый топик состоит из одной и более партиций (Partition), распределённых между брокерами внутри одного кластера. Подобная распределённость важна для горизонтального масштабирования кластера, так как она позволяет клиентам писать и читать сообщения с нескольких брокеров одновременно.
Когда новое сообщение добавляется в топик, на самом деле оно записывается в одну из партиций этого топика. Сообщения с одинаковыми ключами всегда записываются в одну и ту же партицию, тем самым гарантируя очередность или порядок записи и чтения.
Для гарантии сохранности данных каждая партиция в Kafka может быть реплицирована n раз, где n — replication factor. Таким образом гарантируется наличие нескольких копий сообщения, хранящихся на разных брокерах.
У каждой партиции есть «лидер» (Leader) — брокер, который работает с клиентами. Именно лидер работает с продюсерами и в общем случае отдаёт сообщения консьюмерам. К лидеру осуществляют запросы фолловеры (Follower) — брокеры, которые хранят реплику всех данных партиций. Сообщения всегда отправляются лидеру и, в общем случае, читаются с лидера.
Чтобы понять, кто является лидером партиции, перед записью и чтением клиенты делают запрос метаданных от брокера. Причём они могут подключаться к любому брокеру в кластере.
Основная структура данных в Kafka — это распределённый, реплицируемый лог. Каждая партиция — это и есть тот самый реплицируемый лог, который хранится на диске. Каждое новое сообщение, отправленное продюсером в партицию, сохраняется в «голову» этого лога и получает свой уникальный, монотонно возрастающий offset (64-битное число, которое назначается самим брокером).
Как мы уже выяснили, сообщения не удаляются из лога после передачи консьюмерам и могут быть вычитаны сколько угодно раз.
Время гарантированного хранения данных на брокере можно контролировать с помощью специальных настроек. Длительность хранения сообщений при этом не влияет на общую производительность системы. Поэтому совершенно нормально хранить сообщения в Kafka днями, неделями, месяцами или даже годами.
Consumer Groups
Теперь давайте перейдём к консьюмерам и рассмотрим их принципы работы в Kafka. Каждый консьюмер Kafka обычно является частью какой-нибудь консьюмер-группы.
Каждая группа имеет уникальное название и регистрируется брокерами в кластере Kafka. Данные из одного и того же топика могут считываться множеством консьюмер-групп одновременно. Когда несколько консьюмеров читают данные из Kafka и являются членами одной и той же группы, то каждый из них получает сообщения из разных партиций топика, таким образом распределяя нагрузку.
Вернёмся к нашему примеру с топиком сервиса регистрации и представим, что у сервиса отправки писем есть своя собственная консьюмер-группа с одним консьюмером c1 внутри. Значит, этот консьюмер будет получать сообщения из всех партиций топика.
Если мы добавим ещё одного консьюмера в группу, то партиции автоматически распределятся между ними, и c1 теперь будет читать сообщения из первой и второй партиции, а c2 — из третьей. Добавив ещё одного консьюмера (c3), мы добьёмся идеального распределения нагрузки, и каждый из консьюмеров в этой группе будет читать данные из одной партиции.
А вот если мы добавим в группу ещё одного консьюмера (c4), то он не будет задействован в обработке сообщений вообще.
Важно понять: внутри одной консьюмер-группы партиции назначаются консьюмерам уникально, чтобы избежать повторной обработки.
Если консьюмеры не справляются с текущим объёмом данных, то следует добавить новую партицию в топик. Только после этого консьюмер c4 начнёт свою работу.
Механизм партиционирования является нашим основным инструментом масштабирования Kafka. Группы являются инструментом отказоустойчивости.
Кстати, как вы думаете, что будет, если один из консьюмеров в группе упадёт? Совершенно верно: партиции автоматически распределятся между оставшимися консьюмерами в этой группе.
Добавлять партиции в Kafka можно на лету, без перезапуска клиентов или брокеров. Клиенты автоматически обнаружат новую партицию благодаря встроенному механизму обновления метаданных. Однако, нужно помнить две важные вещи:
- Гарантия очерёдности данных — если вы пишете сообщения с ключами и хешируете номер партиции для сообщений, исходя из общего числа, то при добавлении новой партиции вы можете просто сломать порядок этой записи.
- Партиции невозможно удалить после их создания, можно удалить только весь топик целиком.
И ещё неочевидный момент: если вы добавляете новую партицию на проде, то есть в тот момент, когда в топик пишут сообщения продюсеры, то важно помнить про настройку auto.offset.reset=earliest в консьюмере, иначе у вас есть шанс потерять или просто не обработать кусок данных, записавшихся в новую партицию до того, как консьюмеры обновили метаданные по топику и начали читать данные из этой партиции.
Помимо этого, механизм групп позволяет иметь несколько несвязанных между собой приложений, обрабатывающих сообщения.
Как мы обсуждали ранее, можно добавить новую группу консьюмеров к тому же самому топику, например, для обработки и статистики регистраций. Эти две группы будут читать одни и те же сообщения из топика тех самых ивентов регистраций — в своём темпе, со своей внутренней логикой.
А теперь, зная внутреннее устройство консьюмеров в Kafka, давайте вернёмся к изначальному вопросу: «Каким образом мы можем обозначить сообщения в партиции, как обработанные?».
Для этого Kafka предоставляет механизм консьюмер-офсетов. Как мы помним, каждое сообщение партиции имеет свой собственный, уникальный, монотонно возрастающий офсет. Именно этот офсет и используется консьюмерами для сохранения партиций.
Консьюмер делает специальный запрос к брокеру, так называемый offset-commit с указанием своей группы, идентификатора топик-партиции и, собственно, офсета, который должен быть отмечен как обработанный. Брокер сохраняет эту информацию в своём собственном специальном топике. При рестарте консьюмер запрашивает у сервера последний закоммиченный офсет для нужной топик-партиции, и просто продолжает чтение сообщений с этой позиции.
В примере консьюмер в группе email-service-group, читающий партицию p1 в топике registrations, успешно обработал три сообщения с офсетами 0, 1 и 2. Для сохранения позиций консьюмер делает запрос к брокеру, коммитя офсет 3. В случае рестарта консьюмер запросит свою последнюю закоммиченную позицию у брокера и получит в ответе 3. После чего начнёт читать данные с этого офсета.
Консьюмеры вольны коммитить совершенно любой офсет (валидный, который действительно существует в этой топик-партиции) и могут начинать читать данные с любого офсета, двигаясь вперёд и назад во времени, пропуская участки лога или обрабатывая их заново.
Ключевой для понимания факт: в момент времени может быть только один закоммиченный офсет для топик-партиции в консьюмер-группе. Иными словами, мы не можем закоммитить несколько офсетов для одной и той же топик-партиции, эмулируя каким-то образом выборочный acknowledgment (как это делалось в системах очередей).
Представим, что обработка сообщения с офсетом 1 завершилась с ошибкой. Однако мы продолжили выполнение нашей программы в консьюмере и запроцессили сообщение с офсетом 2 успешно. В таком случае перед нами будет стоять выбор: какой офсет закоммитить — 1 или 3. В настоящей системе мы бы рекомендовали закоммитить офсет 3, добавив при этом функционал, отправляющий ошибочное сообщение в отдельный топик для повторной обработки (ручной или автоматической). Подобные алгоритмы называются Dead letter queue.
Разумеется, консьюмеры, находящиеся в разных группах, могут иметь совершенно разные закоммиченные офсеты для одной и той же топик-партиции.
Apache ZooKeeper
В заключение нужно упомянуть об ещё одном важном компоненте кластера Kafka — Apache ZooKeeper.
ZooKeeper выполняет роль консистентного хранилища метаданных и распределённого сервиса логов. Именно он способен сказать, живы ли ваши брокеры, какой из брокеров является контроллером (то есть брокером, отвечающим за выбор лидеров партиций), и в каком состоянии находятся лидеры партиций и их реплики.
В случае падения брокера именно в ZooKeeper контроллером будет записана информация о новых лидерах партиций. Причём с версии 1.1.0 это будет сделано асинхронно, и это важно с точки зрения скорости восстановления кластера. Самый простой способ превратить данные в тыкву — потеря информации в ZooKeeper. Тогда понять, что и откуда нужно читать, будет очень сложно.
В настоящее время ведутся активные работы по избавлению Kafka от зависимости в виде ZooKeeper, но пока он всё ещё с нами (если интересно, посмотрите на Kafka improvement proposal 500, там подробно расписан план избавления от ZooKeeper).
Важно помнить, что ZooKeeper по факту является ещё одной распределённой системой хранения данных, за которой необходимо следить, поддерживать и обновлять по мере необходимости.
Традиционно ZooKeeper раскатывается отдельно от брокеров Kafka, чтобы разделить границы возможных отказов. Помните, что падение ZooKeeper — это практически падение всего кластера Kafka. К счастью, нагрузка на ZooKeeper при нормальной работе кластера минимальна. Клиенты Kafka никогда не коннектятся к ZooKeeper напрямую.
Приложение : Компьютерный сленг
- ЕВПОЧЯ — Если Вы Поняли, О Чем Я
- Еггог, Его́р, 3ггог, Еррор — error (ошибка) по-русски. Программируемые калькуляторы (Электроника Б3-34, МК-54, МК-56, МК-61, МК-52) отображали ошибку вычислений в виде .
Зггог — нестандартное число, получаемое методами еггогологии.
- ЕЖА́, ЕГА́ — Монитор стандарта EGA
- Еме́ля — электронная почта от русского прочтения английского слова e-mail, мыло.
- ЕМНИМС — «если мне не изменяет мой склероз»
- ЕМНИП — «если мне не изменяет память»
- Енот — 1) инет, интернет 2) Гаджет (как правило, коммуникатор) фирмы E-ten)
Ё
- Ёксель — Microsoft Excel.
- Ёж, ёжик — EDGE.
- Ёпс — Формат файла *.eps
- Ёпера — браузер «Opera»
- Ёрить — наяривать. В играх и т. д..
Ж
- Жаба —
- язык программирования Java.
- см. Фотожаба.
- MUD-клиент Jaba
- jabber — открытый протокол для быстрого обмена сообщениями
- Жабаскрипт — язык программирования JavaScript.
- Жаб(б)ер, Жабёр — (англ.Jabber ) открытый протокол для быстрого обмена сообщениями.
- Жабить — принимать участие в фотожабе.
- Жарить
- Сжимать файлы с помощью архиватора JAR. Следовательно «зажаренный файл» — файл сжатый этим архиватором.
- «Жарить блины» — записывать файлы на компакт-диск (CD-R, CD-RW, DVD-R, DVD-RW или же прочие модификации записываемых(перезаписываемых) дисков). От англ.burn — «жечь». То же, что и «нажигать», «нарезать».
- Железо — комплектующие для компьютера.
- Железячник — человек, следящий за появлением нового железа, хорошо разбирающийся в нём.
- Жёлтая сборка — произведено в Китае, Сингапуре, и т. п. В настоящее время термин потерял свою актуальность, так как подавляющее большинство компьютерной электроники производится в азиатских странах.
- Жмель, Жмыло — почта Gmail от Google.
- ЖЖ, ЖыЖа, Жежешка — дневник, расположенный на livejournal.com или сам сервис.
- Жопа
- выход в интернет по технологии GPRS
- задняя панель компьютера (принтера, сканера и т. д.). «Втыкать в жопу».
- ориентированный на Паутину объектный сервер приложений Zope (zope.org).
- Жопорез — GPRS.
- Жопег, Жпег — формат файлов JPEG (IPA: /ˈdʒeɪpɛg/ ). «Сохранить в жопеге».
- Жужжать
- Устанавливать связь при помощи модема.
- Сделать запись в ЖЖ. Используется в двух противоположных значениях:
- написать чего-нибудь злободневное, которое получит много комментариев от других пользователей
- написать о чём-нибудь, другим не интересном и надоедающем. Пример: «Может хватит жужжать о том, как ты поел и сходил в туалет? Надоело!»
- Жжошь — (По отношению к собеседнику) Одобрение, восхищение чем-нибудь
- Жимкать — нажимать, кликать, как правило переход по url, «жимкать тут»
З
- Заба́нить, заба́бить, заба́нанить, послать в баню — запретить пользователю написание сообщений в форум или чат (от англ.to ban ), запретить доступ к какому-либо ресурсу (например, «забанить .mp3 файлы на проксе»).
- Зависание — нерегламентное состояние операционной системы или прикладного программного обеспечения, при котором данная операционная система и/или программа не реагирует на действия пользователя.*
- Заглушка (для сокета) — пренебрежительное выражение, употребляемое в отношении процессоров с крайне невысокой производительностью, не соответствующей нуждам своего времени, в основном, IntelCeleron и VIACyrix.
- Задрот — человек, чрезмерно увлеченный одним и тем же занятием. Термин широко распространен среди игроков компьютерных игр(например: люди, играющие сутками в игры: WOW, CounterStrike, WarCraftIII и т.д.).
- Зали́ть — закачать файл на сервер.
- Залоги́ниться — войти в систему под определённым именем пользователя. См. тж. Логин.
- Зажа́рить — см. Жарить
- Зара́рить — см. Ра́рить
- Зата́рить — сжать архиватором TAR
- Заре́зать — Записать что-либо на CD/DVD.
- Засавить — см. Засейвить.
- Засе́йвить — сохранить (от англ.save ).
- Засе́ренный — от англ.grayed-out . Недоступный (отрисованный серым цветом) элемент управления в экранной форме.
- Зазипо́ванный — архив формата zip
- Заимпэтрировать — перекодировать в формат MP3.
- Заюзаный — Бывшее в употреблении, неисправное, не товарного вида устройство. (Пример …флешка заюзаная…)
- Звуковуха, Звучка, Звучок — звуковая плата.
- ЗЗЫ, ЗЗЫЖ — аналог P. P. S. (lat.Post Post Scriptum ), часто в ироничном смысле. Cм. ЗЫ.
- Зипова́ть — использовать архиватор, компрессирующий данные в формат zip.
- Зловред — вредоносная программа.
- Зо́мби, проце́сс-зо́мби (англ.zombie process , англ.defunct process ) — дочерний процесс в Unix-системе, завершивший своё выполнение, но ещё присутствующий в списке процессов операционной системы, чтобы дать родительскому процессу считать код завершения.
- Зу́хель, Зю́ксель, Зю́хель, Цуксель или Цуксл — оборудование фирмы ZyXEL.
- ЗЫ, ЗЫЖ — эквивалент аббревиатуры P. S. (в виде PS или PS:, от lat.Post Scriptum , «после подписи») — постскриптум. Появление буквосочетания вызвано соотношением английской и русской раскладок клавиатуры. Иногда при печати люди забывают переключать раскладку, и вместо «PS», «PS:» набирается «ЗЫ», «ЗЫЖ» соответственно. Из-за забавности буквосочетаний («ЗЫ» напоминает «зырь», то есть смотри, «ЗЫЖ» — «смотри же») в неформальной переписке оно используется умышленно.
- ЗЫЗ — PSP
И
- Игно́р (англ.ignore — игнорировать) — метка, накладываемая участником чата (многопользовательского или программы мгновенного обмена сообщениями) на другого участника, при которой система игнорирует сообщения от второго первому. Либо же простое игнорирование сообщений.
- Иксы — среда X-Window в ОСUNIX.
- ИМХО — от en:IMHO, англ.In My Humble Opinion , «по моему скромному мнению». Имеются русские «бэкронимы» «истинное мнение, хрен оспоришь» и «имею мнение, хочу озвучить», также часто встречается «имею мнение, хрен оспоришь», которое можно считать производным от ранее озвученных.
- Интрушка — (англ.intro ) заставка, представляющая какой-либо программный продукт.
- Инет — Интернет.
- Интернет-диггинг, от англ.dig — копать — Тщательное изучение какой-либо информации в Интернете с рекурсивным обходом гиперссылок на странице.
- Интернет-сёрфинг — Беглое пролистывание страниц Интернета.
- ИНХО —
- (англ.IHHO ) — «по его скромному мнению». В случае когда говорят за кого-то, по мнению чужого человека, может рядом находящегося. См. ИМХО.
- (англ.In Not Humble Opinion ) — по нескромному мнению
- Ирда́ — от англ.IrDA — Infrared Data Association — инфракрасный порт.
- Ирка — система он-лайнового общения IRC (Internet Relay Chat).
- Искалка, ищейка — поисковая система.
- Ишак —
- браузер Internet Explorer (от сокращения IE)
- пиринговая сетьeDonkey2k (от англ.donkey — осёл)
- ИксПя, ИксПи (см. такжеХря, Хрюша, Хиппи, Хрень) — ОСWindows XP
- Икашник — инфракрасный порт
К
- Камень — центральный процессор.
- Казуал (англ.casual — случайный, нерегулярный, непостоянный) — человек, который серьёзно и постоянно не занимается предметом и глубоко им не увлекается, а время от времени проявляет интерес. Обычно употребляется по отношению к компьютерным игрокам («казуальный игрок»).
- Казуальные игры — игры, предназначенные для казуальной аудитории. Чаще всего распространяемые по системе shareware («шароварки»)(пример игр).
- Ка́псить — писать сообщения в верхнем регистре, крайне не приветствуется в чатах без особой на то нужды. Термин происходит от названия кнопки «Caps Lock», позволяющей писать в верхнем регистре без нажатия клавиши «Shift».
- Капча — CAPTCHA.
- Карман — устройство для подключения жёсткого диска к компьютеру.
- Карманник — см. «наладонник».
- Касперыч, Каспер, Кашпировский, Кашперский — Антивирус Касперского.
- Кацапта — Microsoft Business Solutions — Axapta.
- Качалка — менеджер закачек.
- Качели — раскачка с любой MMORPG вашего персоонажа другими.
- кбпс, кэбэпээс — (от англ.kbps — kilobits per second ) килобит в секунду (для указания скорости сетевого соединения или битрейта мультимедийного файла)
- Квака, Квача — Игра Quake.
- Квакать — играть в Quake.
- Квакер — игрок в компьютерную игруQuake.
- Кеды — распространённое название KDE.
- Ке́мпер, кемперить — игровой термин, обозначающий игрока в играх типа 3d-Action, предпочитающего отсиживаться в укромном углу и набирать фраги, стреляя из своего укромного места (от англ. camper — отдыхающий).
- КД-ПЗУ — русский вариант CD-ROM (ПЗУ — постоянное запоминающее устройство).
- Кик — принудительное выкидывание игрока из сервераадминистратором самого сервера от англ. слова kick — пинок.
- Кило, Кил — килобайт.
- Килобакс — 1000 или 1024 доллара США.
- Кирпич — центральный процессор. Возможно, произошло от формы корпуса процессора Pentium II.
- Киска — см. Циска
- Клава — клавиатура.
- Кликуха
- Выбранный псевдоним, используемый в Интернете (от разг. «кличка»). Пример: «Какая у тебя кликуха на форуме?»
- Компьютерная мышь.
- КМК — Как Мне Кажется, аналог ИМХО.
- Кобе́ль — кабель («Не ходить по кобелям!»)
- Ковер, палас — коврик для мышки.
- Ковыряло, ковырялка — Corel Draw
- Ко́дер — программист. Чаще всего применяется в отношении программистов, занимающихся непосредственно набором программного кода — в отличие от проектировщиков, которые разрабатывают идеологию программы, но редко программируют самостоятельно.
- Командир Волко́в — Volkov Commander
- Комбайнер (Тракторист, Бульдозер) — тот, кто не использует мышь в играх жанра FPS (First Person Shooter), а играет только на клавиатуре.
- Комбик, Комбайн — Combo привод, CD + DVD привод, умеющий читать и записывать CD, но не умеющий записывать DVD.
- Комп, компутер — компьютер.
- Компот — COM-порт, последовательный интерфейс.
- Комьюнити — англ.community , сообщество, группа пользователей одного и того же сетевого ресурса; разработчиков и др. одного программного продукта, или продуктов одной компании, все или некоторые из которых занимаются работой на этими продуктами на добровольной некоммерческой основе.
- Комуняка — коммуникатор(гибрид телефона и карманного компьютера)
- Контер, контр, контр-террор, КТ — спецназ в Counter-Strike.
- Контерка, контра, контр-террорка — девушка, играюшая в контру за спецназ.
- Контра, КС — Counter-Strike.
- Контрол, контроль — от англ.control — элемент управления экранной формы.
- Конфиг —
- см. ниже конфа, значение 2.
- Конфигурация компьютера.
- Конфа́
- Конференция, форум.
- Конфигурационный файл программы, в котором записаны настройки этой самой программы.
- Конфедерация из вселенной Starcraft
Образовалось из-за того, что первоначально многие конфигурационные файлы имели расширение cfg (англ. config ).
- Копипа́ст, копи-паст — от англ.Copy-Paste — копировать и вставить (например, скопировать web-адрес из окна браузера и вставить в документ Microsoft Word). Также используется как ироническое обозначение творческой деятельности, сводящейся к копированию уже существующего. «Писатель», занимающийся копипастами, называется копипастером.
- Кора дуба — процессор IntelCore 2 Duo.
- Корень — первая директория в дереве (корневая директория).
- Корка — от англ.en:core dump , файл с дампом памяти, остающийся на диске после аварийного завершения программы в UNIX-подобных ОС. «А корки кто удалять будет?!»«Когда научишься находить ошибки по стеку корки наступит твое время уходить» — Дао программирования.
- Король дров, Корельские дрова, Корявые дрова, Корэл — Corel Draw
- Краш, с (Eng) «Crash» Непредвиденная или нежданная остановка оперативной системы или программы,имеет аналогичное значение краш
(разшение,падение) которяя выдает вам при ошибках неисправляемых или затрудненных к их устранению.».
- Кракер — человек, взламывающий системы защиты (часто их ошибочно называют хакерами).
- Красная сборка — собрано в СНГ. См. также Белая сборка, Серая сборка.
- Красный глаз — инфракрасный порт.
- Красноглазые — пренебрежительное название фанатичных пользователей ОС GNU/Linux, проводящих много времени на форумах, например, Linux.org.ru.
- Крыса
- Манипулятор — мышь, особенно советского производства.
- &RQ.
- Распространённое название Xfce.
- Крысодром — коврик для мыши.
- Кряк, крэк, кряка, крякалка — взломщик программ, версия коммерческой или шейрверной (шароварной) программы, позволяющая использовать её бесплатно, от английского to crack — раскалывать. Cм. Crack
- Крякер, Крэкер — см. Кракер.
- Крякнуть, крэкнуть — взломать программу.
- Ксакеп
- Пренебрежительное название кого-либо, мнящего себя хакером.
- Журнал «Хакер»
- Ксюша, Ксюха, Кся — пакет 3D графики Softimage|XSI.
- Ктулху — осьминогоподобное чудовище из произведений Говарда Лавкрафта. Сатанинский подводный бог. Один из интернет-мемов.
- Ку
- Приветствие в чатах (из фильма «Кин-дза-дза!»).
- англ.Re , набранное в русском режиме клавиатуры — от Response — ответ. При ответе на электронное письмо в качестве темы подставляется «Re: тема прошлого письма». Если пользователь не использует эту подстановку, он может написать это выражение вручную. Он может забыть переключить раскладку (или специально не переключать), и получится «Ку». Также может означать Respect — уважение. См. ЗЫ.
- Компьютерная игра из серии Quake.
- Кудвакер — игрок в Quake 2, компьютерную игру-шутер.
- Куищще — Reboot на русской раскладке
- Кулер — (англ.cooler ) — вентилятор + радиатор, охлаждающие процессор, видеокарту, чипсет, блок питания или другие устройства.
- Кулхацкер — пренебрежительное название кого-либо, мнящего себя хакером, или уважительное в среде ламеров
- Куки, Кукисы (от англ.cookies ) — небольшой фрагмент служебной информации, помещаемый веб-сервером на компьютер пользователя. Применяется для сохранения данных, специфичных для данного пользователя и используемых веб-сервером для различных целей.
- Куриент — лечебная антивирусная утилита экспресс проверки CureIt.
- Курить — изучать что-либо (Н-р: курить маны).
- Куте, кутя — библиотека QT.
- Кучкуюбый — слово «кучерявый» набранное в Т9 но с ошибкой «кучирявый», как правило пренебрежительное обращение.
Л
- Лаг — (англ.lag , IPA: [læɡ] ) задержка, торможение или медленная работа чего либо, например, программы или компьютерной игры. Возникает либо в результате недостаточных характеристик компьютера либо из-за низкой скорости соединения с интернетом, в передаче данных по сети и т. п. Термин образовался в результате произношения английского слова «lag» звуками русских букв.
- Лагать — глагольная форма слова Лаг, означает тормозить, медленно работать. Например «Игра лагает» — игра тормозит.
- Лазарь — лазерный принтер.
- Ламер — (англ.lamer — хромой) неумелый пользовательЭВМ с завышенной самооценкой. Не путать с начинающим пользователем, чайником. Хоть имеет другое происхождение, слово созвучно с русским «ломать». Ввиду этого ламерами называют начинающих хакеров, которые много чего портят. Известная «формула»: Ламер — это чайник, считающий себя хакером. Русские варианты — ламо, ламачье, ламерье.
- Лапша — множество проводов, также название обычного телефонного провода в котором два медных проводника помещены в изолятор и идут параллельно, воспринимая радиопомехи, в отличие от витой пары или экранированного кабеля. Иногда также означает оптоволокно.
- Лекарство от жадности — программа взлома ограничивающих функций неоплаченной программы, иногда просто лекарство.
- Леталка — игрушка типа «flight simulator»
- Летающая тарелка — компьютер, собранный по последнему слову, на котором «летают» все игры и программы.
- Лечить — фиксить баги, часто самыми простыми способами, по проинципу латания дыр, также применять кряк
- Лажакат — см. Лже-кат
- Лжеюзер — пользователь LiveJournal.
- Лже-кат — (от англ.«LJ-cut») — элемент форматирования текста в системе livejournal, ссылка, под которой можно «спрятать» длинный текст или слишком большую картинку. Экономит трафик остальным лжеюзерам.
- Линейка, Линяга — игра LineAge
- Линейщик — игрок в LineAge.
- Линк, Линка — гипертекстовая ссылка URL.
- Линолеум — операционная система Windows ME.
- Ли́нупс, Ли́нух, Линь, Ля́лих, Лю́лих — ядро Linux и операционные системы на нём (например, GNU/Linux)
- Линуксо́ид, Лунохо́д — высококвалифицированный пользователь ОС на ядре Linux
- Лиса, Лисичка — свободный браузер Mozilla Firefox, название дословно обозначает «огненная лисица», и она изображена на его логотипе.
- Личер — (англ.leech — пиявка) бесполезный участник файлообменной сети, который только скачивает, ничего не давая взамен. Либо участник раздачи, скачивающий куски файлов и раздающий их другим личерам (участникам), скачав файл полностью становится сидером.
- Логи́ниться — входить в систему под определённым именем пользователя. См. тж. Логин.
- Логоффиться — (англ.log off ) выйти из системы.
- Лока́лка, лан, лана, ланка, лань — (англ.LAN ) локальная сеть.
- ЛОЛ — (англ.lol — «Laugh[ing] out loud») — громко хохотать. Как правило, используется для выражения комплимента к чувству юмора у собеседника. Нередко используется в спорах, как выражение неуважения к аргументам оппонента. Для усиления эффекта, серединная буква «о» нередко мультиплицируется, например «лоооооооооооооооол».
- Лолка, лол — употребляется по отношению к человеку. Обычно игрок на сервере несуразностью своих действий вызывающий смех окружающих. Не является оскорблением, а скорее добродушным посмеиванием над человеком. Слово произошло от англ.lol .
- Лопата — LPT-порт, параллельный интерфейс.
- ЛОР — русская аббревиатура сайта Linux.org.ru.
- Лошадиная сила — результат неправильного перевода документаций к технике компании Hewlett-PackardHP ( аббревиатура Horse Power).
- Лук — почтовая программаMS Outlook.
- Лузер — англ.loser — неудачник, проигравший. Хотя и созвучно с англ.user , но не является его производной. Обычно используется в компьютерных играх как характеристика неумелых игроков. Носит презрительный характер.
- Ломомя́юсер, Ломомя́усер — компьютер. Слово появилось в результате ошибки программы проверки правописания на одной из (некогда) популярных BBS.
- Лы́жи, Ла́жа — Компания LG.
- Лытдыбр — дневник. Если печатать русское «дневник», забыв переключить клавиатуру с английского, получается «lytdybr». Слово придумано Романом Лейбовым при освоении livejournal.com. В качестве темы сообщения «лытдыбр» также может означать описание повседневных действий и наблюдений автора.
- Люстра — Векторный графический редакторAdobe Illustrator.
- Лю тя-люблю тебя примечание
М
- МБ — может быть (применяется в основном в чатах и в комп. играх).
- Магазин приложений — репозиторий для установки компьютерных программ («приложений») с возможностью взимания за это платы.
- Мазда́й — см. Мастдай
- Мази́ла — браузер Mozilla
- Мазифа́ка — браузер Mozilla
- Ма́йка — пакет 3D графики Maya.
- Майн, Кубач — Minecraft, популярная шведская игра жанра песочница.
- Макось, МакОшь, Мокошь — (англ.MacOs ) операционная система на базе компьютеров Macintosh(также: Мася, Ося)
- Мама, Матка, Мать, Материнка, Мазер — материнская плата.
- Мастда́й, Маздай, Мазда — от англ.must die — должно сгинуть, пренебрежительное название ОС семейства Windows; любой низкокачественный продукт.
- Ма́трица — чистый записываемый -R -RW компакт-диск Maya (используется преимущественно в городе Владивостоке).
- Маши́на — Электронно-вычислительная машина (ЭВМ), что в сокращении стало просто машина, а в следствии приобрело значение компьютер. Это краткое обозначение можно заметить в других сленгах, например, в сленге швейной отросли машиной называют швейную машину.
- Ман — англ.man (команда в unix/linux системах — сокращение от manual) руководство по использованию.
- Мануал — руководство пользователя (от англ.manual ).
- Мафо́н — любое устройство с магнитной лентой (стриммер).
- Мелкомя́гкие, Мелкосо́фт, Микроцефа́лы — пренебрежительное название фирмы Microsoft.
- Мес(с)а́га — сообщение, письмо (от англ.message ).
- Мерзи́лка — пренебрежительное название браузера Mozilla.
- МежДелМаш — IBM
- Метр, Мег, МБ — мегабайт. См. также ве́сить.
- Междумо́рдие — интерфейс, буквальный перевод en:Interface
- Ми́лка — MilkShape 3D
- Мирк, Ми́рка — Сеть IRC, чаще какой-нибудь канал в IRC (от названия популярного IRC-клиента mIRC).
- Моб — игровой персонаж, управляемый компьютером. См. также NPC
- Мозги́ — ОЗУ.
- Моме́д, Мопе́д, Мудозво́н — модем.
- Мо́ня, Мо́ник — монитор компьютера.
- Мо́рда — 1. интерфейспрограммы, главная страницасайта или портала. «Этот баннер нам всю морду раскорячил!» 2. Лицевая панель системного блока компьютера. 3. front-end средство, предоставляющее удобный интерфейс к более низкоуровнему back-end.
- Муля, мул, емуля — Программа eMule, клиент пиринговой сетиeDonkey2000.
- МУМУ — Мультимедиа
- Му́скул — СУБДMySQL.
- Мурзи́лка — браузер Mozilla (устар.), на форумах — старая, известная шутка (в некоторых кругах также называемая баян), также — руководство пользователя, инструкция.
- Мы́ло, Мы́льница — электронная почта, сообщение в электронной почте или адрес в электронной почте (от mail).
- Мы́лить, намы́ливать — посылать сообщение по электронной почте («киньте в меня мылом!»).
- Мыша́, живо́тное — манипулятор «мышь»
- Мышкодро́м — коврик для мыши.
Н
- Наладонник — КПК (карманный персональный компьютер), также часто называют «карманником».
- Намордник — защитный экран монитора.
- НаСИльник — программист на языке Си.
- Нареза́ть — записывать на болванки.
- Нафиг, нефиг, пофиг — шуточный перевод сообщения компьютера Abort, retry, ignore
- Нафигатор — Netscape Navigator.
- Некропост — комментарий к посту с огромной разницей во времени (например, больше года).
- НАР,Нарик, Нара прозвище игрока онлайн игр использущего всевозможные усилители брони,огневой мощи.
- Нетварь — сетевая OS NovellNetWare(«каждой твари — по нетвари!»).
- Нетоскоп, Нетшкаф — браузер Netscape Navigator
- нзчт — «не за что», ответ на «спсб»
- Ниббл — 4 бита.
- Ник, никнейм — (от англ.nickname, nick ) — псевдоним, прозвище
- Никсы — ОС семейства UNIX или UNIX‐подобные ОС.
- Нуль, Нулённый — Скрипт или программа с отсутствующей регистрацией.
- Нонаме (нонейм):
- (англ.Noname ), производитель неизвестен.
- Сайт nnm.ru.
О
- Оверквотинг — чрезмерное цитирование в ответе на сообщение в эхоконференции.
- Оверклокинг — разгон процессоров компьютерных комплектующих таких как: Видеокарта, Процессор, Bridge’евые процессоры, Память.
- Огнели́с — браузер Mozilla Firefox. См. также Лиса, Лисичка
- Одмин — см. СА, Сис.администратор.
- Одинэ́сник — программист, специализирующийся на системе 1С:Предприятие.
- ОИНЧ — Отпишись И Не Читай
- Оковалок — большой файл («Не надо по мылу оковалки посылать»).
- О́кна, Око́шки — ОС Microsoft Windows.
- О́ля — OLE, технология Object Linking and Embedding, позволяющая редактировать данные, созданные в другой программе, не выходя из основного редактора.
- Онлайн (англ.on-line ) — состояние абонента «в сети», либо вид общения «в реальном времени» (IM, IRC).
- Опга́живать — см. Апгре́йдить
- О́ракл, Ора́кул — база данных Oracle (СУБД).
- Ораклоид — Специалист по Oracle (СУБД).
- Опсо́с — оператор сотовой связи
- Осёл
- 1. Клиент пиринговой сети сети eDonkey2000, например eMule.
- 2. Браузер Internet Explorer
- Производное: операционная система Windows или Windows NT.
П
- Па́га — (англ.page , IPA: /peɪdʒ/ ) — страница в Интернете.
- Па́лка —
- джойстик.
- Модуль оперативной памяти.
- Платежная система PayPal.
- Па́льма — КПК фирмы Palm.
- Пальмово́д — пользователь КПК фирмы Palm.
- Пальцевод — touchpad, замена мыши в ноутбуках (лептопах).
- Па́ника (англ.Kernel panic ) — сообщение о невосстановимой ошибке ядра операционной системы
- Па́сквиль — программа на языке Паскаль.
- Паску́да —
- Программа на языке Паскаль.
- Любитель писать программы на этом языке
- Паску́дник, пасквиля́нт — программист, пишущий программы на языке Паскаль.
- Патч — файл с записанными в нём различиями между двумя файлами или содержимым каталогов (например, программами), иногда распространяемый в виде программы, изменяющей одну версию программы для получения другой (например, для исправления ошибок).
- ПВП — (Player vs Player)Дуэль (Распространено у Геймеров).
- Педиви́кия — шутливое название Википедии.
- Пень, Пе́ньтюх — центральный процессор марки Pentium компании Intel.
- Перелоги́ниться — отлогиниться и снова залогиниться. См. тж. Логин.
- Перло́вка, перл, перлу́шка — язык программирования Perl.
- Перс — персонаж ролевой игры за которого играет человек.
- Пижа́мкер, пожма́кер — AdobePageMaker.
- Пилёный — перемаркированный (центральный процессор).
- Пилю́лькин — лечащий модуль антивирусной программы.
- Пингви́нукс — см. Линух.
- Пингвинятник — пользователь ОС на ядре Linux, талисманом которого является пингвин.
- Пингова́ть — использовать программу «ping».
- Пионэр — принебрежительное название людей (чаще малолетних, или которые ведут себя как малолетние), пишущих сообщения в форумы, конференции и т. д., но при этом очень поверхностно разбирающихся в тематике форума.
- Пиписькоме́рка (писькомерка, пузомерка) — пренебрежительное название различных счетчиков и рейтингов. См. также BogoMIPS.
- Писа́лка — устройство записи компакт-дисков (CD-R или CD-RW)
- Писю́к, Писю́ха — IBM PC-совместимый компьютер. «Хорошую вещь писюком не назовут»
- Пли́тка — печатная плата.
- Пита́ло — блок питания.
- Пе́тя — Питер Нортон.
- Пла́нка, Плашка — модуль оперативной памяти.
- Плю́йник — струйный принтер.
- Плюс — строгое предупреждение участнику сети Fidonet. Набравший 3 «плюса» переводится в режим доступа «только чтение» или отключается от сети полностью.
- Плюсы́ — язык программирования C++.
- ПМСМ — По Моему́ Скромному Мнению, аналог ИМХО.
- Подкры́сник, Подмы́шка — коврик для мыши.
- Подоко́нник — см. Виндузятник.
- Подня́ть тремя́ па́льцами[1] , Посла́ть на три́ кно́пки — перезагрузить компьютер одновременным нажатием клавиш Ctrl+Alt+Delete.
- Позе́р, Позёр — пакет 3D графики Poser.
- По́лзатель, По́льзюк — пользователь.
- По́лпись — подпись (буквы «л» и «д» на клавиатуре находятся рядом).
- Полуо́сь, Полумух, Попола́м(а) — операционная система OS/2.
- Помо́йка — «корзина».
- ПорноСло́ник, Поно́сник — фирма Panasonic и/или любое устройство её производства.
- Порутать — Нелегально получить полный доступ к компьютеру.
- Поп —
- Протокол POP3.
- обозначение игры «Prince of Percia»
- Поса́ксить — (англ.suck , англ.sucks ) — глагол, показывающий унижение свойств, качеств кого/чего-либо, кем-либо. Напр.: «Препод посаксил мою прогу».
- Пост — сообщение в электронной конференции, форуме или блоге. По́стить — отправлять такое сообщение.
- Пофи́ксить — (от английского fix) исправить.
- Пра́нк (от англ.prank ) — розыгрыш, практическая шутка, особенно жестокая
- Превьюшка — (от англ.Preview — предварительный просмотр) уменьшенные в несколько раз картинки для удобного предварительного просмотра.
- Прескоти́на — интелевский процессор на ядре Prescott.
- Прибамба́с — продвинутый девайс
- Приплю́снутый — программист, пишущий программы на языке C++
- Припись — дальнейшее преобразование слова «подпись», после возникновения «полписи».
- Прикрутить — добавить (например прикрутить форум к сайту), обеспечить совместную работу
- Прове́тривать (почту) — проверять почту.
- Про́га — программа. Про́жить, про́гать — программировать, писать программу.
- Програ́ммер — программист (также прог, прогер).
- Программи́зм, Программа́зм — чрезвычайная увлеченность программированием, может расцениваться как болезнь.
- Про́кся, про́кси — прокси-сервер.
- Проприетарщина — собственническое программное обеспечение и другие объекты авторского права с (особенно значительно) несвободной лицензией.
- Проши́вка — программный код, записанный в энергонезависимой памяти устройства (например, PDA, сотового телефона или маршрутизатора).
- Проши́ть — изменить прошивку.
- Пры́скалка — струйный принтер.
- Првт — сокращённое «Привет», так же «спсб» — «спасибо».
- ППКС — Подписываюсь Под Каждым Словом
- ППП — Повсеместно Протянутая Паутина, то есть Всемирная Паутина (WWW — World Wide Web).
- Ппц — сокращённое «Пипец»; редко — карманный компьютер(от PocketPC)
- Псц — сокращенное «писец» (ужас, кошмар, обозначение плохой ситуации, безысходность
- ПХП — Язык написания web-сценариев PHP.
- Пых-пых, Похапэ — серверный интерпретируемый скриптовый язык программирования PHP.
Р
- Рак — от. англ.rack — сменный накопитель.
- Рапи́да — файлообменный сервер Rapidshare (http://www.rapidshare.de или http://www.rapidshare.com)
- Ра́рить — использовать архиватор RAR.
- Расша́рить — (англ.share , делиться (имуществом)) открыть для коллективного доступа какой-либо ресурс в локальной сети (расшарить папку, принтер, диск).
- Реальщик — 1. Игрок в любой MMORPG который играет за реал т.е пользуется предметами из платного итем-шопа. 2. Игрок в MMORPG который продаёт игровые аккаунты, итемы и т.п за реальные деньги.
- Ребутить — перезагружать (от англ.reboot ), Хард ребут — вытащить штепсель питания из розетки и вставить обратно, на тот случай, когда уже ничего не помогает.
- Редире́кт — (от англ.redirect ), перенаправление (с одного e-mail на другой, с сайта на сайт и т. д.).
- Реза́к — устройство для записи (нарезки) оптических дисков (CD-, DVD-R[W]).
- Рели́з (англ.release ) — выпуск программы; выпуск оконченной программы на продажу. В варезных кругах — готовая к распространению в интернете пиратская версия программы или фильма.
- Рельса, Рыло — Rail Gun из всех игр Quake серии.
- Рендеринг (англ.rendering ) — Преобразование данных (например, векторного описания изображения вроде трёхмерной модели) в формат, пригодный для вывода (например, в виде двухмерного изображения), процесс вывода.
- Рельсы — Маршрут на сетевой карте в 3-D шутерах («У меня по всем картам рельсы проложены»).
- Респект — (от англ.«Respect») проявление уважения к чему-либо или кому-либо, например, респект Wiki!).
- Ритуальный танец с бубном — последовательность действий, не имеющая логического объяснения, но приводящая к желаемому результату (как правило, к корректной работе системы)
- Рофль — Человек смешной, с хорошим чувством юмора. Вызывающий смех и улыбки окружающих. Например: ‘Рофльный парень’. Происходит от ROFL.
- Роя́ль — клавиатура.
- РТФМ, RTFM — отсылка читающего или спрашивающего к документации (от англ.Read The Following (Fucking) Manual — прочитай эту (долбаную) инструкцию).
- Руга́ется — выдаёт сообщения (обычно вместо ожидаемого результата).
- Руле́з, руле́зный — очень правильный, хороший, классный (от глагола англ.rules — разг. «рулить», «быть крутым»).
- Рули́ть
- 1. Быть очень классным (о харде или софте).
- 2. Побеждать, превосходить, особенно об играх, игроках и/или об оружии и юнитах в играх.
С
- Сабж — (англ.subj. , сокращение от англ.subject ) тема разговора, обычно на форуме; то, что указанно в поле темы сообщения.
- Сакс, Суксь — выражение неодобрения (от амер. сленга «to suck» — сосать).
- Сала́зки — устройство для быстрой смены винчестера без вскрытия корпуса.
- Сомса (читается как «Самса») — жаргонное название фирмы Samsung.
- Санте́хника — аппаратное обеспечение, выпускаемое фирмой Sun Microsystems.
- Сапёр — 1. Игра MineSweeper. 2. Специалист по внедрению и сопровождению SAP R/3.
- Саппорт, сопорт — служба технической поддержки.
- Свисто́к — модем
- Святой Патрик — Патрик Фолькердинг, отец-основатель Slackware Linux
- Сдо́хнуть — перестать работать («у меня сдохла мать…»).
- Сейв, сейф — (англ.save ) сохраненая игра, точка сохранения в игре к которой можно вернуться.
- Се́рая сбо́рка — собранный на одной из безымянных фабрик по всему миру. Как правило — из комплектующих такого же неизвестного происхождения. См. также Белая сборка, Красная сборка.
- Серва́к, стервер, Сервант — сервер.
- Сет (от англ.set — набор) — термин ролевых игр, полный набор каких-либо вещей из одного комплекта; обычно в игре сет дает преимущества перед тем же набором вещей, но из разных комплектов.
- Сетеву́ха — сетевая плата.
- Сидер — юзер, обладающий готовым к раздаче файлом; может инициировать раздачу.
- Сидю́к — CD-ROM или CD-RW.
- Си́квел — SQL, например, Microsoft SQL Server. Название образовано добавлением гласных к аббревиатуре SQL: sequel (англ.). Также встречаются жаргонные Сикуль и Скуль.
- Си́мка — модуль памятиSIMM, также SIM-карта.
- Синий зуб, Синезу́б — (от анг. Bluetooth) — технология радио-связи bluetooth.
- Синий экран (смерти), синяк — (от анг. Blue screen of death) сообщение OS Microsoft Windows о серьёзной ошибке, требующей перезагрузки системы (обычно — необработанное прерывание в ядре OS).
- Сиони́ст, Си́шник — программист, пишущий на языке Си.
- Сисадмин — СИСтемный АДМИНистратор.
- Сисанал — СИСтемный АНАЛитик.
- Сисинжир — СИСтемный ИНЖенер.
- Cисоп — СИСтемный ОПератор.
- Сиська, Сися — 1. оборудование фирмы Cisco; 2. Сисадмин
- Сишарпер — программист, пишущий на языке C# (си-шарп)
- Сказёвый — подключаемый через SCSI-адаптер.
- Ска́зи — SCSI-адаптер.
- Скин, Шкурка — (от англ.skin — кожа, оболочка) внешний вид, оболочка, дизайн, переключаемый по выбору пользователя.
- Скопипастить — (от англ.copy-paste — скопировть информацию с кокого-либо ресурса.
- Скриншот, Скрин (англ.screenshot — снимок экрана или части экрана.
- Скриптки́дди — взломщик-недоучка, довольствующийся эксплоитами, найденными в Интернете.
- Сла́ка, Слаква́рь, Слякоть — дистрибутив GNU/Linux Slackware.
- Слакофи́лище — фанатик-линуксоид, использующий дистрибутив Slackware от Святого Патрика
- Слить — 1. Скачать файлы с сервера. 2. Проиграть (в компьютерной игре либо в споре на 2 сисадминвеб-форуме).
- Слу — (скр.) Слушай.
- Смайл — (тж.Смайлик. От английского smile — улыбка). Комбинация различных знаков препинания или букв, обозначающая настроение. Например улыбка: [[::-)]]
- Сморкач, сморкалка — струйный принтер.
- Сморщиться — 1. скрыться под заголовок — в KDE есть режим, когда дважды щёлкаешь по заголовку окна и оно прячется под заголовок. 2. — то же, что и: «замолчать», «перестать мешать», «убраться вон», «заткнуться», «затухнуть», и пр.
- Сносить — деинсталлировать (удалять) программное обеспечение.
- Собака, собачка — «@».
- Сокпаппет — Виртуал.
- Солю́ш(е)н — (от англ.solution ) описание прохождения игры, решение, подсказки (см. хинт).
- Солярка — операционная система Solaris.
- Соплярис — Пренебрежительное название операционной системы Solaris.
- Сорец, Сорс(ы) — (англ.source ) исходный код программы в одном или нескольких файлах.
- СЗОТ — Сорри за оффтоп.
- Софт — программное обеспечение, от software.
- Спам — электронное письмо или сообщение на форуме рекламного характера.
- Спамить — 1. Посылать спам. 2. При общении на форумах, используется как синоним слова флудить.
- Спейс — свободное место на диске
- ССЗБ — Сам Себе Злобный Буратино (применяется в случае, если пользователь произвёл неодобряемые собеседником действия)
- «»Стакан»» — док-станция. (Применяется в отношении док-станций для продуктов компании Apple
- Станок — компьютер.
- Стар, Старка, Старик — игра Starcraft.
- Стервер — см. Сервак
- Струйник — струйный принтер.
- Студия, студень — среда разработки Microsoft Visual Studio.
- Сыпаться — о носителе информации: портиться, теряя полезные данные, покрываться бэдами. О программах — ситуация с невосстановимыми ошибками.
- Сырец, Сырки — см. Сорец.
- Схабка — встреча людей в реале, которые сидят на одном Hub сервере. Слово произошло от слова сходка+Hub (администратор SAMuel во время очередной пьянки сморозил это слово и теперь оно шествует по интернет миру).
Т
- Та́зик — персональный компьютер или рабочая станция, а также пренебрежительное название низкокачественных корпусов для ПК, чаще всего от неизвестных производителей; другое значение — спутниковая тарелка.
- Тарить — сжимать данные с помощью утилиты tar.
- Таска — задание, задача, процесс
- Та́чка — компьютер (видимо, от значения «автомобиль» через «машина»).
- Твинк — (от англ.Twink , он же Read-only user) — исторически: учетная запись пользователя, обладающего правами только на просмотр информации, но не её редактирования. Применительно к форумам: вторая, третья, четвёртая и далее учетные записи, используемые в случае блокировки основной учетной записи, а также с целью сокрытия своей личности. В онлайн играх — второстепенные персонажи, используемые для обслуживания главного.
- Телеви́зор — монитор.
- Тер, террор, терик — терорист в Counter-Strike.
- Тера, террора — девушка, играюшая в контру за террористов.
- Тётя А́ся — см. Аська.
- ТК — ты крутой(ая)
- Толксы — форум и т. п. с отличительным словом «talks» в названии.
- Тонна — терабайт. См. также ве́сить.
- Топта́ть — архивировать.
- Топта́ть кла́ву — набирать какой-либо текст на клавиатуре.
- Тормози́лла — браузерMozilla.
- То́ррент — файл для клиентов BitTorrent, содержащий в себе информацию о запрошенных файлах.
- Тра́бл,Тра́бла, Грабли — проблема, неприятность (от англ.trouble )
- Тракт — логический канал передачи данных.
- Трактори́ст — человек который в компьютерной игре класса shooter(бегай и стреляй) использует только клавиатуру.
- Трекер — см. Tracker
- Тролль (от англ.troll ) — анонимный интернет-провокатор. В Интернете так называют людей, которые намеренно публикуют (в форумах, группах новостей, в Вики-проектах) провокационные статьи и сообщения, которые призваны вызвать конфликты между участниками, флейм, оскорбления и т. п. Сами подобные статьи и сообщения также иногда называют троллингом.
- Троллинг (от англ.trolling ) — процесс написания провокационных сообщений в Интернете. Подробнее см. Тролль.
- Трубо́ Паскака́ль,Труба́ (от англ.«Turbo Pascal» ) — компилятор языка программирования Паскаль, созданный фирмой Borland.
- Троя́н — троянская программа.
- ТСП — Туда-Сюда Протокол (от англ.TCP — Transmission Control Protocol)
- Тул, Тулза (от англ.tools ) — программное обеспечение, сравнительно небольшая система, которая предназначена в основном для обеспечения функционирования более сложных систем (см. Девайс)
- Тумба, Тумбочка (от англ.thumbnail ) — уменьшенная копия изображения (часто применяется в онлайн-галереях изображений)
- Тырнет — Область интернета, в которой можно получить что-либо бесплатно(стырить)
У
- Убер — (нем. über — над, сверх) очень высокая положительная оценка.
- Убер — способность медика в игре TF2
- УМВР — У Меня Всё Работает (употребляется в случае сходства конфигурации ПО и отсутствия описанных проблем).
- Укроп — модем, от неграмотного прочтения английского слова en:Acorp.
- Уних — операционная система UNIX. Была шутка: «UNIX — у них, а у нас — РАФОС».
- Упс:
- UPS — источник бесперебойного питания
- oops (англ.oops — восклицание «ой!») — отклонение от нормальной работы ОС «Линукс»
Ф
- Файло́ — файлы.
- Файлопомойка
- (пренебр.) BBS с большим набором несортированных файлов, особенно ничем не отличающимся от многих других.
- Сервер сети с ресурсами открытыми для общего доступа («шары») на который сохраняют всё, что угодно.
- Поддельная фотография, сделанная с помошью монтажа или наложения графических эффектов.
- Флеш-моб, массовая творческая переработка участниками форума или блога некоего изображения. См. также Жабить.
- Фотожоп, Фотожопа — Adobe Photoshop.
- Фраг — очко за убийство противника в играх типа 3d-Action. Обычно за убийство начисляют 1 фраг, а за самоубийство — списывают.
- Френд — от англ.friend , друг. Используется в играх, IM и др; от этого слова присходит глагол (за)френдить и термин френд-лента в ЖЖ. Например, «Добавь меня во френды!», «Так я у тебя уже во френдах!».
- Фривар — (англ.freeware ) — бесплатное для скачивания и использования программное обеспечение. Не следует путать со свободным (для использования, модификации и т. д. ) программным обеспечением (англ.Free software ).
- Фрилансер (от анг. freelance — внештатный, вольнонаёмный) — как правило человек нанимающийся на разовые работы по сети и работающий удаленно. Многие сайты в Интернете созданы фрилансерами.
- Фря, Фряха, Фрибзди, Фрюшка — ОС FreeBSD.
- Фу, саранча! —говорят в случае, когда на одного игрока нападают несколько врагов (в командной игре, впервые употребилось в TF2 игроком chelovek(MAPAT)).
- Фэн-шуй — использование подручного оборудования специалистом, для решения (на месте) возникшей проблемы.
- Ф́эха — сокращение от «файловая эха». Существуют в фидонете и служат для обмена файлами на заданную тему.
Х
- Хак — (англ.hack , IPA: /hæk/ )
- изначально (родилось в университете Беркли) модификация кода программы, позволяющая уменьшить размер программы, расширить функциональность или ускорить её работу, наконец просто красивое программистское решение (хороший хак обязательно должен быть красив с точки зрения программистов); соответствует англ.brilliant hack
- нестандартное, порой, не самое красивое решение проблемы (грубый, или кривой хак, англ.dirty hack ), как правило, основанное на использовании особенностей какой-либо платформы
- процесс взлома защиты
- программа-модификатор
- хакер — (англ.hacker , IPA: /ˈhækə(r)/ ):
- Человек, любящий исследование подробностей (деталей) программируемых систем, изучение вопроса повышения их возможностей, в противоположность большинству пользователей, которые предпочитают ограничиваться изучением необходимого минимума. RFC 1392 усиливает это определение следующим образом: «Человек, наслаждающийся доскональным пониманием внутренних действий систем, компьютеров и компьютерных сетей в особенности».
- Кто-либо программирующий с энтузиазмом (даже одержимо), или любящий программировать, а не просто теоретизировать о программировании.
- Человек, способный ценить и понимать хакерские ценности.
- Человек, который силён в быстром программировании.
- Эксперт по отношению к определённой компьютерной программе, или кто-либо часто работающий с ней; пример: хакер Unix. (Определения с первого по пятое — взаимосвязанные, так что один человек может попадать под несколько из них.)
- Эксперт или энтузиаст любого рода. Кто-либо может считаться хакером астрономии, например.
- Кто-либо любящий интеллектуальные испытания, заключающиеся в творческом преодолении или обходе ограничений.
- (не рекоменд.) Злоумышленник, старающийся откапывать деликатную информацию, суя нос не в своё дело. Отсюда хакер паролей, сетевой хакер (хакер сети). Правильный термин для этого значения — «взломщик» (англ.cracker — кракер).
- Хакать — делать хак.
- Халва, Халява, Халфа — компьютерная играHalf-Life.
- Харакири — перезагрузка с помощью клавиши Reset.
- Хард —
- «винт», винчестер, жёсткий диск (от англ.Hard Disc Drive );
- компьютерное оборудование, «железо», аппаратное обеспечение (от англ.hardware ).
- Хацкер, Кул-хацкер — пренебрежительное название кого-либо, мнящего себя хакером.
- ХЗ — хрен его знает, хрен знает, хочется знать, хочу знать. х@й знает (также «МБ»-может быть)
- Хинт — совет, рекомендация, инструкция.
- Хистори (англ.History ) — лог‑файл браузера, иногда IM или IRC.
- Хитпоинты (англ.Heath points ) — Жизни или здоровье в компьютерных играх. Так же используется ХП. Не надо путать с XP.
- Холивар — (от англ.holy war , IPA: /ˈhoʊli ˈwɔː(r)/ ) священные войны, словесные баталии по поводу какой из обсуждаемых объектов лучше (самый распространенные холивары Windows vs GNU/Linux, Android vs iOS).
- Хомпаг, Хомяк — 1) домашняя (англ.home ) страница. 2) пользователь компьютера (в коммерческих структурах). 3) Пользователь ОС Windows XP Home Edition
- Хоткей — горячая клавиша, клавиша быстрого доступа.
- ХРюша, ХРя, ХэРэшник, Хп, ХаПэ, ХиПпи, ХРень, ХеРня — ОС Windows XP. «XP» — в русской транскрипции — ХреновоРаботает, ХренРазберешь.
- Хэнга́п, отхэнга́пить (англ.hang up , IPA: /hæŋ ʌp/ ) — команда модема «повесить трубку».
- Хэдшот (англ.Head shoot ) — Попадание в голову. Обычно используется в стрелялках.
Ц
- Цанцель — (от англ. cancel) прекратить, остановить [выполнение команды], отменить.
- Целка, Целюлит — процессор Intel Celeron.
- Циска — продукция фирмы Cisco Systems, Inc.
- Цухел, Цухель — модем фирмы ZyXEL.
- ЦЦЦю — www. на русской раскладке.
Ч
- ЧАВО́ — аббревиатура из первых двух букв главных слов «ЧАсто задаваемые ВОпросы» (FAQ).
- Ча́йка — (глагол «счаить») — союзник или (реже) соперник в компьютерной игре (обычно онлайновой, в которой для стратегической победы нужно набрать большее количество очков), который ждёт, пока вы проделаете всю «грязную» работу, и потом забирает почти готовый результат. Например, тихо ждёт, пока вы расправитесь с монстром, а когда наступает время нанесения последнего удара (который и приносит очки) опережает вас на секунду и наносит этот последний удар вперёд вас, и получает игровые очки, предназначенные вам (эта категория ещё больше раздражает игроков, чем т. н. ливер).
- Ча́йник — малоопытный пользователь, человек, который не умеет целесообразно пользоваться персональным компьютером в нужном для него объёме. Термин пришёл из альпинизма. Чайником опытные альпинисты называют новичка, совершившего своё первое восхождение на вершину горы. Как правило, такие люди первым делом не совершают нужные действия по обустройству лагеря, а позируют фотографам, упирая одну руку в бок, а другую отставляют вбок, опирая на ледоруб, лыжную палку и т.д., отчего их силуэт сильно напоминает чайник. Таким образом, термин «чайник» не имеет ничего общего с умственными способностями человека, а говорит лишь о неопытности. Существует также «словарный запас», созданный самими этими людьми. Также создана целая линия книг для «чайников», которая наглядным образом объясняет её читателю, как следует действовать при работе с тем или иным программным или аппаратным обеспечением, не имея никакого изначального понятия о предмете.
- чат — общение пользователей (обмен текстовыми репликами) по сети в режиме реального времени.
- Чатла́нин — постоянный участник чата.
- Чемода́н — внешний накопитель информации.
- Червь — (англ.worm ) разновидность компьютерного вируса распространяющиеся, в основном, через локальную или глобальную компьютерную сеть.
- Черепа́шка — модем, имея ввиду низкую скорость передачи информации через dial-up-подключению по сравнению с другими видами. Возможно, генезис термина определил округлый дизайн некоторых внешних модемов.
- Чи́тер (англ.cheat — жульничество, англ.cheater — жулик) — игрок в компьютерные игры, который старается обмануть программу, либо используя её особенности, либо применяющий чит-коды или чит-программы.
- Чигабу́ (англ.Chigabu ) — Данное выражение означает приветственный жест от одного учатсника диалога — другому. Как правило носит позитивный характер и обозначает дружественное начало беседы. Пример: Чигабу! Как дела?
Ш
- Шаманство — действия специалиста (программиста, системного администратора):
- непонятные окружающим;
- трудноформализуемые; основанные на всестороннем опыте и интуитивном понимании;
- экспериментальные, иногда «методом тыка»
- Шар — протокол передачи данных WAP, адаптированный для работы в сети Интернет через мобильные устройства. например, зайти с мобилы на шар (то есть на WAP-портал).
- Шарп, Шарпей — язык программирования C# (произносится си-шарп)
- Шаровары — shareware, условно-бесплатное программное обеспечение.
- Шара, Шарные или расшареные ресурсы — От англ. (Shared) открытые для общего доступа файлы, папки, диски и т. п.
- Шахта — карман для винчестера.
- Шкаф (Нетшкаф) — браузер Netscape Navigator
- Шкурка — см. Скин
- Шлака — см. Слака.
- Шланг, Шнурок — кабель.
- Шпилять, Шпилить — играть в компьютерные игры. (от нем.spielen )
- Штаны (салазки) — переходник для установки 9 см (3,5″) устройства в 5,25″ отсек.
- Шпрот — модем Sportster производства фирмы USR (ныне 3COM).
- Шредер — устройство для уничтожения бумаги.
Э
- Энике́й (англ.any key ) — любая клавиша.
- Энике́йщик —
- специалист по компьютерам, обычно это помощник системного администратора,(в том числе, помогает малограмотным пользователям в ситуациях «press any key to continue» («для продолжения нажмите любую клавишу») отношения к специалисту техподдержки в настоящее время не имеет.).
- иногда может применяться как уничижительное обозначение людей, работающих в службе поддержки пользователей, но самих не слишком далеко ушедших по уровню знаний от тех, кому они помогают. Эникейщики обычно любят называть себя админами, хотя часто оказываются неспособными сделать что-то серьезное без помощи знакомого-специалиста.
- Энтя́, Энтя́ха, Энти́ха, Энти́шка — операционная система Microsoft Windows NT
- Энуре́з — Unerase, средство восстановления стёртых файлов.
- Э́тика хакеров:
- Вера в то, что общее использование (англ.sharing ) информации приведёт и к общей пользе. Хакер должен ценить время своё и других хакеров («не изобретать велосипед»), этический долг хакера — делиться своими достижениями, создавая свободные программы и обеспечивая доступ к информации и вычислительным ресурсам, насколько это возможно (этому принципу следует и «Википедия»).
- Вера в то, что взлом систем для удовольствия и исследования этически допустим, так же как и то, что взлом не может квалифицироваться как воровство, вандализм или нарушение конфиденциальности.
Обычно под этикой хакеров понимается толькое первое. См. также [1], GNU
- Э́ха — фидонетовскаяэхоконференция.
Ю
- Ю́зать (что-либо) (от англ.use ) — использовать (например, компьютерную программу).
- Ю́зер (англ.user ) — пользователь.
- Юзерпи́к, см. Аватар
- Ю́зверь — либо синоним юзера, либо пользователь с модемом.
- Юниксо́ид — высококвалифицированный пользователь ОС семейства UNIX.
- Ю́них — ОСUNIX.
- Юпик, см. Юзерпик
- Юю́к — закодированный в UUE (откуда и название) файл, помещаемый в тело нетмейла, эхомейла (FIDO) или новостное сообщение (Usenet). Существует и глагольная форма, обозначающая отправку файла, закодированного в UUE нетмейлом, — заюю́чить.
Я
- Я́блочник — пользователь устройств фирмы Apple.
- Я́ва — язык программирования Java (также см. Жаба)
- Яваскри́пт — язык программирования JavaScript
- яПа́пко (англ.iFolder ) — сайт файлового хостинга компании Агава
Примечания
- ↑ Из книги Алекса Экслера«Записки невесты программиста»