RSS

Комментарии

Очень полезный и интересно подан материал, автору респект
Наконец простым и понятным языком объяснили что такое безголовая CMS, спасибо, полезно
Очень быстро и качественно, на данном ПО, без всяких сложностей реорганизовали свой сайт клиники
У нас как раз идёт внедрение внедрения DevSecOps. Спасибо, очень полезная статья
Как не странно но фишинг до сих пор успешно применяется и многие на него попадаются, мы очень серьезно обучаем своих сотрудников по работе с ПО и почтой. Спасибо за статью
У нас в компании внедрили много облачных технологий, в том числе и CRM систему, возник вопрос как сделать все это максимально безопасным. Спасибо автору за статью
Информация представлена доступно и легко усваивается. Понравилось!
Спасибо за превосходное руководство! Очень помогло.
Очень полезное руководство с практической информацией.
Рекомендую эту статью для более глубокого понимания темы
Полезная информация, которая пригодится в работе.
Во-первых, у каждого свой REST. Мнения о том, что такое REST, часто разнятся. Когда мы работаем с новыми проектами, новыми коллегами или специалистами, очень важно понять, что именно ваш коллега называет RESTом. Это полезно для того, чтобы на одном из этапов проектирования или разработки не оказалось, что мы половину проекта говорили о разных вещах.

Во-вторых, принципы REST мы часто применяем в жизни. Они очень полезны для осмысления. Кэширование, STATELESS и STATEFUL, клиент-серверная модель или код по требованию — это те вещи, которые аналитику полезно знать для понимания.

Третье — это то, что парадигма REST помогает нам выявить и определить важнейшие свойства архитектуры — масштабируемость, производительность и т.д.
Водопад не любят не из-за того, что не понимают, его не любят из-за того, что он плохо подходит для сложных программных систем. Причин 2:
1. В современных условиях заказчик сам не знает и не может объяснить, чего же он в итоге хочет («чтоб было круто» — это не желание, это ощущение);
2. из-за п.1 бегать вверх-вниз по ступенькам водопада можно до бесконечности, как только проект переваливает определенную сложность (у нас в команде буквально за неделю аж 3 таких проекта появилось, притом так, что мы даже пока не знаем, в каких сроки и стоимость это получится уложить)

То, что вы озвучили в конце — это не разновидность водопада, это скорее спираль
Всем привет. Недавно открыл для себя интересный факт, что товарищ Винстон Ройс (Dr. Winston D. Royce), анонсируя свой знаменитый Waterfall говорил об итеративной модели разработки.

Наверняка, все, кто хоть как-то связаны с разработкой/тестированием ПО, знают о каскадной модели и об ее особенностях:
— высокий уровень формализации процессов;
— большое количество документации;
— и конечно же, жесткая последовательность этапов жизненного цикла без возможности возврата на предыдущий этап.

Изображение не загружено

Ознакомившись с выдержкой из трудов Ройса, оказалось, что он предусматривал обратные связи между этапами на одном уровне (к примеру, дизайн-кодирование, кодирование-тестирование и т.д.).

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

К примеру, если рассмотреть параллельные работы по 2 последовательным фазам — Coding и Testing, становится очевидным, что часть программы выдается в тестирование, в то время как другая часть все еще находится на стадии разработки.
Т.е. получается, что речь действительно идет об итеративной методологии разработки ПО.

В таком случае остается вопросом, почему методология в широких кругах разработчиков и тестировщиков воспринимается ошибочно, как отображено на первом рисунке…
Нужен ли вам 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

Наш специалист свяжется с вами, обсудит оптимальную стратегию сотрудничества,
поможет сформировать бизнес требования и рассчитает стоимость услуг.

Адрес

Ижевск, ул. Воткинское шоссе, д. 170 Е, Технопарк Нобель, офис 1117

8 495 1985800
Заказать звонок

Режим работы: Пн-Пт 10:00-19:00

info@dstglobal.ru

Задать вопрос по почте

Укажите ваше имя
Укажите ваше email
Укажите ваше телефон