Разное Flashcards
Какая разница между авторизацией и аутентификацией?
Аутентификация — процедура проверки подлинности, например, проверка подлинности пользователя путем сравнения введённого им пароля с паролем, сохраненным в базе данных.
Авторизация — предоставление определённому лицу или группе лиц прав на выполнение определенных действий.
Как происходит авторизация на сервере?
- Для начала система запрашивает логин, пользователь его указывает, система распознает его как существующий — это идентификация.
- После этого система просит ввести пароль, пользователь его вводит, и система соглашается, что пользователь, похоже, действительно настоящий, раз пароль совпал, — это аутентификация.
- Далее возможно дополнительно подтвердить личность: одноразовый код из SMS или приложения. Если пользователь и его правильно введет, то система окончательно согласится с тем, что он настоящий владелец аккаунта, — это двухфакторная аутентификация.
- После этого система предоставляет пользователю право читать письма или совершать другие действия, доступные только владельцу аккаунта — это авторизация.
Что такое mock/stub?
Stub (стаб) — помогают имитировать входящие (incoming) взаимодействия. То есть вызовы, совершаемые тестируемой системой (SUT) к ее зависимостям для получения входных данных.
Mock (мок) — помогают имитировать и изучать исходящие (outcoming) взаимодействия. То есть вызовы, совершаемые тестируемой системой (SUT) к ее зависимостям для изменения их состояния.
Применяются в основном для тестирования поведения пользователя.
Что такое REgexp?
Регулярное выражение (сокращенное как regex или regexp; также называется рациональным выражением) - это последовательность символов, определяющая шаблон поиска. Обычно такие шаблоны используются алгоритмами поиска строк для операций “найти” или “найти и заменить” над строками или для проверки входных данных.
Что такое CI/CD? Какие инструменты CI/CD знаешь?
CI/CD — непрерывная интеграция и доставка) — это технология автоматизации тестирования и доставки новых модулей разрабатываемого проекта заинтересованным сторонам (разработчики, аналитики, инженеры качества, конечные пользователи и др.
Этот набор принципов предназначен для повышения удобства, частоты и надежности развертывания изменений программного обеспечения или продукта.
Инструменты для CI/CD Локальные. GitLab CI, TeamCity, Bamboo, GoCD Jenkins, Circle CI. Облачные. BitBucket Pipelines, Heroku CI, Travis, Codeship, Buddy CI, AWS CodeBuild. Правительственные hats, Nectar.
Что такое Definition of Done?
Definition of Done («Определение готовности», DoD) — это список условий к процессу и инкременту при выполнении которых элемент бэклога может считаться готовым, сделанным (Done). DoD применяется ко всем элементам бэклога продукта.
Какие знаешь уровни логирования?
ALL - Все сообщения
TRACE - Сообщение для более точной отладки
DEBUG - Дебаг-сообщение, для отладки
INFO - Обычное сообщение
WARN - Предупреждение, не фатально, но что-то не идеально
ERROR - Ошибка
FATAL - Фатальная ошибка, дело совсем плохо
OFF - Без сообщения
Чем микросервис отличается от монолита?
Монолитная архитектура — это традиционная модель программного обеспечения, которая представляет собой единый модуль, работающий автономно и независимо от других приложений.
Монолитом часто называют нечто большое и неповоротливое, и эти два слова хорошо описывают монолитную архитектуру для проектирования ПО.
Монолитная архитектура — это отдельная большая вычислительная сеть с единой базой кода, в которой объединены все бизнес-задачи. Чтобы внести изменения в такое приложение, необходимо обновить весь стек через базу кода, а также создать и развернуть обновленную версию интерфейса, находящегося на стороне службы. Это ограничивает работу с обновлениями и требует много времени.
Монолиты удобно использовать на начальных этапах проектов, чтобы облегчить развертывание и не тратить слишком много умственных усилий при управлении кодом. Это позволяет сразу выпускать все, что есть в монолитном приложении.
Микросервисная архитектура (или просто микросервисы) представляет собой метод организации архитектуры, основанный на ряде независимо развертываемых служб. У этих служб есть собственная бизнес-логика и база данных с конкретной целью. Обновление, тестирование, развертывание и масштабирование выполняются внутри каждой службы. Микросервисы разбивают крупные задачи, характерные для конкретного бизнеса, на несколько независимых баз кода.
Микросервисы не снижают сложность, но они делают любую сложность видимой и более управляемой, разделяя задачи на более мелкие процессы, которые функционируют независимо друг от друга и вносят вклад в общее целое.
Внедрение микросервисов зачастую тесно связано с DevOps, поскольку они лежат в основе методики непрерывной поставки, которая позволяет командам быстро адаптироваться к требованиям пользователей.
Какие команды Linux Shell вам известны?
pwd (print working directory) - отображает текущее местоположение в структуре каталогов
date - Вывести текущую дату и время системы.
w - Данная команда показывает, кто залогинен в системе. Помимо этого также на экран выводится uptime и LA (load average).
ls - Вывести содержимое директории. Если не передать путь, то выведется содержимое текущей директории.
l (long listing format — вывод в колонку с дополнительной информацией о файлах), -t (сортировка по времени изменения файла/директории) и -r (обратная сортировка — в сочетании с -t наиболее «свежие» файлы будут внизу)
-h — вывод в human readable формате
cd - Команда cd позволяет перейти в новый каталог.
mkdir - создаёт новый каталог в текущем каталоге.
rm - Удалить файл.
cp - Копировать файл или директорию.
man - отображает руководства по командам.
cat - считывает файл, переданный как аргумент, и выводит его содержимое по стандартному каналу вывода. Передача нескольких файлов в виде аргумента приведёт к выводу конкатенированного содержимого всех файлов.
echo - выводит свои аргументы по стандартному каналу вывода
head - читает первые 10 строк любого переданного текста и выводит их по стандартному каналу. Число выводимых строк можно изменить.
tail - работает аналогично команде head, но читает строки с конца
less - позволяет перемещаться по переданному файлу или куску текста, причём в обоих направлениях.
true - всегда возвращает ноль в качестве выходного статуса для индикации успеха.
Как с помощью команд Linux Shell найти лог-файл и строчку с ошибкой в файле?
cd /car/log - перейти в папку с логами
ls - просмотр всех файлов
grep error Файл