Pull to refresh
1
0
Алексей Савинов @dreamhost

User

Send message

Распределенные Workflow на PHP. Часть 1

Reading time8 min
Views11K

Мы занимаемся разработкой огромного количества сложного ПО для автоматизации и энтерпрайза и Workflow для нас — это большая и больная проблема. Если для вас тоже — я расскажу, как писать и оркестрировать очень сложные процессы на масштабах, и как убедиться, что они не падают. А также как делать таймеры на 30 дней внутри процессов. И самое главное, как всё это пилить на PHP.

Меня зовут Антон Титов. Я более 17 лет занимаюсь коммерческой разработкой. Являюсь соавтором Spiral Framework, RoadRunner и Cycle ORM. Основной стек: PHP и Golang. Разговор пойдет про нашу разработку Temporal PHP SDK, которая и помогает решать все вышеперечисленные сложные задачи.

Читать далее
Total votes 20: ↑18 and ↓2+24
Comments5

Неполное руководство по DevOps

Reading time28 min
Views25K

Привет! Меня зовут Кирилл Цветков. Я DevOps, инженер, линуксовый админ – именно через запятую и никак иначе. В этой статье я попробую последовательно рассказать вам что такое DevOps, и примирить два конфликтующих стереотипа, которые это слово окружают.

Читать далее
Total votes 24: ↑15 and ↓9+9
Comments18

Как научиться разработке на Python: новый видеокурс Яндекса

Reading time6 min
Views245K
Осенью прошлого года в московском офисе Яндекса прошла первая Школа бэкенд-разработки. Мы сняли занятия на видео и сегодня рады поделиться на Хабре полным видеокурсом Школы. Он позволит вам научиться промышленной разработке на Python. Авторы лекций — опытные разработчики в Яндексе. К каждому видео приложены ссылки на примеры и полезные материалы.

Для изучения курса нужно знать основы Python и понимать, как приложения развёртываются на серверах. Мы ждём, что вы умеете делать запросы к базам данных и знаете, как создаются веб‑приложения, — хотя бы на начальном уровне.
Читать дальше →
Total votes 70: ↑70 and ↓0+70
Comments41

AWS Lambda — теория, знакомство

Reading time6 min
Views47K

Краткий экскурс в AWS Lambda


Что это?


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

Зачем ее использовать?


  • Деньги. Вы платите только за то время, когда сервис работает.
  • Скорость. Сама по себе лямбда поднимается и работает очень быстро.
  • Удобство. Лямбда имеет много возможностей по интеграции с сервисами AWS.
  • Производительность. Параллельно может выполняться, в зависимости от региона максимально от 1000 до 3000 экземпляров. И при желании, этот лимит можно поднять, написав в поддержку.

У этого подхода есть и свои минусы, вы не можете управлять операционной системой на который выполняется код, не можете контролировать ЦП, память и ресурсы. Всем этим занимается AWS.

Все что вы можете, это выбрать язык, из поддерживаемых AWS Lambda.

Что могёт?


Ниже представлен краткий перечень основных функций AWS Lambda. Далее все рассмотрим по порядку.


Читать дальше →
Total votes 13: ↑11 and ↓2+9
Comments18

Шпаргалка с командами Docker

Reading time5 min
Views661K
Прим. перев.: Неделю назад Aymen El Amri, руководящий компанией eralabs и создавший обучающий курс «Безболезненный Docker», опубликовал свой Docker Cheat Sheet — шпаргалку по основным командам Docker. Git-репозиторий этого документа на GitHub уже набрал 1000+ stars и несколько сторонних контрибьюторов, что подтвердило его актуальность и пользу.



Представленные здесь команды описаны минимально (с акцентом на читаемость как есть) и включают в себя установку Docker, работу с реестрами и репозиториями, контейнерами, образами, сетью, Docker Swarm. Ниже представлен перевод шпаргалки в её состоянии на 2 сентября с дополнениями из комментариев ниже.
Читать дальше →
Total votes 46: ↑42 and ↓4+38
Comments15

VPN в каждый дом

Reading time1 min
Views189K


Всем привет! Желание сделать VPN сервер максимально простым в установке и удобным в использовании назревало уже давно. За основу я взял L2TP/IPsec, эта технология нативно поддерживается всеми устройствами и в отличии от PPTP не вызывает проблем при подключении через сотовых операторов.

tl;dr
Для установки нам потребуется машинка с Ubuntu 14.04 на борту и «белым» IP-адресом, любой VPS подойдет. Достаточно ввести эту волшебную строчку:
 curl -sS https://raw.githubusercontent.com/sockeye44/instavpn/master/instavpn.sh | sudo bash 

и через несколько минут у вас будет рабочий VPN с управлением через браузер (httр://ip-address:8080/) или консоль (instavpn -h).
Читать дальше →
Total votes 88: ↑77 and ↓11+66
Comments245

Mikrotik. Failover. Load Balancing

Reading time12 min
Views284K
Когда у меня встала необходимость разобраться, как сделать failover или load balancing, имея два и более каналов в мир, я нашел множество статей и инструкций, в которых описывались рабочие конфигурации. Но почти нигде не нашел разъяснения, как все работает, и описания отличий разных вариантов. Хочу исправить эту несправедливость и собрать простейшие варианты построения failover и load balancing конфигураций в одной статье.

Итак, у нас есть роутер, который соединяет нашу локальную сеть и два канала в интернет (основной ISP1 и резервный ISP2).

Давайте рассмотрим что же мы можем сделать:

Сразу предупрежу: несмотря на то, что в этой статье буду все описывать для mikrotik, не буду касаться темы скриптов
Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments45

Asternic CDR Reports. Прослушивание звонков в FreePBX с ограничением по доступу

Reading time5 min
Views20K

Версии ПО


FreePBX 2.11.0.41
Asternic CDR Reports 1.5.1

Введение


Задача: необходимо дать человеку возможность прослушивать записи разговоров, но строго на определённом диапазоне внутренних экстеншенов. Мы пытаемся создать нового администратора и даже прописываем ему Extension Range, надеясь таким образом дать ему ограниченный доступ к прослушиванию



Но потом, заходя под созданной учётной записью и направляясь в отчёты по звонкам, понимаем, что потерпели фиаско — CDR Reports игнорирует заданный диапазон Extension Range и выводит информацию по всем номерам.
Читать дальше →
Total votes 3: ↑3 and ↓0+3
Comments2

Реинициализация кластера баз данных PostgreSQL

Reading time4 min
Views32K

Предмет описываемой проблемы



При работе с базой данных в PostgreSQL необходимо не забывать, в какой локали (locale) был инициализирован кластер БД — так в постгре называется директория (обычно /var/lib/pgsql/data), в которой хранятся данные всех баз этой установки PostgreSQL.

Читать дальше →
Total votes 39: ↑36 and ↓3+33
Comments11

Медовый месяц менеджера: как его провести с пользой

Reading time7 min
Views59K
«Специалист подобен флюсу: полнота его одностороння». (Козьма Прутков)

Как в нашей отрасли происходит назначение на позицию менеджера? Берем в команде лучшего программиста и тут же назначаем вначале проясняем ситуацию:
— Хочешь быть менеджером?
— А чего нужно делать?
— Ну, там колбаски в MS Project двигать и получать плюс 300 баксов?
— Конечно, буду!

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

Результаты нашего недавнего исследования еще раз ткнули в эту нашу отраслевую специфику:
  • Более 50% людей считают, что их руководитель не умеет работать с людьми

Что и побудило написать эту статью.

Общий эффект от перехода в менеджеры усиливается еще тем, что наш брат-айтишник обычно вначале включает электроприбор («если я мультипоточность на Java реализую, чего — я со стиральной машиной не разберусь?»), а в случае неполадок начинает читать инструкцию. То бишь, начинает изучать науку работы с людьми, когда первые шишки не просто набиты, а поверх них набиты еще два слоя шишек.

Между тем, назначение нового человека на позицию менеджера – ситуация болезненная и крайне неустойчивая. Почему так происходит, и главное что конкретно делать, если назначили именно вас – сегодня и поговорим.
Читать дальше →
Total votes 62: ↑54 and ↓8+46
Comments38

Союзмультфильм на YouTube

Reading time1 min
Views1.5K
image

Буквально вчера обнаружил, что на YouTube появился канал «Союзмультфильм» со старыми, добрыми, советскими мультфильмами. Пока доступно только 48 видеозаписей, но их количество увеличивается с каждым днем!

http://www.youtube.com/user/Soyuzmult
Total votes 252: ↑247 and ↓5+242
Comments131

Основы фотографии: выдержка, диафрагма, ГРИП, светочувствительность

Reading time6 min
Views406K

Введение


Часто люди приобретают цифровые зеркальные камеры в погоне за качеством снимков, но при этом не имеют представления о технических моментах съемки. В основном это касается тех, кто до зеркалки держал в руках исключительно компактные фотоаппараты и пользовался автоматическими режимами (которые, к слову, весьма продвинутые в современных камерах).

В результате у кого-то возникает разочарование в камере и фотографии в целом, а другие проявляют терпение и пытаются освоить премудрости фотографии, чтобы раскрыть весь потенциал камеры с полноценным (или почти полноценным) сенсором.

Изначально я планировал написать одну статью, но по ходу дела понял, что объем получается слишком большой и решил разбить ее на несколько частей. В этой главе рассмотрю такие понятия как выдержка, диафрагма, ГРИП и светочувствительность, как эти параметры влияют на результат съемки. На очереди статья про типы и параметры объективов, работу со вспышками и советы по съемке в различных условиях.
Читать дальше →
Total votes 272: ↑232 and ↓40+192
Comments378

Ускорение загрузки Windows for fun and profit

Reading time4 min
Views804K
image Пожалуй, начну с того, что если перегружаться 15 раз в год, то любой «тюнинг» процесса загрузки отнимает больше времени, чем будет выиграно на перезагрузках за все время жизни системы. Однако, спортивный интерес берет свое, тем более, что люди интересуется процессом оптимизации быстродействия. А загрузка оказалась самым очевидным кандидатом в примеры того, как на мой взгляд должен выглядеть этот самый процесс. Сразу скажу, что грузиться будем с 5400 rpm винта, грузиться будем в «рабочую» систему: помимо недобитой вендорской крапвари там стоит еще куча всякого типа вижуал студии, антивируса, скайпа, стима, гуглапдейтера и пр…

Про то, почему отключение pagefile-а скорее вредно, чем полезно — как нибудь в другой раз, а пока…
Под катом много однообразных картинок и немножко унылого текста
Total votes 533: ↑517 and ↓16+501
Comments365

Активацию Windows 7 доломали окончательно

Reading time1 min
Views214K
Как известно, механизм активации Windows 7 был взломан ещё до официального выхода этой системы. Но старый метод требовал изменений в BIOS, что является весьма нетривиальной задачей.

Сейчас хакеры нашли вариант полного обхода механизма Windows Activation Technologies (WAT) без манипуляций с BIOS'ом и вообще без использования ключа активации.
Читать дальше →
Total votes 277: ↑237 and ↓40+197
Comments232

App Inventor теперь доступен всем

Reading time1 min
Views5.1K
В июле мы представили App Inventor для Android — эксперимент Google Labs, облегчающий людям доступ к возможностям своих Android-телефонов и создание приложений для их личного использования. Мы были в восторге (и, честно, немного ошеломлены!) возникшим интересом. Мы были ещё более рады услышать истории о том, что вы делаете с App Inventor. Самые разные люди (преподаватели и студенты, родители и дети, программисты-любители и новички в программировании) создавали Android-приложения, идеально соответствующие их потребностям.

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

Мы настолько впечатлены великолепными вещами, сделанными людьми в App Inventor, что мы хотим, чтобы как можно больше людей имело возможность делать великолепные вещи. Так что мы рады сообщить, что бета App Inventor теперь доступна в Labs любому, кто зарегистрирован в Google.

Посетите домашнюю страницу App Inventor, чтобы настроить и запустить своё первое приложение.

Total votes 44: ↑32 and ↓12+20
Comments20

Реанимация серверов Ubuntu на Hetzner или немного полезных команд

Reading time3 min
Views38K


Этот небольшой пост-шпаргалка предназначен для тех у кого внезапно в ходе неудачного эксперимента или обновления перестал пинговаться сервер, отвалился ssh и прочее. Проще говоря он о восстановлении сервера после обновлений, взломов и тому подобного. По моим ощущениям последнее бывает гораздо реже.
Так что кому интересна эта тема прошу под кат.
Total votes 45: ↑41 and ↓4+37
Comments13

Установка и конфигурирование Windows Server 2012 R2 Essentials

Reading time6 min
Views288K
Всем добрый день. Хотелось бы рассказать о установке и конфигурировании Windows Server 2012 R2 Essentials. Эта статья не является призывом к повсеместной установке Windows или пропагандой продуктов Microsoft. Хотелось бы просто рассказать об интересном продукте и возможно кого-то данный продукт заинтересует и пригодится в работе. Статью я старался писать для неподготовленного читателя, поэтому минимум терминологии и максимум обобщения некоторых понятий.

Немножко о редакции Essentials

Windows Server 2012 R2 Essentials – это одна из редакция серверной операционной системы от компании Microsoft. Однако имеет множество отличий от редакций Standard и Datacenter. Что же умеет Essentials:
  1. Авторизация и аутентификация пользователей вашей сети (домен контроллер службы каталогов Active Directory)
  2. Файловое хранилище (роль файлового сервера)
  3. Удаленный доступ к корпоративной сети (VPN и DirectAccess сервер)
  4. Удаленный доступ к файловому хранилищу через Web-интерфейс (настроенный для этого IIS)
  5. Удаленный доступ к рабочем столам клиентских машин (шлюз удаленных рабочих столов)
  6. Резервное копирование клиентских машин (windows backup)
  7. Резервное копирование самого сервера (windows backup)
  8. Интеграция с облачными технологиями Microsoft (Office 365, Azure backup и т.д.)
  9. Консоль единой настройки Essentials, которая позволит настроить возможности описанные выше даже не подготовленному системному администратору.

Если обобщить, то редакция Essentials имеет большинство ролей Windows Server. Некоторые из этих ролей настроены, некоторые доступны в полном объеме, некоторые как например Hyper-V с серьезными ограничениями. Компенсацией за эти все ограничения является более низкая цена, включенных 25 клиентских лицензий, централизованная и простая настройка. Хочу так же отметить, что процесс лицензирования серьезно отличается. Вы можете использовать эту редакцию только для организаций, где число пользователей не превышает 25. Но повторюсь вам не нужно приобретать какие-либо клиентские лицензии.
Таким образом Essentials очень хорошо подходит для малых организаций, которые бы хотели пользоваться большинством современных решений для обеспечения безопасности корпоративной сети, хранения документов, удаленного доступа, возможно, почтовые системы. Для тех организаций, которые не хотели бы тратить много денег как на саму ИТ инфраструктуру, так и на работу высококвалифицированных системных администраторов.

Установка и первоначальная настройка

Установка данной ОС вполне стандартная процедура. Если вы хоть раз устанавливали Windows Vista /7/8/8.1, то вы без проблем установите и Essentials. Однако, если вы не устанавливали ни вышеперечисленных ОС ни любую из последних версий серверных ОС, то я рекомендую или довериться профессионалу или как минимум студенту второкурснику.
Единственное, что я бы рекомендовал в момент установки, если у вас один жёсткий диск, разбить его на два раздела. Т.е. сделать так чтобы после установки в системе был второй уже отформатированный жесткий диск. Безусловно это только рекомендация, вы сможете подготовить второй диск в последующем, однако придется переносить некоторые папки.
После первого входа в свежеустановленную ОС запустится мастер «Настройка Windows Server Essentials», который поможет произвести первоначальную настройку.

Читать дальше →
Total votes 12: ↑7 and ↓5+2
Comments2

Как устроен Forex и нужен ли он

Reading time8 min
Views369K
Когда речь заходит о фондовом рынке и торговле на бирже, первое, что приходит на ум многим людям – это форекс. Действительно, реклама этого вида инвестиций (хотя таковыми операции на этом рынке можно назвать с натяжкой) проникла во многие сферы нашей жизни – успешные трейдеры, которые зарабатывают тысячи долларов параллельно с основной работой или лежа на пляже, смотрят на нас и с плакатов в вагонах метро, и с баннеров в Сети. Между тем, здесь все далеко не так просто.

image
Читать дальше →
Total votes 236: ↑211 and ↓25+186
Comments277

Скрипт проверки наличия свободных дат в посольстве

Reading time7 min
Views75K
Предисловие:

В Беларуси стоит острая проблема с получением виз в Еврозону (т.е. Шенген). Все из-за того, что Польское посольство предоставляет так называемые мульти-визы за покупками (т.е. многократные). Регистрация производится на сайте посольства онлайн. Но вся проблема состоит в том, что свободных дат не словить. Единственный вариант — круглосуточно чекать страницу, и если появится дата — быстро «ловить» ее и заканчивать регистрацию. Т.к. свободного времени для круглосуточного чека нет, было принято решение об автоматизации данного процесса.
Сразу оговорюсь, что существуют различные скрипты, которые вылавливают свободные даты и за которые люди получают деньги. Мой скрипт не претендует на их место по быстроте, качеству и т.д. Данный скрипт был сделан только для себя, никакой коммерческой и иной выгоды я не преследовал.
Читать дальше →
Total votes 23: ↑19 and ↓4+15
Comments22

Так как же удалить миллионы файлов из одной папки?

Reading time5 min
Views146K

Феерическая расстановка точек над i в вопросе удаления файлов из переполненной директории.

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

Для тех, кто не в курсе проблемы, краткое описание: если вы случайно создали в одной директории огромное количество файлов без иерархии — т.е. от 5 млн файлов, лежащих в одной единственной плоской директории, то быстро удалить их не получится. Кроме того, не все утилиты в linux могут это сделать в принципе — либо будут сильно нагружать процессор/HDD, либо займут очень много памяти.

Так что я выделил время, организовал тестовый полигон и попробовал различные средства, как предложенные в комментариях, так и найденные в различных статьях и свои собственные.
Читать дальше →
Total votes 155: ↑145 and ↓10+135
Comments103
1

Information

Rating
Does not participate
Location
Витебск, Витебская обл., Беларусь
Date of birth
Registered
Activity