По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Model-View-Controller - популярный шаблон программирования, где логика приложения делится на три различных компонента. В этой статье расскажем о роли компонентов архитектуры MVC, начнем с короткой истории, а далее покажем, как её можно использовать в приложении. История паттерна Model View Controller Модель MVC была впервые представлена в 1979 году учёным Трюгве Миккьелем Хейердалом Реенскаугом. Он хотел придумать решение, как разбить сложное пользовательское приложение на более мелкие управляемые компоненты. Шаблон MVC был впервые использован в языке программирования Small Talk. Изначально шаблоне хотели назвать «Model-View-Editor», но затем оно было изменено на «Model-View-Controller». В 1980-х и начале 90-х годов шаблон MVC использовался главным образом в настольных приложениях. Но к концу 1990-х годов она стала довольно популярной в разработке веб-приложений. В современных веб-приложениях шаблон MVC является популярным архитектурным дизайном для организации кода. Ниже приведен список нескольких популярных веб-фреймворков, использующих шаблон MVC: Ruby on Rails ASP.NET MVC Laravel Angular Какие три компонента включает в себя MVC? Шаблон программирования MVC состоит их трёх следующих компонентов: Model – отвечает за логику данных, лежащую в основе приложения View – это видимая часть приложения, то с чем взаимодействует пользователь Controller – работает как мозг приложения и обеспечивает связь между моделью и видом Как шаблон MVC работает в веб-приложении? Чтобы лучше понять, как работает шаблон MVC, лучше всего показать его в демонстрационном приложении. Это приложение стека MERN (MongoDB, Express, React, Node) своего рода помощник менеджера офиса и отображает таблицу недавно нанятых тренеров средней школы. Он также показывает, какие тренеры не сдали тесты на туберкулез, не прошли вакцинацию от Covid, не заполнили резюме и не прошли проверку. Менеджер может отправлять напоминания по электронной почте тем тренерам, у которых отсутствуют документы. Компонент Model Модель отвечает за логику данных нашего приложения. Мы используем MongoDB для базы данных тренеров. Для начала определяем свойства, которые будут применены к каждому тренеру в базе данных. У каждого тренера есть свойства name, email, program, application, backgroundCheck, tbTest и covidTest. const coachSchema = new Schema({ name: { type: String, trim: true, maxLength: 32, required: true }, email: { type: String, trim: true, maxLength: 32, required: true, unique: true }, program: { type: String, trim: true, maxLength: 32, required: true }, application: { type: Boolean, required: true }, backgroundCheck: { type: Boolean, required: true }, tbTest: { type: Boolean, required: true }, covidTest: { type: Boolean, required: true } }, { timestamps: true }) type: Boolean представляет значение true или false для свойств приложения, backgroundCheck, tbTest и covidTest. Если у тренера одно из этих четырех свойств, помечены как false, это означает, что они не завершили процесс найма. Создаем семь записей для нашей базы данных тренеров, и эта информация хранится в MongoDB Atlas. Ниже приведен пример одной из записей базы данных. Компонент "контроллер"" будет взаимодействовать с базой данных и получать необходимую информацию для отправки компоненту представление. Компонент View Компонент View (вид, представление или вью) отвечает за все визуальные аспекты приложения. Для отображения данных пользователю мы использовали React. При первой загрузке приложения на экране отображается приветственное сообщение. При нажатии кнопки «View Dashboard» происходит переход к таблице тренеров и списку отсутствующих документов. Компонент Вид не взаимодействует напрямую с базой данных, поскольку это делает наш контроллер. Контроллер предоставляет эту информацию компоненту представление, чтобы ее можно было отобразить на странице. Вот как выглядит код, когда представление выполняет вызов выборки (fetch) для получения данных от контроллера: await fetch('https://mvc-project-backend.herokuapp.com/coaches') Затем мы используем метод map(), чтобы пройтись по списку тренеров и отобразить их имена, адреса электронной почты и программу в виде таблицы. coachData.map(data => ( <tr key={data._id}> <td>{data.name}</td> <td>{data.email}</td> <td>{data.program}</td> </tr> )) Для отображения раздела отсутствующих документов мы отправляем запрос к бэкнэду и получием список тренеров, которые не заполнили анкету, не сдали тесты на туберкулез, не привиты от Covid и не прошли проверки. Для отображения имен для каждой категории снова используется метод map(). Если нажать кнопку «Send reminder email», эта информация будет отправлена React-ом на бэкэнд. Контролер отвечает за отправку сообщения электронной почты и обмен информацией с компонентом представление о том, отправилось ли сообщение. На основе информации, которую он получает от контроллера, во View отображается сообщение об успехе или сообщение об отказе. Компонент Controller Контроллер взаимодействует с компонентами «Модель» и «Представление» и выполняет все логические операции для нашего приложения. Этот раздел кода был построен в Node.JS и Express. Контролер получает полный список тренеров из «Модели» и отправит эту информацию в «Представление». Контролер также отвечает за фильтрацию через «Модель» и предоставление списка тренеров, которые не сдали необходимые документы. Все эти данные отправляются в «Представление», чтобы их можно было отобразить пользователю. Что касается функциональности электронной почты, то «Контролер» перед отправкой проверяет валидность адреса электронной почты. Для отправки электронных писем использована Nodemailer: transporter.sendMail(mailOptions, (err) => { if (err) { console.log(`Applications: There was an error sending the message: ${err}`) res.json({ status: 'Email failure' }) } else { console.log(`Applications Success: Email was sent`) res.json({ status: "Email sent" }); } }) Если сообщение электронной почты успешно отправлено, пользователь получает уведомление, и сообщение электронной почты отображается в почте демонстрационной учетной записи. Если при отправке сообщения возникает ошибка, то «Контроллер» посылает эту информацию в «Вид», чтобы пользователю отобразилось уведомление об ошибке. Заключение А в заключение повторим пройденное: Model-View-Controller - популярный шаблон программирования, используемый для разделения логики приложения на три различных компонента. Хотя шаблон MVC первоначально использовался в настольных приложениях, в конце 1990-х он стал популярным в разработке веб-приложений. Модель отвечает за логику данных, лежащую в основе приложения. Представление - это то, что пользователь видит в приложении и взаимодействует с ним. Контроллер действует как мозг приложения и взаимодействует с моделью и представлением. Веб-инфраструктуры, использующие шаблон MVC - это Ruby on Rails, ASP.NET MVC, Laravel и Angular.
img
Sudo означает SuperUser DO и используется для доступа к файлам и операциям с ограниченным доступом. По умолчанию Linux ограничивает доступ к определенным частям системы, предотвращая компрометацию конфиденциальных файлов. Команда sudo временно повышает привилегии, позволяя пользователям выполнять конфиденциальные задачи без входа в систему как пользователь root. В этом руководстве вы узнаете, как использовать команду sudo в Linux с примерами. Как использовать команду sudo Установка sudo Пакет sudo установлен в большинстве дистрибутивов Linux. Чтобы проверить есть ли у вас эта комманда введите sudo. Вы увидите справочное сообщение или сообщение о том что комнада не найдена. Чтобы установить sudo используйте для Ubuntu и Debian: apt install sudo или для CentOS и Fedora yum install sudo sudo была разработана как способ временного предоставления пользователю административных прав. Чтобы заставить ее работать, используйте sudo перед ограниченной командой, которую можно выполнить только из под рута. Тогда система запросит ваш пароль. После его ввода система запускает команду. Синтаксис sudo [команда] Опции sudo можно использовать с дополнительными параметрами: -h - отображает синтаксис и параметры команды -V - отображает текущую версию приложения sudo -v - обновить лимит времени на sudo без запуска команды -l - перечисляет права пользователя или проверяет конкретную команду -к - завершить текущие привилегии sudo Дополнительные параметры можно найти с помощью ключа -h. Примечание. Оставаться в системе как администратор ставит под угрозу безопасность сервера. Раньше администраторы использовали su (substitute user) для временного переключения на учетную запись администратора. Однако для команды su требуется вторая учетная запись пользователя и пароль, что не всегда возможно. Когда используется команда sudo, в системные журналы заносится метка времени. Пользователь может запускать команды с повышенными привилегиями в течение короткого времени (по умолчанию 15 минут). Если пользователь, не принадлежащий к sudo группе, пытается использовать команду sudo, это регистрируется как событие безопасности. Предоставление привилегий sudo Для большинства современных дистрибутивов Linux пользователь должен входить в группу sudo, sudoers или wheel, чтобы использовать команду sudo. По умолчанию однопользовательская система предоставляет своему пользователю права sudo. Система или сервер с несколькими учетными записями пользователей могут исключать некоторых пользователей из привилегий sudo. Рассмотрим как добавить пользователя в эту группу. RedHat и CentOS В Redhat и CentOS wheel группа контролирует пользователей sudo. Добавьте пользователя в группу wheel с помощью следующей команды: usermod –aG wheel [username] Замените [username] фактическим именем пользователя. Возможно, вам потребуется войти в систему как администратор или использовать команду su. Debian и Ubuntu В Debian и Ubuntu группа sudo (sudo group) контролирует пользователей sudo. Добавьте пользователя в группу sudo с помощью следующей команды: Использование visudo и группы sudoers В некоторых современных версиях Linux пользователи добавляются в файл sudoers для предоставления привилегий. Это делается с помощью команды visudo. Используйте команду visudo для редактирования файла конфигурации: sudo visudo Это откроет /etc/sudoers для редактирования. Чтобы добавить пользователя и предоставить полные права sudo, добавьте следующую строку: [username] ALL=(ALL:ALL) ALL Сохраните и выйдите из файла. Вот разбивка предоставленных привилегий sudo: [username] [any-hostname]=([run-as-username]:[run-as-groupname]) [commands-allowed] Примечание. Проще добавить пользователя в группу sudo или wheel, чтобы предоставить права sudo. Если вам нужно отредактировать файл конфигурации, делайте это только с помощью visudo. Приложение visudo предотвращает сбои, ошибки и неправильные настройки, которые могут нарушить работу вашей операционной системы. Тайм-аут пароля sudo По умолчанию sudo просит вас ввести пароль после нескольких минут бездействия. Изменить это время ожидания по умолчанию, можно отредактировав файл sudoers с помощью visudo и измените время ожидания, добавив строку как в примере, где 10 - это время ожидания, указанное в минутах: sudo visudo Defaults timestamp_timeout=10 Если вы хотите изменить время ожидания для определенного пользователя, то добавьте имя пользователя. Defaults:user_name timestamp_timeout=10 Примеры sudo в Linux Основное использование Sudo 1. Откройте окно терминала и попробуйте выполнить следующую команду: apt-get update 2. Вы должны увидеть сообщение об ошибке. У вас нет необходимых разрешений для запуска команды. 3. Попробуйте ту же команду с sudo: sudo apt-get update 4. При появлении запроса введите свой пароль. Система выполнит команду и обновит репозитории. Выполнить команду от имени другого пользователя 1. Чтобы запустить команду от имени другого пользователя, введите в терминале следующую команду: whoami 2. Система должна отображать ваше имя пользователя. Затем выполните следующую команду: sudo –u [другое_имя_пользователя] whoami 3. Введите пароль для другого пользователя, и команда whoami запустится и отобразит другого пользователя. Переключиться на root пользователя Эта команда переключает вашу командную строку на оболочку BASH от имени пользователя root: sudo bash Ваша командная строка должна измениться на: root@hostname:/home/[имя пользователя] Значение имени хоста будет сетевым именем этой системы. Имя пользователя будет текущим именем пользователя, вошедшим в систему. Выполнить предыдущие команды с помощью sudo В командной строке Linux хранятся записи о ранее выполненных командах. Доступ к этим записям можно получить, нажав стрелку вверх. Чтобы повторить последнюю команду с повышенными привилегиями, используйте: sudo !! Это также работает со старыми командами. Укажите исторический номер следующим образом: sudo !6 В этом примере повторяется 6-я запись в истории с командой sudo. Запуск нескольких команд в одной строке Соедините несколько команд вместе, разделенных точкой с запятой: sudo ls; whoami; hostname Добавить строку текста в существующий файл Добавление строки текста в файл часто используется для добавления имени репозитория программного обеспечения к исходному файлу без открытия файла для редактирования. Используйте следующий синтаксис с командами echo, sudo и tee: echo ‘string-of-text’ | sudo tee –a [path_to_file] Например: echo "deb http://nginx.org/packages/debian `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list Заключение Теперь вы узнали про команду sudo и про то, как ее использовать.
img
Версия аппаратного обеспечения виртуальной машины (ВМ) отражает особенности и функции виртуального оборудования, поддерживаемого ВМ, которые, в свою очередь, относятся к оборудованию, доступному на физическом хосте. Создавая ВМ, Вы можете выбрать аппаратное обеспечение, установленное по умолчанию, либо более раннюю версию. Следует помнить, что, выбирая ранние версии, Вы можете ограничить функциональность ВМ. Целью данной статьи является предоставление исчерпывающего обзора на аппаратное обеспечение VMware. Начать следует с того, что VMware является бесспорным лидером на рынке облачной памяти и виртуализации, предоставляющим достаточно обширный ассортимент продуктов, способных удовлетворить нужды практически любого бизнеса. На сегодняшний день компания представила более 10 версий виртуального аппаратного обеспечения. Данная статья объясняет как и в каких случаях использовать обновление, как проверять совместимость аппаратного обеспечения и ВМ хоста. Общая информация VMware предлагает широкий ассортимент устройств, опций и ресурсов для доработки или настройки Вашей ВМ. Следует обратить Ваше внимание на явление совместимости, так как некоторые устройства аппаратного обеспечения не могут быть добавлены в определенные ВМ. И физический носитель, на котором работает ВМ, и операционная система этой ВМ предназначены для поддержки устройств или конфигураций, которые Вы намерены добавить. Кроме того, Вы можете добавить или настроить виртуальное аппаратное обеспечение только если Вы используете последнюю версию VMware. Некоторые устройства VMware освещаются ниже: CPU (центральный процессор)ВМ, работающий на основе хоста аппаратного гипервизора ESXi, может быть настроен на конфигурацию нескольких процессоров, но их количество не должно превышать количество CPU на физическом хосте.Сетевой адаптерСетевые функциональные возможности ESXi обеспечивают связь между виртуальными машинами на одном хосте, на разных хостах и с другими виртуальными и физическими машинами.Дисковод DVD/CD-ROMПри создании новой ВМ, диск vSphere устанавливается по умолчанию. Диск можно настроить для подключения к клиентским и хост-устройствам, а также к файлам ISO Datastore. Устройства DVD / CD-ROM можно добавлять, удалять или настраивать.Жесткий дискФизический носитель большого файла (или набора файлов), виртуальная функция которого заключается в хранении данных, связанных с действиями ВМ, включением ее в ОС, обработкой программных файлов и т.д.ПамятьОбъем памяти виртуального аппаратного обеспечения определяет количество памяти, доступной для приложений, использующихся ВМ. Виртуальное аппаратное обеспечение включает в себя BIOS и EFI (Расширяемый интерфейс прошивки), а его разновидность определяет количество PCI-слотов, максимальное число ядер, максимальный объем памяти и другие характеристики, типичные для физического устройства. Например, максимальный объем памяти ESXi 6.0 (аппаратного устройства версии 11) составляет 4,080 Гб, тогда как у ESXi 6.5 (аппаратное устройство версии 13) память расширена до 6,128 Гб. Продукт VMware не может подключиться к ВМ, если ее аппаратная версия выше, чем этот продукт поддерживает. К примеру, VMware Fusion 6.x (VMware гипервизор для Macintosh) может управлять ВМ на аппаратном обеспечении VMware версии 10 или ниже. Чтобы работать с ВМ на аппаратном обеспечении версии 11, нужно использовать VMware Fusion 7.x. Обновление виртуального аппаратного обеспечения сравнимо с извлечением жесткого диска и установкой его на новый компьютер. В виртуальной среде успех обновления зависит от надежности гостевой ОС. С этой точки зрения VMware рекомендует проводить обновление только если Вы нуждаетесь в дополнительной функциональности, добавленной в новую версию. Если Вам важно сохранить совместимость с более старыми хостами или стандартизировать тестирование/размещение в прежней среде – лучше продолжать работать с ранними версиями VMware обеспечения. Совместимость аппаратного обеспечения VMware и ESXi Обновление Вашей ВМ до последней версии аппаратного обеспечения – полезный опыт. Он незаменим для улучшения общей работы и повышения эффективности инфраструктуры Вашей ВМ. Аппаратное обеспечение ВМ должно быть обновлено до последней версии ESXi, установленной на нее. Заметка: VMware ESXi - это гипервизор корпоративного уровня, предназначенный для создания, запуска и обслуживания виртуальных машин. Он предназначен для установки на «голое железо», что означает, что он не зависит от операционной системы, что обеспечивает более высокую безопасность и надежность. Для более наглядного примера совместимости ознакомьтесь с таблицей ниже: Версия ESXiВерсия аппаратного обеспечения VMwareESXi 6.714ESXi 6.513ESXi 6.011 Если Вы создаете новую ВМ или обновляете старую, обратите внимание на совместимость характеристик. Следует внимательно отобрать версию хоста ESXi, которая Вам подойдет. Точнее, параметры совместимости определяют функции виртуального оборудования, доступные для ВМ. Каждый уровень совместимости виртуального оборудования поддерживает несколько версий vSphere. Например, ВМ, работающая на ESXi 5.5, также может работать на ESXi 6.0 и ESXi 6.5. Хорошие новости для тех, кто планирует обновление ВМ, заключаются в том, что этот процесс не требует ожидания сервера vCenter (утилита централизованного управления VMware) или хостов ESXi. Ваша ВМ недоступна только во время выключения и до перезагрузки гостевой ОС. Прежде чем приступать к обновлению аппаратного обеспечения VMware Как и говорилось ранее, обновление ВМ до последней версии аппаратного обеспечения может быть непростым процессом. Это значит, что данный процесс требует точного планирования и подготовки. Убедитесь, что выполнили все приведенные ниже шаги, перед началом обновления: Создайте резервную копию или реплику ВМ во избежание потенциальных проблем, которые может вызвать обновление. Ниже Вы можете прочесть исчерпывающее объяснение тому, как NAKIVO Backup & Replication может помочь Вам в этом. Убедитесь, что обновление проходит при помощи VMware Tools. Для справки: VMware Tools - это набор сервисов и модулей, которые упрощают управление гостевой операционной системой и улучшают взаимодействие с ней пользователей. Установленные в операционной системе ВМ, они обеспечивают более высокую производительность ВМ и множество полезных функций продуктов VMware. Имейте ввиду, что ВМ работающие на основе Windows, могут утратить сетевые настройки пока VMware Tools проводят обновление. ВМ должна быть готовой к работе и доступной. Убедитесь, что ее виртуальные диски, CD-ROM, ISO-образы и т. д. действительны и доступны. Определите версию аппаратного обеспечения ВМ. Для этого выберите ВМ в реестре клиента vSphere. После этого выполните одно из следующих действий: Перейдите на вкладку «Информация» и просмотрите версию оборудования виртуальной машины в разделе «Общая»; Щелкните правой кнопкой мыши и выберите «Изменить настройки». Узнайте версию аппаратного обеспечения в правом верхнем углу диалогового окна; Выберите центр обработки данных, хост или кластер и перейдите на вкладку ВМ. Найдите версию оборудования в столбце Версия ВМ. Здесь вы также можете увидеть информацию об аппаратной версии нескольких ВМ. С# клиент не поддерживает версии выше 9. Защита данных Для этого можно использовать NAKIVO Backup & Replication. Набор функций обеспечивает мониторинг инфраструктуры, автоматизацию действий по защите данных и координацию аварийного восстановления. При помощи наших ключевых функций Вы можете создавать резервные копии и реплики своих рабочих данных на основе VMware. Создание резервной копии VMware Этот продукт обеспечивает средствами для резервного копирования ВМ и всех данных их приложений. Для ВМ VMware стратегия основана на CBT (Changed Block Tracking), технологии VMware, позволяющей копировать только те блоки данных, которые были изменены с момента последнего цикла резервного копирования. По сути, это отличный помощник в экономии места на диске. Для повышения надежности Вы можете хранить резервные копии на Вашей ВМ и за ее пределами – в облаках Amazon или Azure. Кроме того, Вы можете убедиться, что резервные копии Вашей ВМ являются действительными и подлежат восстановлению, получая снимки экрана с тестов на восстановление после каждого цикла резервного копирования или проверяя доступность VMware Tools. Создание реплики VMware Функциональные возможности приложения позволяют хранить идентичные копии (реплики) Ваших ВМ на хосте ESXi, который вы выбираете сами. Реплика хранится в выключенном состоянии, не потребляя никаких ресурсов, пока не станет вам нужна. Для вашего удобства доступно копирование данных непосредственно из резервных копий, что освобождает производственную среду. Кроме того, наши средства проверки позволяют Вам активировать реплику ВМ, чтобы убедиться, что она полностью функциональна. Основные функции NAKIVO Backup & Replication удовлетворяют следующие потребности: Экономия времени – установите алгоритмы автоматических задач для администрирования ВМ; Повышение скорости – ускорьте работу резервных копий за счет ускорения работы сети, одновременно уменьшая нагрузку на нее и уменьшая окна резервного копирования; Гибкость хранения – Вы можете сохранить до 30 точек восстановления для каждой реплики и до 4000 точек восстановления для каждой резервной копии; Эффективность хранения - исключите файлы «подкачки», чтобы уменьшить потребление памяти. Уменьшите размер резервной копии ВМ за счет дедупликации и сжатия блоков данных. Сокращение времени ожидания – достигайте улучшенных RTO (времени восстановления) и RPO (допустимого объема возможных потерь данных) путем мгновенного восстановления, необходимого при крушении системы. Подведение итогов Обновление Вашего виртуального аппаратного обеспечения до последних версий приносит Вам неоценимую пользу, особенно ввиду доступных ресурсов памяти, рабочих процессоров и CPU, и так далее. Тем не менее, Ваше внимание должно быть обращено к вопросу совместимости: версия аппаратного обеспечения должна быть совместима с ESXi, на котором работает Ваша ВМ.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59