RSS

Комментарии

Нужен ли вам Kubernetes? в первую очередь стоит задуматься — чтобы самостоятельно развернуть кластер Kubernetes, нужно подготовить оборудование (физические или виртуальные серверы), установить Kubernetes и затем настроить его. Настройка — самое сложное, потому что по умолчанию в Kubernetes нет всех нужных инструментов и надстроек. Для нормальной работы кластера потребуется настроить сеть и аутентификацию, сконфигурировать поды, организовать балансировку нагрузки, мониторинг, логирование и многое другое.

В общем, самостоятельное развертывание кластера — непростая задача, поэтому сначала стоит разобраться, нужна ли вам эта технология в принципе.
Kubernetes был создан Google на основе собственного опыта работы с контейнерами в производственной среде, и своим успехом он во многом обязан именно Google.

Так что же такое Kubernetes и для чего мы в принципе хотим использовать именно его, а не обычные контейнеры, например Docker.

Давайте вспомним что такое контейнеры.

Контейнеры упаковывают сервисы, составляющие приложение, и делают их переносимыми в различные вычислительные среды как для разработки и тестирования, так и для производственного использования. С помощью контейнеров легко быстро наращивать количество экземпляров приложений, чтобы соответствовать пиковому спросу. А поскольку контейнеры используют ресурсы ОС хоста, они намного легче виртуальных машин. Это означает, что контейнеры очень эффективно используют базовую серверную инфраструктуру.

Все было бы отлично, но есть одно но — container runtime API (API среды запуска контейнера) хорошо подходит для управления отдельными контейнерами, но совершенно не подходит для управления приложениями на сотне контейнеров и на большом количестве хостов.

Контейнерам надо подключаться к внешнему миру и быть управляемыми для балансировки нагрузки, распределения и планирования.

Вот для такого и нужен Kubernetes.

Kubernetes — это система с открытым исходным кодом для развертывания, масштабирования и управления контейнезированными приложениями.

Kubernetes по сути является не просто системой оркестрации. Технически оркестрация это про выполнение определенного рабочего процесса: сначала сделай A, затем B, затем C.

Kubernetes же устраняет прямую необходимость в этом. В нем есть процессы управления, что по факту независимы и компонуемы. Главная задача процессов управления перевести текущее состояние к нужному состоянию. Теперь нам неважно какой будет маршрут от А до С, что исключает централизованный контроль.
Благодаря этому система теперь более проста в использовании, мощная, надежная, а также устойчивая и расширяемая.

Контейнеры позволяют поделить чтобы приложения были поделены на более мелкие части с четким разделением задач. Уровень абстракции, предоставляемый для отдельного образа контейнера, позволяет нам понять как строятся распределенные приложения. Такой модульный подход дает возможность более быстро осуществлять разработку с помощью небольших и более целенаправленных групп, каждая из которых отвечает за определенные контейнеры. Это также позволяет нам изолировать зависимости и более широко использовать компоненты меньшего размера.

Сделать это только с помощью контейнеров не получится. А вот в Kubernetes это можно достичь с помощью Pods (подов).

Pod (под) — это группа из одного или более контейнера с общим хранилищем/сетевыми ресурсами и спецификацией как запускать контейнеры. Так же это отдельный инстанс приложения. Размещая контейнеры таким образом, Kubernetes устраняет соблазн втиснуть слишком много функций в один образ контейнера.

Концепция Service (Сервисы) в Kubernetes используется для группирования нескольких подов, которые выполняют те же функции. Сервисы легко настраиваются для таких целей как обнаружение, горизонтальное масштабирование и балансировка нагрузки.
Приветствую, коллеги!
Хотел бы добавить еще одну Российскую СУБД, которую можно отнести к классу мультимодельных — ODANT.
1. Хранилище данных реализовано в виде DOM структур (можно было бы сказать XML, но это не так, хотя для удобства пользователей эти бинарные DOM структры могут быть получены через REST API в виде XML, JSON, HTML и т.п.), поддерживаются языки запросов XQuery и XUpdate.
2. Организовано хранилище в виде древовидной иерархии, которая может распространяться на любое количество распределенных серверов (нод).
3. Ветви в иерархии являются объектными Классами, которые могут содержать экземпляры (Объекты). В этих Классах полностью реализована объектная парадигма (наследование, полиморфизм, инкапсуляция и т.д.), но не на программном, а на информационном уровне.
4. Информационные Классы, помимо описания модели (свойств) и хранения экземпляров, могут содержать встроенные (кастомные) методы и представления, которые автоматически добавляются в API сервера.
5. Типизация данных реализована на основе собственных же информационных Классов (т.е. количество типов данных равно общему количеству находящихся в сети ODANT различных Классов, на сегодня >10 000)
6. Написана на С++, поддерживает ОС Windows, Linux 1.8+ (кстати есть сертификат под Астру) и процессоры x86, MIPS, ARM.
7. Имеет встроенный объектно-рекактивный язык программирования ROCKS.js (диалект ECMAScript), работающий с единой кодовой базой как на стороне сервера, так и клиента.
8. Имеет встроенный визуальный объектно-рекативный PWA фреймворк ODAJS (работает на всех современых браузерах, и в виде PWA приложений под Windows, Android, IOS).
9. 99% — Российская (1% — Node.js, использующаяся на стороне сервера для обработки ROCKS модулей)
10. Несмотря на то, что СУБД разрабатывалась с 1998 года, она мало известна. на сегодняшний день всего около 400 внедрений, в основном сложные системы управления деятельностью в ЖКХ, медицине, энергетике, госуправлении (одно из решений получило статус ГИС), есть 2 успешных проекта полной замены SAP в одной госкорпорации.
11. С 2017 года находится реестре отечественного ПО
Для этого лучше использовать данные с синтетических тестов для производительности. А вот параметры удобства и т.д., наверное, лучше смотреть в сравнениях конкретных СУБД. Но сама идея взять несколько кейсов и сделать сравнение по типам хорошая, хотя скорее всего будут явные лидеры и много исключений, не попадающих в методологию сравнения.
Спасибо за статью, а вы встречали материал, который бы на конкретном практическом примере показывал плюсы и минусы различного типа СУБД?
Отличная система! DST Platform помогла мне справиться с самыми сложными проектами без лишних сложностей. Я не очень опытный в программировании, но благодаря этой системе я могу легко публиковать и управлять проектами. Очень удобный и интуитивно понятный интерфейс, который делает работу с системой приятной и эффективной. Большой плюс в том, что DST Platform имеет открытый исходный код, что обеспечивает дополнительную безопасность. Рекомендую всем, кто ищет надежную и удобную систему для работы с проектами любой сложности!
Отличная система! DST Platform помогла мне справиться с самыми сложными проектами без лишних сложностей. Я не очень опытный в программировании, но благодаря этой системе я могу легко публиковать и управлять проектами. Очень удобный и интуитивно понятный интерфейс, который делает работу с системой приятной и эффективной. Большой плюс в том, что DST Platform имеет открытый исходный код, что обеспечивает дополнительную безопасность. Рекомендую всем, кто ищет надежную и удобную систему для работы с проектами любой сложности!
Этот продукт — настоящее спасение для моего бизнеса! Благодаря DST Маркетплейсу я смог запустить свой проект быстро и без лишних хлопот. Уже настроенные бизнес-процессы сэкономили мне массу времени и усилий. К тому же, управленческие и клиентские сервисы продуманы до мелочей, что делает работу с платформой еще более удобной.

Не могу не отметить качественную техническую поддержку и возможность индивидуальных доработок — это действительно ценно для меня как для владельца бизнеса. DST Маркетплейс — это идеальное сочетание гибкости, универсальности и масштабируемости. Я доволен своим выбором и настоятельно рекомендую этот продукт всем, кто хочет развивать свой бизнес в онлайн пространстве!
Этот продукт — настоящее спасение для моего бизнеса! Благодаря DST Маркетплейсу я смог запустить свой проект быстро и без лишних хлопот. Уже настроенные бизнес-процессы сэкономили мне массу времени и усилий. К тому же, управленческие и клиентские сервисы продуманы до мелочей, что делает работу с платформой еще более удобной.

Не могу не отметить качественную техническую поддержку и возможность индивидуальных доработок — это действительно ценно для меня как для владельца бизнеса. DST Маркетплейс — это идеальное сочетание гибкости, универсальности и масштабируемости. Я доволен своим выбором и настоятельно рекомендую этот продукт всем, кто хочет развивать свой бизнес в онлайн пространстве!
Отличная платформа! С DST Platform мой рабочий процесс стал намного эффективнее. Теперь я могу легко обмениваться ресурсами между несколькими веб-сайтами и поддерживать одновременно множество проектов для клиентов. Система управления конфигурацией позволяет быстро разворачивать установки и обновления, что существенно упрощает мою работу. DST Platform действительно помогает сохранить согласованность работы и стабильность сайтов. Рекомендую всем веб-студиям и разработчикам, которые хотят улучшить свой процесс работы и повысить эффективность!
Отличная платформа! С DST Platform мой рабочий процесс стал намного эффективнее. Теперь я могу легко обмениваться ресурсами между несколькими веб-сайтами и поддерживать одновременно множество проектов для клиентов. Система управления конфигурацией позволяет быстро разворачивать установки и обновления, что существенно упрощает мою работу. DST Platform действительно помогает сохранить согласованность работы и стабильность сайтов. Рекомендую всем веб-студиям и разработчикам, которые хотят улучшить свой процесс работы и повысить эффективность!
Отличная платформа! С DST Platform мой рабочий процесс стал намного эффективнее. Теперь я могу легко обмениваться ресурсами между несколькими веб-сайтами и поддерживать одновременно множество проектов для клиентов. Система управления конфигурацией позволяет быстро разворачивать установки и обновления, что существенно упрощает мою работу. DST Platform действительно помогает сохранить согласованность работы и стабильность сайтов. Рекомендую всем веб-студиям и разработчикам, которые хотят улучшить свой процесс работы и повысить эффективность!
DST Platform — это настоящая находка для тех, кто хочет создать качественный и уникальный веб-сайт с минимальными затратами времени и усилий. Система управления содержимым DST Platform отличается простотой в использовании и множеством возможностей для создания разнообразных проектов.

Наша компания воспользовалась DST Platform для создания своего собственного портала, и результат нас приятно удивил. Благодаря гибкости и универсальности этой платформы, мы смогли легко настроить дизайн и функционал своего сайта, не прибегая к помощи специалистов.

Кроме того, поддержка PHP позволяет использовать различные плагины и расширения для улучшения функционала сайта. DST Platform действительно помог мне воплотить свои идеи в жизнь, и я рекомендую этот продукт всем, кто хочет создать качественный веб-сайт без лишних хлопот.
Это просто невероятно, как автоматизированное тестирование может упростить жизнь тестировщиков в нашей компании! Благодаря специальным программным решениям, мы можем быстро и эффективно проверить работоспособность приложения, не тратя массу времени на ручное тестирование. Теперь мы можем сосредоточиться на создании качественного продукта, а не на поиске ошибок. Я в восторге от возможностей, которые предоставляет автоматизированное тестирование!
Это просто невероятно, как автоматизированное тестирование может упростить жизнь тестировщиков в нашей компании! Благодаря специальным программным решениям, мы можем быстро и эффективно проверить работоспособность приложения, не тратя массу времени на ручное тестирование. Теперь мы можем сосредоточиться на создании качественного продукта, а не на поиске ошибок. Я в восторге от возможностей, которые предоставляет автоматизированное тестирование!
ИНтересно почему банки грубейшим образом нарушают законодательство, в частности о персональных данных, без согласия на передачу персональных данных третьим лицам ни один банк не откроет вам банковскую даже не кредитную, а дебетовую карту, допустим человек не против обработки персональных данных банком, внутри своего банка, но против передачи данных третьим лицам
Стандартные компоненты — это странная фраза. Если под ними подразумевается компоненты симфонии, то навряд ли они стандартные, скорей популярные. Yii с чего их должен использовать, когда у них первая ветка была писана уже давно, и наработок было воз и тележка: activerecord, request/response…
Что делает Yii2 фреймворк особенным?

Программисты должны сделать выбор, что будет лежать в основе программирования. Поэтому одно из самых больших решений, которое вы должны сделать как программист, а, может, скорее всего, решение вы будете делать, как часть команды программистов, использовать или нет фреймворк, и если да, то какой.

Что касается вопроса использования PHP фреймворк, есть так много преимуществ, чтобы поступить так, что это становится и ежу понятно.

Плюсы

Вот несколько очевидных преимуществ использования фреймворка, который:
— Использует стандартные способы решения задач, что уменьшает или устраняет запутанность кода.
— Сокращает время, затрачиваемое на рутинные задачи, такие как проверка форм и безопасность.
— Облегчает командную работу с помощью соблюдения стандартов.
— Облегчает поддержку кода с использованием общей архитектуры и методов.
— Имеет активное сообщество разработчиков, которые поддерживают фреймворк, обобщенные задачи и новые возможности.

Минусы

Существует пара недостатков использования фреймворка, которые следует отметить. Во-первых, весь код, который включает в себя фреймворк, создает нагрузку на сервер и это может стать реальной проблемой. К счастью, доступны варианты кэширование, которые позволяют снизить последствия перегрузки, и для корпоративных приложений, вы можете использовать нативный SQL, чтобы минимизировать время выполнения запроса. Поэтому проблема перегрузки сервера не должна остановить вас от использования фреймворка.

Другое дело, очевидно, когда вы работаете с фреймворком, то работаете с огромным количеством кода, который не вы писали и придётся потратить время, чтобы понять, как это все работает. Некоторые части кода могут быть довольно непонятны в зависимости от вашего уровня мастерства и опыта, поэтому не следует ожидать, что вам будет сразу все понятно. Это не произойдёт мгновенно.

Конечно же, вы знаете, что существует путь обучения, благодаря которому вы сейчас читаете эту книгу. И хотя это занимает время, чтобы разобраться с чужим кодом, что может быть мучительно больно, но куда больнее, написать собственную пользовательскую систему с нуля. Учитывая все обстоятельства, использование фреймворка для корпоративной разработки является разумным выбором.

Итак, самое простое — это понять, что использование фреймворка поможет вам разрабатывать более стройный и надежный проект, но теперь самое трудное. Вы должны решить, какой фреймворк использовать.
Почему я выбрал Yii2

Я не могу сказать какой фреймворк для вас лучший, что вам интересно и вам лично решать, но я могу немного рассказать о дороге, которая привела меня к Yii2. Это не было решением руководимым необходимостью найти легкий путь изучения PHP, это точно. В моей компании еще в 2012 году, я был в команде разработчиков, которые рассматривали различные фреймворки и должен был решить, какой из них использовать. В то время я даже не мечтал, что напишу книги об одном из них.

В любом случае, мы коллективно исследовали все, что могли найти из основных PHP-фреймворков. Я лично прочитал всю документацию и мы имели долгие инженерные дискуссии о том, что мы думали, что будет работать. Вы не представляете мое разочарование, когда я прочитал всю эту документацию и отошел от этого с чувством менее осведомленным, чем я прежде начал читать все это.

Однако наша команда программистов сделала предпочтение. Они чувствовали, что Yii 1.1.14 был лучшим выбором. Это была версия фреймворка, которая была доступна в то время, мы выбрали её. Поэтому команда приняла этот фреймворк и никогда не оглядывалась назад. Они полюбили её.
Я, с другой стороны, остался разочарованным. Так как я был только начинающим программистом, и действительно изо всех сил пытался этому научиться. Я не находил этот фреймворк очень интуитивным и понятным. Особенно после сравнения его с другими платформами, где старались все интегрировать красиво, а архитектура Yii казалась мне просто уродливой.

Я так расстроился в один прекрасный момент, что начал искать другой вариант.

Другие варианты

Я хотел найти красиво написанную документацию для нового фреймворка и запустить её мимо команды. Но всегда получал одинаковый ответ. Команда была довольна фреймворком Yii.

Они мне говорили, что может быть трудно её изучать, но она легка в использовании, как только поймете, как она работает. Поэтому я посвятил себя изучению выбранного командой фреймворка. Дело продвигалось медленно и езда была ухабистая. Я не получал удовольствия. Я прорабатывал главу 10 в книге по Yii 1.1.14, полагая, что никогда по-настоящему не смогу самостоятельно создать приложение менее чем за сто лет. Слишком много дорог, казалось, уходили в никуда.

Затем произошло чудо.

Появление Yii2

Я нашел Yii2 Альфа. Мне было любопытно увидеть, какие различия были в Yii2, по сравнению с бывшей 3 года на тот момент платформой. Так что я нырнул в неё и к моему глубокому и полному удивлению, я мгновенно получил с ней контакт. Я понимал структуры. Я мог бы написать код, который фактически работал!

Какое это было великое чувство. Я лично нашел, что Yii 2 будет наиболее интуитивно понятной и элегантной из всех PHP-фреймворков, которые я изучал. У меня столько энтузиазма, что я хочу поделиться им, с каждым программистом которого знаю, и даже тех, кого я не знаю, что побудило меня написать эту книгу.

С помощью Yii2, даже будучи новичком, я смог поднять на ноги рабочий сайт, который имел управляемую базой данных модель пользователей, с пользовательской и администраторской частью. Прямо из коробки, я получил рабочую модель пользователей, с функцией восстановления забытого пароля, которая также интегрирована с начальной загрузки для мобильного, отзывчивого дизайна, без программирования вообще.

Как это здорово! Хотя я был начинающий программист, когда изучал PHP-фреймворки, я не имел опыта работы с базами данных и это одна из областей, на мой взгляд, где Yii2 действительно блещет.
Ок, допустим вы фрилансер и вам предложили хороший вкусный и не очень трудоемкий заказ. Вы предлагаете заказчику сделать его скажем на CakePHP, но заказчик хочет чтобы он обязательно был сделан на Yii, который к слову вы тоже знаете. Вы пошлете такого заказчика? Если инструмент мне знаком, то я соглашаюсь на условия заказчика.
Скажем если бы я заказывал сайт на фрилансе, то я бы тоже не согласился на что-то экзотическое и малоизвестное (таким на текущий момент является CakePHP, который у нас не очень распространен).

Конечно когда речь идет о мега огромном проекте, тогда уже я буду настаивать на инструменте, который мне кажется больше подойдет. Но когда речь идет об относительно небольших заказах, то как вы правильно заметили «разработчикам не принципиально, работать ли с CakePHP или с Yii» и если заказчику предпочтительнее второе, то значит сделаю на нем.