diff --git a/README.md b/README.md index 64ef33813a..2996aabdbc 100644 --- a/README.md +++ b/README.md @@ -1,117 +1,62 @@ -# Домашнее задание к занятию "`Название занятия`" - `Фамилия и имя студента` +# Домашнее задание к занятию "`Кеширование Redis/memcached`" - `Вернигоров Дмитрий` + +1. [Руководство по оформлению Markdown файлов](https://gist.github.com/Jekins/2bf2d0638163f1294637#Code) +--- -### Инструкция по выполнению домашнего задания +### Задание 1 Кеширование +Приведите примеры проблем, которые может решить кеширование. - 1. Сделайте `fork` данного репозитория к себе в Github и переименуйте его по названию или номеру занятия, например, https://github.com/имя-вашего-репозитория/git-hw или https://github.com/имя-вашего-репозитория/7-1-ansible-hw). - 2. Выполните клонирование данного репозитория к себе на ПК с помощью команды `git clone`. - 3. Выполните домашнее задание и заполните у себя локально этот файл README.md: - - впишите вверху название занятия и вашу фамилию и имя - - в каждом задании добавьте решение в требуемом виде (текст/код/скриншоты/ссылка) - - для корректного добавления скриншотов воспользуйтесь [инструкцией "Как вставить скриншот в шаблон с решением](https://github.com/netology-code/sys-pattern-homework/blob/main/screen-instruction.md) - - при оформлении используйте возможности языка разметки md (коротко об этом можно посмотреть в [инструкции по MarkDown](https://github.com/netology-code/sys-pattern-homework/blob/main/md-instruction.md)) - 4. После завершения работы над домашним заданием сделайте коммит (`git commit -m "comment"`) и отправьте его на Github (`git push origin`); - 5. Для проверки домашнего задания преподавателем в личном кабинете прикрепите и отправьте ссылку на решение в виде md-файла в вашем Github. - 6. Любые вопросы по выполнению заданий спрашивайте в чате учебной группы и/или в разделе “Вопросы по заданию” в личном кабинете. - -Желаем успехов в выполнении домашнего задания! - -### Дополнительные материалы, которые могут быть полезны для выполнения задания +1. Уменьшение нагрузки: Кеширование может помочь уменьшить нагрузку на сервер, поскольку оно позволяет серверу хранить часто запрашиваемые данные в памяти или на быстром диске, что позволяет избежать необходимости повторного вычисления или извлечения этих данных из базы данных. +2. Повышение производительности: Кеширование на сервере может помочь улучшить общую производительность сайта, поскольку оно сокращает время, необходимое для обработки запросов и доставки контента пользователям. +3. Повышение масштабируемости: Кеширование может помочь повысить масштабируемость, поскольку оно позволяет серверу обрабатывать больше запросов без снижения производительности. +4. Улучшение доступности: Кеширование может помочь повысить доступность ресурсов, поскольку оно позволяет пользователям получать доступ к статическим ресурсам даже в случае сбоя сервера. +5. Экономия пропускной способности: Кеширование может помочь сэкономить пропускную способность, поскольку сервер не должен отправлять одни и те же данные пользователям несколько раз. -1. [Руководство по оформлению Markdown файлов](https://gist.github.com/Jekins/2bf2d0638163f1294637#Code) +### Задание 2 Memcached ---- +Установите и запустите memcached. -### Задание 1 +Приведите скриншот systemctl status memcached, где будет видно, что memcached запущен. +### Ответ +1. Устанвливаем программу с помощью команды: sudo apt install memcached +2. Проверяем работу пронраммы: + ![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/576ec854-dd8d-4e9d-b89e-3bccd7ff7887) -`Приведите ответ в свободной форме........` -1. `Заполните здесь этапы выполнения, если требуется ....` -2. `Заполните здесь этапы выполнения, если требуется ....` -3. `Заполните здесь этапы выполнения, если требуется ....` -4. `Заполните здесь этапы выполнения, если требуется ....` -5. `Заполните здесь этапы выполнения, если требуется ....` -6. -``` -Поле для вставки кода... -.... -.... -.... -.... -``` +### Задание 3 Удаление по TTL в Memcached -`При необходимости прикрепитe сюда скриншоты -![Название скриншота 1](ссылка на скриншот 1)` +Запишите в memcached несколько ключей с любыми именами и значениями, для которых выставлен TTL 5. +Приведите скриншот, на котором видно, что спустя 5 секунд ключи удалились из базы. ---- +### Ответ +1. Создаем три ключа с ttl равным 5 секундам + +![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/5ee32f4e-d0a9-402d-917b-371c59d8a8ba) -### Задание 2 -`Приведите ответ в свободной форме........` +2. Проверяем уничтожение ключей +видим, что ключи уничтоженны -1. `Заполните здесь этапы выполнения, если требуется ....` -2. `Заполните здесь этапы выполнения, если требуется ....` -3. `Заполните здесь этапы выполнения, если требуется ....` -4. `Заполните здесь этапы выполнения, если требуется ....` -5. `Заполните здесь этапы выполнения, если требуется ....` -6. -``` -Поле для вставки кода... -.... -.... -.... -.... -``` +![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/09a59c42-84e9-42b7-9640-779db13c9cd3) -`При необходимости прикрепитe сюда скриншоты -![Название скриншота 2](ссылка на скриншот 2)` ---- +### Задание 4 Запись данных в Redis + +Запишите в Redis несколько ключей с любыми именами и значениями. + +Через redis-cli достаньте все записанные ключи и значения из базы, приведите скриншот этой операции. +### Ответ +1. Устанвливаем redis: sudo install redis +2. Запускаем программу: redis-cli +3. создаем три ключа с неограниченным сроком жизни +4. ПРоверяем созданные ключи + + + +![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/141a811c-62f7-4dcb-889b-c7a6909673a5) -### Задание 3 - -`Приведите ответ в свободной форме........` - -1. `Заполните здесь этапы выполнения, если требуется ....` -2. `Заполните здесь этапы выполнения, если требуется ....` -3. `Заполните здесь этапы выполнения, если требуется ....` -4. `Заполните здесь этапы выполнения, если требуется ....` -5. `Заполните здесь этапы выполнения, если требуется ....` -6. - -``` -Поле для вставки кода... -.... -.... -.... -.... -``` - -`При необходимости прикрепитe сюда скриншоты -![Название скриншота](ссылка на скриншот)` - -### Задание 4 - -`Приведите ответ в свободной форме........` - -1. `Заполните здесь этапы выполнения, если требуется ....` -2. `Заполните здесь этапы выполнения, если требуется ....` -3. `Заполните здесь этапы выполнения, если требуется ....` -4. `Заполните здесь этапы выполнения, если требуется ....` -5. `Заполните здесь этапы выполнения, если требуется ....` -6. - -``` -Поле для вставки кода... -.... -.... -.... -.... -``` - -`При необходимости прикрепитe сюда скриншоты -![Название скриншота](ссылка на скриншот)`