По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Объектно-реляционное отображение (ORM - Object Relational Mapping) – это метод, который используется для создания «моста» между объектно-ориентированными программами и, как правило, реляционными базами данных.  Иначе говоря, ORM можно рассматривать как слой, который соединяет объектно-ориентированное программирование (ООП) с реляционными базами данных. Когда вы взаимодействуете с базой данных с помощью языков ООП, то вы выполняете различные операции, такие как создание (creating), чтение (reading), обновление (updating) и удаление (deleting) (CRUD) данных. По умолчанию для выполнения этих операций в реляционной базе данных вы используете SQL. Хоть использование SQL для данной цели не считается плохим вариантом, но ORM и его инструменты все же могут помочь упростить взаимодействие между реляционными базами данных и различными языками ООП. Что такое инструмент объектно-реляционного отображения? Инструмент объектно-ориентированного отображения (ORM) – это программное обеспечение, которое было разработано для того, чтобы помогать разработчикам ООП взаимодействовать с реляционными базами данных. В связи с этим, вместо того, чтобы создавать свое собственное программное обеспечение, вы можете воспользоваться этими готовыми инструментами.  Ниже приведен фрагмент кода, написанный на SQL, с помощью которого можно извлечь информацию о конкретном пользователе из базы данных: "SELECT id, name, email, country, phone_number FROM users WHERE id = 20" Приведенный выше программный код возвращает определенную информацию о пользователе –  name (имя),  email (электронную почту),  country (страну проживания),  phone_number (номер телефона) – из таблицы под названием  users  (пользователи). Мы использовали оператор  WHERE и, тем самым, указали, что нам необходима информация о пользователе,  id (идентификационный номер) которого равен 20.  При этом, с помощью инструмента ORM можно выполнить аналогичный запрос, и здесь подход будет более простой: users.GetById(20) Итак, приведенный выше код выполняет ту же функцию, что и SQL-запрос. Имейте в виду, что каждый инструмент ORM построен по-разному, поэтому и методы у них разные, но их назначение одно и то же.  Инструменты ORM могут вызывать методы, подобные тому, который мы использовали в последнем примере. Большая часть языков ООП имеют огромное количество инструментов ORM. Вы можете выбрать тот, что вам больше понравится. Ниже приведен список некоторых популярных инструментов для разработки на Java, Python, PHP и .NET: Популярные инструменты ORM для разработки на Java: Hibernate Hibernate позволяет разработчикам создавать классы постоянного хранения согласно концепциям ООП, таким как наследование, полиморфизм, ассоциация и композиция. Этот инструмент является высокопроизводительным и масштабируемым.  Apache OpenJPA Apache OpenJPA также является инструментом Java для поддержки постоянного хранения данных. Его можно использовать в качестве самостоятельного уровня поддержки постоянного хранения данных простого объекта языка Java.  EclipseLink EclipseLink – это общедоступное технологическое решение Java для поддержки постоянного хранения данных для реляционных данных, XML-элементов и веб-служб баз данных.  jOOQ jOOQ создает Java-код на основе данных, которые хранятся в базе данных. Этот инструмент можно использовать для написания безопасных SQL-запросов.  Oracle TopLink Инструмент Oracle TopLink можно использовать для создания высокопроизводительных приложений, которые хранят данные постоянного хранения. Данные могут быть преобразованы в реляционные данные или в XML-элементы. Популярные инструменты ORM для разработки на Python: Django Django – это замечательный инструмент для быстрой разработки веб-приложений.  web2py web2py – это полномасштабная среда Python с открытым исходным кодом. Она используется для разработки быстрых, масштабируемых, безопасных веб-приложений с управлением данными.  SQLObject SQLObject – это объектно-реляционная программа управления, которая предоставляет интерфейс объекта для вашей базы данных.  SQLAlchemy SQLAlchemy предоставляет шаблоны постоянного хранения данных, которые необходимы для эффективного и высокопроизводительного доступа к базе данных.  Популярные инструменты ORM для разработки на PHP: Laravel Laravel идет совместно с объектно-реляционной программной управления, известной как Eloquent, которая упрощает взаимодействие с базами данных.  CakePHP CakePHP предусматривает два типа объектов: репозитории, которые дают вам доступ к набору данных, и сущности, которые представляют собой отдельные записи данных.  Qcodo Qcodo предоставляет различные команды для взаимодействия с базами данных, которые можно запускать в терминале.  RedBeanPHP RedBeanPHP – это средство объектно-реляционного отображения без настройки.  Популярные инструменты ORM для разработки на .NET: Entity Framework Entity Framework – это модуль сопоставления объектной базы данных с несколькими базами данных. Этот инструмент поддерживает SQL, SQLite, MySQL, PostgreSQL и Azure Cosmos DB. NHibernate NHibernate – это средство объектно-реляционного отображения с открытым исходным кодом. У него есть огромное количество подключаемых модулей и инструментов, которые упрощают и ускоряют процесс разработки. Dapper Dapper – это микро-ORM. Преимущественно его используют для сопоставления запросов с объектами. Этот инструмент не способен выполнять большее количество функций, которые бы осилил обычный инструмент ORM, например, генерация SQL-запросов, кэширование результатов, отложенная выборка данных и т.д.  Base One Foundation Component Library (BFC) BFC – это платформа для разработки сетевых приложений баз данных с помощью Visual Studio и СУБД от Microsoft, Oracle, IBM, Sybase и MySQL. А теперь давайте обсудим некоторые преимущества и недостатки использования инструментов ORM. Преимущества использования инструментов ORM Ниже приведен список некоторых преимуществ использования инструментов ORM: Ускоряет время разработки. Снижает стоимость разработки. Выполняется обработка логики, которая необходима для взаимодействия с базами данных. Улучшает безопасность. Инструменты ORM созданы для того, чтобы избежать возможности SQL-инъекций.  Если вы используете инструменты ORM, то количество кода, который вам надо написать, уменьшается в сравнении с тем, если бы вы использовали SQL. Недостатки использования инструментов ORM Изучение принципов работы инструментов ORM может занять много времени. Есть вероятность, что они не сильно помогут, если вы будете использовать слишком сложные запросы. Как правило, ORM медленнее, чем SQL. Заключение В этой статье мы с вами говорили об объектно-реляционном отображении (ORM). Этот подход используется для подключения объектно-ориентированных программ к реляционным базам данных. Мы перечислили некоторые популярные инструменты ORM, которые могут работать с различными языками программирования.  И завершили мы все это списком некоторых преимуществ и недостатков использования инструментов ORM.  
img
Существует новая тенденция для стандартов проектирования топологии сети - создание быстрой, предсказуемой, масштабируемой и эффективной коммуникационной архитектуры в среде центра обработки данных. Речь идет о топологии Leaf-Spine, о которой мы поговорим в этой статье. Почему Leaf-Spine? Учитывая повышенный фокус на массовые передачи данных и мгновенные перемещения данных в сети, стареющие трехуровневые конструкции в центрах обработки данных заменяются так называемым дизайном Leaf-Spine. Архитектура Leaf-Spine адаптируется к постоянно меняющимся потребностям компаний в отраслях big data с развивающимися центрами обработки данных. Другая модель Традиционная трехуровневая модель была разработана для использования в общих сетях. Архитектура состоит из Core маршрутизаторов, Aggregation маршрутизаторов (иногда этот уровень называется Distribution) и Access коммутаторов. Эти устройства взаимосвязаны путями для резервирования, которые могут создавать петли в сети. Частью дизайна является протокол Spanning Tree (STP) , предотвращающий петли, однако в этом случае деактивируется все, кроме основного маршрута и резервный путь используется только тогда, когда основной маршрут испытывает перебои в работе. Введение новой модели С конфигурацией Leaf-Spine все устройства имеют точно такое же количество сегментов и имеют предсказуемую и согласованную задержку информации. Это возможно из-за новой конструкции топологии, которая имеет только два слоя: слой «Leaf» и «Spine». Слой Leaf состоит из access коммутаторов, которые подключаются к таким устройствам как сервера, фаерволы, балансировщики нагрузки и пограничные маршрутизаторы. Уровень Spine, который состоит из коммутаторов, выполняющих маршрутизацию, является основой сети, где каждый коммутатор Leaf взаимосвязан с каждым коммутатором Spine. Чтобы обеспечить предсказуемое расстояние между устройствами в этом двухуровневом дизайне, динамическая маршрутизация уровня 3 используется для соединения уровней. Она позволяет определить наилучший маршрут и настроить его с учетом изменения сети. Этот тип сети предназначен для архитектур центров обработки данных, ориентированных на сетевой трафик типа «Восток-Запад» (East-West). Такой трафик содержит данные, предназначенные для перемещения внутри самого центра обработки данных, а не наружу в другую сеть. Этот новый подход является решением внутренних ограничений Spanning Tree с возможностью использования других сетевых протоколов и методологий для достижения динамической сети. Преимущества Leaf-Spine В Leaf-Spine сеть использует маршрутизацию 3го уровня. Все маршруты сконфигурированы в активном состоянии с использованием протокола равноудаленных маршрутов Equal-Cost Multipathing (ECMP) . Это позволяет использовать все соединения одновременно, сохраняя при этом стабильность и избегая циклов в сети. При использовании традиционных протоколов коммутации уровня 2, таких как Spanning Tree в трехуровневых сетях, он должен быть настроен на всех устройствах правильно, и все допущения, которые использует протокол Spanning Tree Protocol (STP), должны быть приняты во внимание (одна из простых ошибок, когда конфигурация STP связана с неправильным назначением приоритетов устройства, что может привести к неэффективной настройке пути). Удаление STP между уровнями Access и Aggregation приводит к гораздо более стабильной среде. Другим преимуществом является простота добавления дополнительного оборудования и емкости. Когда происходит ситуация перегрузки линков, которая называется oversubscription (что означает, что генерируется больше трафика, чем может быть агрегировано на активный линк за один раз) возможность расширять пропускную способность проста - может быть добавлен дополнительный Spine коммутатор и входящие линии могут быть расширены на каждый Leaf коммутатор, что приведет к добавлению полосы пропускания между уровнями и уменьшению перегрузки. Когда емкость порта устройства становится проблемой, можно добавить новый Leaf коммутатор. Простота расширения оптимизирует процесс ИТ-отдела по масштабированию сети без изменения или прерывания работы протоколов коммутации уровня 2. Недостатки Leaf-Spine Однако этот подход имеет свои недостатки. Самый заметный из них – увеличение количества проводов в этой схеме, из-за соединения каждого Leaf и Spine устройства. А при увеличении новых коммутаторов на обоих уровнях эта проблема будет расти. Из-за этого нужно тщательно планировать физическое расположение устройств. Другим основным недостатком является использование маршрутизации уровня 3.Ее использование не дает возможность развертывать VLAN’ы в сети. В сети Leaf-Spine они локализованы на каждом коммутаторе отдельно – VLAN на Leaf сегменте недоступен другим Leaf устройствам. Это может создать проблемы мобильности гостевой виртуальной машины в центре обработки данных. Применение Leaf-Spine Веб-приложения со статичным расположением сервера получат преимущество от реализации Leaf-Spine. Использование маршрутизации уровня 3 между уровнями архитектуры не препятствует приложениям веб-масштаба, поскольку они не требуют мобильности сервера. Удаление протокола Spanning Tree Protocol приводит к более стабильной и надежной работе сети потоков трафика East-West. Также улучшена масштабируемость архитектуры. Корпоративные приложения, использующие мобильные виртуальные машины (например, vMotion), создают проблему, когда сервер нуждается в обслуживании внутри центра обработки данных, из-за маршрутизации уровня 3 и отсутствие VLAN. Чтобы обойти эту проблему, можно использовать такое решение, как Software Defined Networking (SDN) , которое создает виртуальный уровень 2 поверх сети Leaf-Spine. Это позволяет серверам беспрепятственно перемещаться внутри центра обработки данных. Другие решения В качестве альтернативы маршрутизации уровня 3 топология Leaf-and-Spine может использовать другие протоколы, такие как Transparent Interconnection of Lots of Links (TRILL) или Shortest Path Bridging (SPB) для достижения аналогичной функциональности. Это достигается за счет сокращения использования Spanning Tree и включения ECMP уровня 2, а также поддержки развертывания VLAN между Leaf коммутаторами. Итог Сети Leaf-Spine предлагают множество уникальных преимуществ по сравнению с традиционной трехуровневой моделью. Использование маршрутизации 3-го уровня с использованием ECMP улучшает общую доступную пропускную способность, используя все доступные линии. Благодаря легко адаптируемым конфигурациям и дизайну, Leaf-Spine улучшает управление масштабируемостью и контролем над перегрузкой линий. Устранение протокола Spanning Tree Protocol приводит к значительному повышению стабильности сети. Используя новые инструменты и имея способность преодолевать присущие ограничения другими решениям, такими как SDN, среды Leaf-Spine позволяют ИТ-отделам и центрам обработки данных процветать при удовлетворении всех потребностей и потребностей бизнеса.
img
Команда sudo предназначена для того, чтобы пользователи могли запускать программы с привилегиями другого пользователя, по умолчанию - рутового пользователь. В этом руководстве мы покажем вам, как создать нового пользователя с привилегиями sudo в CentOS. Вы можете использовать пользователя sudo для выполнения административных задач на вашем компьютере с CentOS без необходимости входа в систему как пользователь root. Создание пользователя Sudo Чтобы создать пользователя sudo на вашем сервере CentOS, выполните следующие действия: 1. Войдите на свой сервер Начните с входа на сервер CentOS через ssh от имени пользователя root: ssh root@server_ip_address 2. Создайте новую учетную запись пользователя Создайте новую учетную запись пользователя с помощью команды useradd: useradd username Замените username на имя пользователя, которое вы хотите создать. 3. Установите пароль пользователя Запустите команду passwd, чтобы установить пароль для нового пользователя: passwd username Вам будет предложено подтвердить пароль. Убедитесь, что вы используете надежный пароль. Для выбора устойчивого пароля воспользуйтесь нашим генератором паролей. Changing password for user username. New password: Retype new password: passwd: all authentication tokens updated successfully. 4. Добавьте нового пользователя в группу sudo По умолчанию в системах CentOS членам группового колеса предоставляется доступ sudo. Добавьте нового пользователя в группу wheel: usermod -aG wheel username Группа wheel - это специальная группа пользователей, для управления доступом к команде su или sudo. Как использовать Sudo Переключитесь на вновь созданного пользователя: su - username Чтобы использовать sudo, просто добавьте к команде префикс sudo и пробел. sudo [COMMAND] Например, для просмотра содержимого каталога /root вы должны использовать: sudo ls -l /root При первом использовании sudo из этой учетной записи вы увидите следующее баннерное сообщение и вам будет предложено ввести пароль для учетной записи пользователя. We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things: #1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility. [sudo] password for username: Итог Это все! Вы успешно создали пользователя sudo в своей системе CentOS. Теперь вы можете использовать этого пользователя для выполнения административных задач на вашем сервере. И помните: с большой силой приходит большая ответственность.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59