Какой рейтинг вас больше интересует?
|
Главная / Главные темы / Тэг «configuration»
[Перевод] Три закона конфигодинамики 2017-08-08 09:00:01
+ развернуть текст сохранённая копия
Галактика Андромеды
В статье под катом мы поговорим о том, как бороться с энтропией в конфигурационных файлах. Читать дальше →
Тэги: compose, configuration, devops, docker, factor, files, management, scala, southbridge, twelve, блог, веб-сайтов, компании, программирование, разработка
Рентабельный код 3: Немного особой контейнерной магии 2016-07-07 12:00:36
В прошлой статье я привел пример фабрики для получения реализаций IQuery, но не объяснил механизм ее ...
+ развернуть текст сохранённая копия
В прошлой статье я привел пример фабрики для получения реализаций IQuery, но не объяснил механизм ее работы
_queryFactory.GetQuery<Product>()
.Where(Product.ActiveRule)
.OrderBy(x => x.Id)
.Paged(0, 10) // получаем 10 продуктов для первой страницы
// Мы решили подключить полнотекстовый поиск и добавили ElasticSearch, не вопрос:
_queryFactory.GetQuery<Product, FullTextSpecification>()
.Where(new FullTextSpecification(«зонтик»))
.All()
// Или EF тормозит и мы решили переделать на хранимую процедуру и Dapper
_queryFactory.GetQuery<Product, DictionarySpecification, DapperQuery>()
.Where(new DictionarySpecification (someDirctionary))
.All()
В данном материале я хочу поделиться техникой регистрации необходимых компонентов сборки по соглашениям. Сейчас у меня под рукой кодовая база с другой реализацией CQRS, поэтому примеры будут отличаться. Это не принципиально: основная идея остается неизменной.
Допустим у вас есть такой интерфейс, где ListParams – спецификация, приходящая с фронтенда
public interface IListOperation<TDto>
{
ListResult<TDto> List(ListParams listParam);
}
Задача
Избавить прикладных разработчиков от необходимости написания контроллеров, проекций и сервисов.
Решение под катом
Тэги: .net, configuration, conventions, ioc/di, веб-сайтов, программирование, проектирование, разработка, рефакторинг
Самая-самая последняя статья о настройке сервера для Rails 2015-10-29 07:46:32
Были времена на Хабре, когда каждый уважающий (и не очень) себя рельсовик зачем-то выкладывал ...
+ развернуть текст сохранённая копия
Были времена на Хабре, когда каждый уважающий (и не очень) себя рельсовик зачем-то выкладывал свои рецепты настройки боевого сервера и деплоя приложения на Ruby on Rails. Таких статей было 60% от всех статей в хабе Rails, и отголоски того времени до сих пор всплывают: так, например, за август я нашёл две статьи про деплой рельс.
Надоело.
$ gem install from-scratch
$ scratchify your_app_name your.host.com
Что это за магия, читайте под катом.
Читать дальше →
Тэги: capistrano, chef, configuration, deployment, devops, management, rails, ruby, администрирование, веб-разработка, серверное
[Из песочницы] Ansible и Rails — гибкая замена Capistrano с сохранением знакомого комфорта 2015-09-07 15:09:38
Capistrano — любимый многими rails-разработчиками инструмент, с помощью которого можно быстро и ...
+ развернуть текст сохранённая копия
Capistrano — любимый многими rails-разработчиками инструмент, с помощью которого можно быстро и без заморочек автоматизировать развертывание вашего приложения. Capistrano — стандарт де-факто для системы развертывания RoR, must-know технология для любого уважающего себя рубиста, тот инструмент, которому в своё время завидовали разработчики на python и PHP.
Несмотря на комфорт, от которого не хочется отказываться, чем более сложные задачи мне приходилось решать, тем чаще Capistrano показывал себя к ним не приспособленным.
Я отметил следующие недостатки:
- Известные проблемы со скоростью. Вследствие своей универсальности, Capistrano деплоит медленно, выполняя лишние проверки и вызовы, которые вы не всегда можете контролировать.
- Последовательный деплой. Небыстрое время развертывания нужно умножить на количество целевых серверов.
- Сильная связанность с рельсами. Конфиги и зависимости Capistrano переплетаются с приложением, становясь его частью. Нельзя создать новое окружение-развертывания (например сервера для раннего выкатывания функционала) без создания нового rails-окружения. В сложных ситуациях Capistrano заставляет уходить от хорошей практики держать только development, test и production окружения.
- Плагины — палка о двух концах. Давая возможность быстро “прикрутить” развертывание той или иной зависимости приложения, плагины лишают вас контроля ситуации, заставляют действовать так, как действует разработчик плагина. О влиянии лишних “телодвижений” плагинов на скорость деплоя я написал выше.
- Сложный деплой гетерогенных приложений. Трендом последних лет в рельсах стало выделение самых тяжелых (бекграундных или сетевых) задач в отдельные сервисы, не обязательно написанные на ruby. В такой ситуации capistrano заставляет вас плодить зоопарк из разных систем развертывания для разных языков и технологий.
Многие ruby-разработчики перешли на Mina или решают свои проблемы с помощью ещё более сложных систем управления конфигурациями вроде Chef и Puppet. Все они имеют свои особенности и недостатки и в разной степени решают описанные выше проблемы. Мне же удалось их решить их с помощью Ansible, не растеряв преимуществ Capistrano, к которым я привык.
Ansible это инструмент для управления конфигурациями и в его задачи входит не только описанное в этой статье выполнение удаленных команд на серверах для развертывания и управления отдельным приложением, но и автоматизация серверного администрирования посредством хранимых серверных конфигураций (ролей на языке Ansible). А значит Ansible (как впрочем и Chef и Puppet) позволяет гораздо больше, чем Capistrano и в конечном счете они все не идут с ним ни в какое сравнение. Однако, задача этой статьи дать rails-разработчикам отправную точку для миграции и разъяснить на этом примере основы Ansible. В конце этой статьи, волшебная команда cap production deploy превратится в ansible-playbook deploy.yml -i inventory/production
Кому интересно как — прошу под кат.
Читать дальше →
Тэги: ansible, capistrano, configuration, deploy, deployment, management, passenger, rails, ruby, sidekiq, tools, веб-разработка
EditorConfig — Одни Настройки для всех Редакторов/IDE 2014-04-21 10:45:42
EditorConfig это конфигурационный файл и набор расширений, к большому количеству редакторов ...
+ развернуть текст сохранённая копия
EditorConfig это конфигурационный файл и набор расширений, к большому количеству редакторов кода и IDE (Далее просто IDE).
Его задача — создать единый формат настроек, и, раз и навсегда, решить вопросы вроде “табы или пробелы” для всех IDE и всех языков программирования. Такой файл может храниться в системе контроля версий проекта, что позволит всем его разработчикам использовать одну и ту же конфигурацию.
Файлы .editorconfig можно найти в таких проектах, как jQuery, Ruby, WordPress, и многих других.
Плагины доступны для большого количество IDE
Давайте разберемся, как это работает.
Читать дальше →
Тэги: code, configuration, editor, editorconfig, formatting, holywar, ide, idea, intellij, love, peace, веб-разработка, код, программирование, совершенный
Главная / Главные темы / Тэг «configuration»
|
Взлеты Топ 5
Падения Топ 5
|