From db60135a60aab3fd6f3d69da440057263a43a218 Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 17:56:26 +0700 Subject: [PATCH 01/10] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 64ef33813a..2b74a211d7 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Домашнее задание к занятию "`Название занятия`" - `Фамилия и имя студента` +# Домашнее задание к занятию "`Кеширование Redis/memcached`" - `Вернигоров Дмитрий` ### Инструкция по выполнению домашнего задания From 8598c7b1f3a807a7410585ff92d96eb155220ffc Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 18:11:05 +0700 Subject: [PATCH 02/10] Update README.md --- README.md | 31 +++++-------------------------- 1 file changed, 5 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index 2b74a211d7..0d8e09069d 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,5 @@ # Домашнее задание к занятию "`Кеширование Redis/memcached`" - `Вернигоров Дмитрий` - - -### Инструкция по выполнению домашнего задания - - 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. [Руководство по оформлению Markdown файлов](https://gist.github.com/Jekins/2bf2d0638163f1294637#Code) --- @@ -26,14 +8,11 @@ `Приведите ответ в свободной форме........` -1. `Заполните здесь этапы выполнения, если требуется ....` -2. `Заполните здесь этапы выполнения, если требуется ....` -3. `Заполните здесь этапы выполнения, если требуется ....` -4. `Заполните здесь этапы выполнения, если требуется ....` -5. `Заполните здесь этапы выполнения, если требуется ....` -6. - -``` +1. Уменьшение нагрузки: Кеширование может помочь уменьшить нагрузку на сервер, поскольку оно позволяет серверу хранить часто запрашиваемые данные в памяти или на быстром диске, что позволяет избежать необходимости повторного вычисления или извлечения этих данных из базы данных. +2. Повышение производительности: Кеширование на сервере может помочь улучшить общую производительность сайта, поскольку оно сокращает время, необходимое для обработки запросов и доставки контента пользователям. +3. Повышение масштабируемости: Кеширование может помочь повысить масштабируемость, поскольку оно позволяет серверу обрабатывать больше запросов без снижения производительности. +4. Улучшение доступности: Кеширование может помочь повысить доступность ресурсов, поскольку оно позволяет пользователям получать доступ к статическим ресурсам даже в случае сбоя сервера. +5. Экономия пропускной способности: Кеширование может помочь сэкономить пропускную способность, поскольку сервер не должен отправлять одни и те же данные пользователям несколько раз. Поле для вставки кода... .... .... From 9b4ac4921e995bf944b4978debbf0d2c4307f116 Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 18:11:40 +0700 Subject: [PATCH 03/10] Update README.md --- README.md | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 0d8e09069d..de15c705ed 100644 --- a/README.md +++ b/README.md @@ -4,27 +4,14 @@ --- -### Задание 1 - -`Приведите ответ в свободной форме........` +Задание 1. Кеширование +Приведите примеры проблем, которые может решить кеширование. 1. Уменьшение нагрузки: Кеширование может помочь уменьшить нагрузку на сервер, поскольку оно позволяет серверу хранить часто запрашиваемые данные в памяти или на быстром диске, что позволяет избежать необходимости повторного вычисления или извлечения этих данных из базы данных. 2. Повышение производительности: Кеширование на сервере может помочь улучшить общую производительность сайта, поскольку оно сокращает время, необходимое для обработки запросов и доставки контента пользователям. 3. Повышение масштабируемости: Кеширование может помочь повысить масштабируемость, поскольку оно позволяет серверу обрабатывать больше запросов без снижения производительности. 4. Улучшение доступности: Кеширование может помочь повысить доступность ресурсов, поскольку оно позволяет пользователям получать доступ к статическим ресурсам даже в случае сбоя сервера. 5. Экономия пропускной способности: Кеширование может помочь сэкономить пропускную способность, поскольку сервер не должен отправлять одни и те же данные пользователям несколько раз. -Поле для вставки кода... -.... -.... -.... -.... -``` - -`При необходимости прикрепитe сюда скриншоты -![Название скриншота 1](ссылка на скриншот 1)` - - ---- ### Задание 2 From 2bf0bfcf360565e5802f1615f4f06707889a6cd6 Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 18:12:08 +0700 Subject: [PATCH 04/10] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index de15c705ed..6a5cee2dfe 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ --- -Задание 1. Кеширование +### Задание 1 Кеширование Приведите примеры проблем, которые может решить кеширование. 1. Уменьшение нагрузки: Кеширование может помочь уменьшить нагрузку на сервер, поскольку оно позволяет серверу хранить часто запрашиваемые данные в памяти или на быстром диске, что позволяет избежать необходимости повторного вычисления или извлечения этих данных из базы данных. From 11185209e44ace4ad40e38ce8b6f3abbd2641f16 Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 18:34:10 +0700 Subject: [PATCH 05/10] Update README.md --- README.md | 27 +++++++-------------------- 1 file changed, 7 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 6a5cee2dfe..7e7dfc4c21 100644 --- a/README.md +++ b/README.md @@ -13,30 +13,17 @@ 4. Улучшение доступности: Кеширование может помочь повысить доступность ресурсов, поскольку оно позволяет пользователям получать доступ к статическим ресурсам даже в случае сбоя сервера. 5. Экономия пропускной способности: Кеширование может помочь сэкономить пропускную способность, поскольку сервер не должен отправлять одни и те же данные пользователям несколько раз. -### Задание 2 +### Задание 2 Memcached -`Приведите ответ в свободной форме........` - -1. `Заполните здесь этапы выполнения, если требуется ....` -2. `Заполните здесь этапы выполнения, если требуется ....` -3. `Заполните здесь этапы выполнения, если требуется ....` -4. `Заполните здесь этапы выполнения, если требуется ....` -5. `Заполните здесь этапы выполнения, если требуется ....` -6. - -``` -Поле для вставки кода... -.... -.... -.... -.... -``` +Установите и запустите memcached. -`При необходимости прикрепитe сюда скриншоты -![Название скриншота 2](ссылка на скриншот 2)` +Приведите скриншот 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) ---- ### Задание 3 From 2bfa306ae13d0600be8cdcd4abe378c5560b45eb Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 20:05:49 +0700 Subject: [PATCH 06/10] Update README.md --- README.md | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 7e7dfc4c21..6bf8fe924d 100644 --- a/README.md +++ b/README.md @@ -25,27 +25,20 @@ -### Задание 3 +### Задание 3 Удаление по TTL в Memcached -`Приведите ответ в свободной форме........` +Запишите в memcached несколько ключей с любыми именами и значениями, для которых выставлен TTL 5. -1. `Заполните здесь этапы выполнения, если требуется ....` -2. `Заполните здесь этапы выполнения, если требуется ....` -3. `Заполните здесь этапы выполнения, если требуется ....` -4. `Заполните здесь этапы выполнения, если требуется ....` -5. `Заполните здесь этапы выполнения, если требуется ....` -6. +Приведите скриншот, на котором видно, что спустя 5 секунд ключи удалились из базы. + +### Ответ +Создаем три ключа с ttl равным 5 секундам +![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/5ee32f4e-d0a9-402d-917b-371c59d8a8ba) +проверяем уничтожение ключей +видим, что ключи уничтоженны +![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/09a59c42-84e9-42b7-9640-779db13c9cd3) -``` -Поле для вставки кода... -.... -.... -.... -.... -``` -`При необходимости прикрепитe сюда скриншоты -![Название скриншота](ссылка на скриншот)` ### Задание 4 From ff55ee8030a11712cf8178d2ad5900652363ed07 Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 20:06:53 +0700 Subject: [PATCH 07/10] Update README.md --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6bf8fe924d..4f67a072b1 100644 --- a/README.md +++ b/README.md @@ -32,9 +32,10 @@ Приведите скриншот, на котором видно, что спустя 5 секунд ключи удалились из базы. ### Ответ -Создаем три ключа с ttl равным 5 секундам +1. Создаем три ключа с ttl равным 5 секундам + ![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/5ee32f4e-d0a9-402d-917b-371c59d8a8ba) -проверяем уничтожение ключей +2. Проверяем уничтожение ключей видим, что ключи уничтоженны ![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/09a59c42-84e9-42b7-9640-779db13c9cd3) From 25721d640151d3add4cd7ea6e55724bdffa72010 Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 20:07:33 +0700 Subject: [PATCH 08/10] Update README.md --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 4f67a072b1..e280eb496f 100644 --- a/README.md +++ b/README.md @@ -35,8 +35,12 @@ 1. Создаем три ключа с ttl равным 5 секундам ![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/5ee32f4e-d0a9-402d-917b-371c59d8a8ba) + + 2. Проверяем уничтожение ключей видим, что ключи уничтоженны + + ![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/09a59c42-84e9-42b7-9640-779db13c9cd3) From 40a2a694a7e0ee90c16fd43d024782e642b92774 Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 20:41:22 +0700 Subject: [PATCH 09/10] Update README.md --- README.md | 30 ++++++++++++------------------ 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index e280eb496f..2fc10a2c86 100644 --- a/README.md +++ b/README.md @@ -45,24 +45,18 @@ -### Задание 4 +### Задание 4 Запись данных в Redis -`Приведите ответ в свободной форме........` +Запишите в Redis несколько ключей с любыми именами и значениями. -1. `Заполните здесь этапы выполнения, если требуется ....` -2. `Заполните здесь этапы выполнения, если требуется ....` -3. `Заполните здесь этапы выполнения, если требуется ....` -4. `Заполните здесь этапы выполнения, если требуется ....` +Через redis-cli достаньте все записанные ключи и значения из базы, приведите скриншот этой операции. +### Ответ +1. Устанвливаем redis: sudo install redis +2. Запускаем программу: redis-cli +3. создаем три ключа с неограниченным сроком жизни +4. ПРоверяем созданные ключи 5. `Заполните здесь этапы выполнения, если требуется ....` -6. - -``` -Поле для вставки кода... -.... -.... -.... -.... -``` - -`При необходимости прикрепитe сюда скриншоты -![Название скриншота](ссылка на скриншот)` + + +![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/141a811c-62f7-4dcb-889b-c7a6909673a5) + From d8a9b2d37dc905db6787d18578ee809e5436964f Mon Sep 17 00:00:00 2001 From: Dmitriy <153208339+Wernigerode23@users.noreply.github.com> Date: Sat, 24 Feb 2024 20:41:50 +0700 Subject: [PATCH 10/10] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2fc10a2c86..2996aabdbc 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,7 @@ 2. Запускаем программу: redis-cli 3. создаем три ключа с неограниченным сроком жизни 4. ПРоверяем созданные ключи -5. `Заполните здесь этапы выполнения, если требуется ....` + ![image](https://github.com/Wernigerode23/-https-github.com-Dmitriy-gitlab-hw-/assets/153208339/141a811c-62f7-4dcb-889b-c7a6909673a5)