Pull to refresh
2
0
Vit228 @Vit228

User

Send message

Поняв Docker

Reading time14 min
Views222K

Если вы еще никогда не поддерживали чужие приложения, или пусть даже свои, но таких размеров, что уже не помещаются в одной голове, то прошу вас расслабиться, откинуться на спинку кресла и воспринимать прочитанное как поучительную сказку с надуманными проблемами, забавным сюжетом и очевидным счастливым концом. В противном случае, если реальный боевой опыт у вас имеется, добро пожаловать в ад, но с IDDQD и IDKFA.


К вашему сведению! В этой статье мы рассматриваем само явление docker-контейнеров, а не составляем список микросервисов, которые гнездятся внутри. Этим мы займемся в следующей серии, во имя справедливости!


UPDATE: пришлось заменить «докер» на «docker», иначе статья не ищется. Заранее прошу прощения за все «docker'ы» в тексте. Селяви.


Что мы имеем сегодня


  • Зоопарк дубовых VPS-хостингов.
  • Дорогие IaaS и PaaS с гарантированным vendor lock in.
  • Уникальные сервера-снежинки.
  • Ворох устаревших зависимостей на неподдерживаемой операционке.
  • Скрытые связи частей приложения.
  • Незаменимый админ полубог на скейтборде.
  • Радуга окружений: development, testing, integration, staging, production.
  • Генерация конфигов для системы управления конфигами.
  • Feature flagging.
docker run docker
Total votes 92: ↑83 and ↓9+74
Comments245

Вышел Zabbix 3.0

Reading time7 min
Views108K
Долгожданная версия открытой системы мониторинга Zabbix обещает нам целый ворох новых возможностей, вставая на путь визуального обновления.
Сегодня хочу поделиться с вами тем, что принес релиз, и чем можно начать пользоваться уже сегодня, скачав новую версию с сайта. Мы также будем рады пригласить всех желающих на Zabbix Meetup в Москве, подробности о котором вы найдете в конце статьи.


Читать дальше →
Total votes 52: ↑52 and ↓0+52
Comments85

Api-platform

Reading time3 min
Views24K
image
С приближением Web 3.0 все активнее начинают использоваться подходы API first и Linked Data (или что-то вроде Sematic Web). В связи с этим читателям предлагается познакомиться с фреймворком для удобного создания API на базе схем собранных на schema.org с генерацией ответов в виде JSON-LD,

Это укороченная версия туториала Api-platform

Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments3

Асинхронное выполнение PHP скрипта на подпроцессах

Reading time5 min
Views24K


Добрый день, уважаемые хабровчане.

Сегодня я хотел бы поговорить о таких нетривиальных вещах, как асинхронные (параллельные) расчеты в языке PHP.
Сам по себе PHP — это скриптовый язык, который никогда и не претендовал на многопоточность. Но чем дальше в лес, тем более серьезные задачи стоят перед разработчиками, и тем больше приходится «извращаться» с пыхом, потому что мигрировать на более приспособленный под эти задачи язык программирования многие компании попросту боятся и не хотят. Следовательно, приходится работать с тем, что дают.
Подробности под катом…
Читать дальше →
Total votes 26: ↑16 and ↓10+6
Comments24

Американский акселератор 500 Startups выходит на российский рынок

Reading time2 min
Views7.9K
Американский венчурный фонд и акселератор 500 Startups всерьез заинтересовался российскими проектами. Представителем фонда в РФ станет Диана Молдавская, бывший топ-менеджер Zeptolab. Там она отвечала за развитие бизнеса, продажи и международную экспансию. Zeptolab – разработчик одной из самых популярных в мире игр Cut the Rope, набравшей более 600 миллионов установок, около 70 миллионов ежемесячных активных пользователей. До Zeptolab Молдавская руководила онлайн-классифайдом OLX в России и СНГ, работала с международными партнерами «Яндекса» и крупными рекламодателями в штаб-квартире Google.

Она займется поиском интернет-сервисов B2C и мобильных приложений на ранней стадии развития (seed-раунд и A-раунды), сервисов on demand, а также обучающих и игровых приложений. Для фонда интерес представляют проекты, прошедшие путь от идеи к реализации и получившие первую аудиторию.
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments2

Заказчики из-за границы: как сделать всё легально

Reading time5 min
Views80K


Из-за падающего курса рубля многие фрилансеры уже давно работают на зарубежных клиентов. Среди них не все желают сотрудничать с обычными физлицами: крупные заказчики требуют оформлять контракт и оплачивать работы в иностранной валюте. Чтобы охватить новый рынок, придётся зарегистрироваться как предприниматель и соблюдать серьезное валютное законодательство. Обо всех этих правилах мы постарались рассказать понятными словами.
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments15

Upgrade до Middle PHP-разработчика за 3 месяца

Reading time2 min
Views193K

В очередной раз на меня свалилась задача найти хорошего PHP-программиста.
По результатам прозвона потенциальных кандидатов, 90% тех, кто мнит себя Middle, на самом деле Junior и годы опыта не спасают, потому что клепают однотипный код в пределах заданий, посланных свыше.
Прописал минимальный план желающим сделать рывок и перейти на следующий уровень без отрыва от производства.


Читать дальше →
Total votes 94: ↑55 and ↓39+16
Comments190

Неочевидные проблемы с быстродействием в Doctrine, связанные с гидрацией объектов

Reading time2 min
Views10K
Недавно я реализовал функции API в проекте с бэк-эндом Symfony2, использущем Doctrine в качестве ORM.

И, как это иногда бывает, скороость отрабатывания не вполне меня устроила. На несложный запрос ответ генерировался аж 7,2 сек.



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

Читать дальше →
Total votes 24: ↑24 and ↓0+24
Comments11

50+ лучших дополнений к Bootstrap

Reading time5 min
Views202K


Благодаря популярности CSS фреймворка Bootstrap, для него разработали массу различных дополнений. Даже сейчас вы можете использовать Bootstrap практически для любой задачи при разработке и оформлении вебсайта.

Для статьи я подобрал наиболее полезные дополнения «на все случаи жизни».
Читать дальше →
Total votes 123: ↑111 and ↓12+99
Comments25

Не Таиландом единым или Как фрилансеру за три часа поменять место обитания без проблем с визами

Reading time10 min
Views51K
С падением курса рубля жизнь фрилансера-путешественника сильно осложнилась. Однако если все же заработок позволяет, а европейского гостеприимства, как и солнца, ох как не хватает в России – добро пожаловать в восемь стран, где фрилансер найдет покой и красивую картинку позади монитора без проблем и волнений с оформлением виз.


Маршруты кочевников за полторы тысячи лет не поменялись. Но нравы стали помягче
Читать дальше →
Total votes 69: ↑64 and ↓5+59
Comments126

Проектирование Web API в 7 шагов

Reading time14 min
Views74K
7steps Разработка веб API это нечто большее чем просто URL, HTTP статус-коды, заголовки и содержимое запроса. Процесс проектирования – то, как будет выглядеть и восприниматься ваш API – очень важен и является хорошей инвестицией в успех вашего дела. Эта статья кратко описывает методологию для проектирования API с опорой на преимущества веба и протокола HTTP, в частности. Но не стоит думать, что это применимо только для HTTP. Если по какой-то причине вам необходимо реализовать работу ваших сервисов используя WebSockets, XMPP, MQTT и так далее – применяя большую часть всех рекомендаций вы получите практически тот же API, который будет хорошо работать. К тому же полученный API позволит легче разработать и поддерживать работу поверх нескольких протоколов.

Хороший дизайн затрагивает URL, статус-коды, заголовки и содержимое запроса


Обычно руководства по проектированию Web API фокусируются на общих концепциях: как проектировать URL, как правильно использовать HTTP статус-коды, методы, что передавать в заголовках и как спроектировать дизайн содержимого, которое представлено сериализованными данными или графом объектов. Это всё очень важные детали реализации, но не настолько в смысле общего проектирования API. Проектирование API – это то, как сама суть сервиса будет описана и представлена, то что вносит значительный вклад в успех и удобность использования Web API.

Хороший процесс проектирования или методология предоставляют набор согласованных и воспроизводимых шагов для создания компонентов сервисов, которые будут доступны в виде Web API. Это значит, что такая прозрачная методология может быть использована разработчиками, дизайнерами и архитекторами для координации своих действий по реализации ПО. Использованная методология так же может уточнятся со временем по мере того, как улучшается и автоматизируется процесс без ущерба для деталей методологии. На самом деле, детали реализации могут меняться (например, платформа, ОС, фреймворки и стиль UI) независимо от процесса проектировки, когда эти две активности полностью разделены и задокументированы.
Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments8

Работаете дома? 6 способов поддержания сосредоточенности и продуктивности

Reading time3 min
Views13K
image

Работа из дома может потребовать серьёзной адаптации в привычках. Может возникнуть ощущение круглосуточного труда – и так каждый день. При таком режиме грань между работой и личной жизнью стирается. В этой статье Emily Cassel, расскажет, как при работе из дома не потерять вдохновение, сосредоточенность и продуктивность.
Читать дальше →
Total votes 13: ↑11 and ↓2+9
Comments4

Zend Certification. Не так страшен черт

Reading time3 min
Views24K
Хотелось бы поделиться с уважаемым сообществом своим опытом получения заветного Zend сертификата.

Ни для кого не секрет, что к многочисленным сертификациям, и к ZCPE (Zend Certified PHP Engineer) в частности, все относятся по-разному: кто-то коллекционирует их и развешивает на стенках для самолюбования, кто-то считает пустой тратой времени и денег.
Читать дальше →
Total votes 16: ↑14 and ↓2+12
Comments5

Простой разбор URL с помощью изоморфного Javascript

Reading time4 min
Views66K
Во многих веб-приложениях требуется разбор URL, такой как извлечение доменного имени, имплиментация REST API или поиск пути к файлам изображений. Типичная структура URL показана на рисунке ниже:


Читать дальше →
Total votes 29: ↑20 and ↓9+11
Comments30

Настройка TeamCity для новичков

Reading time9 min
Views159K
Эта статья в первую очередь пригодится тем, кто использует тот же стек технологий, что и наша команда, а именно: ASP.NET, C#, NUnit, Selenium 2, git, MSBuild. Будут рассмотрены такие задачи, как интеграция с git, сборка C#-проектов, NUnit-тесты (как модульные, так и тесты UI), а также деплой на сервер. Впрочем, наверняка найдётся интересное и для других пользователей, кроме разве что съевших на этом вопросе собаку. Но они опять же смогут обратить внимание на ошибки в статье или что-то посоветовать: например, как оптимизировать фазу деплоя.
Читать дальше →
Total votes 39: ↑35 and ↓4+31
Comments12

Одностраничный магазин на Phalcon PHP + AngularJS. Работа над ошибками

Reading time9 min
Views39K
image

Введение

Всем привет! Не так давно я написал публикацию «Одностраничный магазин с корзиной на Phalcon + AngularJS + Zurb Foundation», которая имела неоднозначный эффект мягко говоря. А точнее получила много отрицательных комментариев, какие-то были объективные и конструктивные, какие-то нет, и они меня заставили задуматься, почему так произошло, ведь я хотел сделать полезный мануал, который пригодиться мне и другим, начинающим писать на AngularJS.

Исповедь

Да, мануал был полезен для меня, для меня старого, того, кому в 2009 году отказали в работе в местной веб-студии, и он по сей день ни разу ни работал в команде, ни разу не работал на наёмной работе, а полагался только на себя, и главным критерием эффективности реализации проектов был один — главное, что работает. Но это я — старый, после написания той статьи, и множества комментариев, я впервые решил попробовать сделать всё по правилам хорошего тона, хотя бы ради интереса.
Что из этого вышло?
Total votes 51: ↑37 and ↓14+23
Comments55

jQuery для мобильных устройств, все за и против

Reading time7 min
Views28K
image

Это довольно вольный перевод статьи, которая попалась мне на просторах интернета. Её автор — TJ VanToll. Он уже много лет занимает веб-разработкой и, в частности, оптимизацией сайтов для большей производительности на мобильных телефонах. Под катом рассмотрены несколько способов оптимизации, а так же приведены результаты тестирования на различных устройствах.
Читать дальше →
Total votes 32: ↑26 and ↓6+20
Comments20

Breeze.js + Entity Framework + Angular.js = удобная работа с сущностями базы данных прямо из браузера

Reading time16 min
Views20K
    

Некоторое время назад на просторах сети столкнулся с интересной библиотекой Breeze.js. Первая мысль, которая пришла на ум при взгляде на неё: «Да это же как Entity Framework для браузера». В поисках информации и отзывов других пользователей, конечно, первым делом поискал статью на Хабре, но не нашёл, поэтому и решил написать, в надежде, что кому-нибудь это тоже будет полезным. Статья написана в виде tutorial по созданию проекта на основе Breeze.js, Angular.js, ASP.NET Web API и Entity Framework.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments13

DOMPDF – экспорт данных из PHP в PDF

Reading time7 min
Views57K
С помощью библиотеки DOMPDF можно создавать PDF файлы из HTML кода. Нужно только сверстать некий HTML шаблон и передать его DOMPDF и уже на выходе получить сгенерированный PDF файл. Но не надо забывать и то, что эта библиотека не движок для обработки веб-страниц, а значит и шаблоны должны быть сверстаны с использованием самых базовых средств: HTML тегов и CSS стилей. Хотя разработчики заявляют, что их библиотека поддерживает стандарты CSS 2.1 и даже некоторые свойства CSS 3. С полным их перечнем можно ознакомиться здесь. Есть, кстати, один минус – она является довольно “прожорливой” к оперативной памяти. Поэтому возможно придется задуматься об аренде виртуального выделенного сервера. Но это зависит от содержания и объема планируемых PDF документов. С другой стороны она вам может помочь сэкономить много времени на разработку различных отчетов в формате PDF.
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments23

Обработка и оформление отчетов в Excel на PHP

Reading time16 min
Views252K

Не редко при разработке некоего проекта, возникает необходимость в формировании отчетной статистики. Если проект разрабатывается на Delphi, C# или к примеру, на С++ и под Windows, то тут проблем нет. Всего лишь необходимо воспользоваться COM объектом. Но дела обстоят иначе, если необходимо сформировать отчет в формате excel на PHP. И чтобы это творение функционировало на UNIX-подобных системах. Но, к счастью, не так все плохо. И библиотек для этого хватает. Я свой выбор остановил на PHPExcel. Я уже пару лет работаю с этой библиотекой, и остаюсь доволен. Поскольку она является кроссплатформенной, то не возникает проблем с переносимостью.


PHPExcel позволяет производить импорт и экспорт данных в excel. Применять различные стили оформления к отчетам. В общем, все на высоте. Даже есть возможность работы с формулами. Только необходимо учитывать, что вся работа (чтение и запись) должна вестись в кодировке utf-8.

Читать дальше →
Total votes 40: ↑33 and ↓7+26
Comments28
1
23 ...

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity