Pull to refresh
9
0
Andrewus @Andrewus

Head of platform

Send message

Деплой на shared-хостинг: боль и страдания или простая рутина?

Reading time3 min
Views9.6K

Коротко для тех, кто спешит


Утилита FTP Deployment: написана на php, принимает в качестве параметра путь к конфигу и выкладывает файлы на удаленный сервер, довольно быстро и хорошо.

Долго и подробно для тех, кому интересно


Все мы любим классные и удобные методы деплоя с помощью capistrano, rsync или, на худой конец, git pull. А если надо выкладывать проекты на shared-хостинг?

Да, некоторые провайдеры предоставляют ssh и git. Но, прямо скажу, их немного.

Однажды я вдруг понял, что привык к хорошему, и ненавижу выкладывать проекты через (S)FTP: не залился какой-то файл; надо вспомнить, где лежат конфиги; вот эту папку не надо выкладывать вообще; вот тут надо проверить права. Думаю, многие этот список легко продолжат.

Читать дальше →
Total votes 14: ↑8 and ↓6+2
Comments27

Легенда о серебряной пуле или как я искал логические ошибки кэширования и получения данных

Reading time5 min
Views5.8K
Отказ от претензий: не используйте описанные ниже патчи на продакшене; пользуйтесь специально подготовленными тестовыми площадками.

* * *


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

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

Вводная


История началась с того, что меня попросили провести подробный аудит довольно популярного интернет-магазина. Всё приложение вертелось на двух балансировщиках, нескольких бэкэндах и двух серверах БД. Нагрузка — 1-4 тысячи запросов в минуту. Стек близок к классическому: PHP(-fpm), Mysql, Memcached, Sphinx, Nginx. Иногда обстоятельства складывались так, что вся система вставала колом, при этом прямой корреляции с нагрузкой не было. И даже с выкладкой нового кода (и соответствующими перезапусками демонов) — не всегда.

Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments11

ИМХО о проектах со Startup Weekend'а

Reading time8 min
Views503
Был сегодня на открытии московского Startup Weekend . Что могу сказать: удивительное количество увлеченных людей, порядка 60 презентаций. Даже по две минуты на каждую вылились в два часа.
Топик, в основном для тех, кто не был.

Наиболее, на мой взгляд, интересные идеи-проекты в порядке добавления на сайт SW
5. Поток.FM – мониторинг регионального радиоэфира
ПотокFM – аппаратно-программное решение для мониторинга.вещания всех фм-радиостанций в крупнейших городах страны.
Базовые возможности:
а) Отслеживать в автоматическом режиме расхождения в эфире одной радиостанции в каждом регионе на соответствие официальной региональной сетке. Потребители владельцы радиостанций, программные и региональные директора. А также госструктуры.
б) Осуществлять поиск звуковых шаблонов (рекламных роликов, музыкальных композиций) для анализа статистики ротаций. Потребители крупные рекламодатели, рекламные агентства, и правообладатели всех мастей.
Лирика: я предлагаю работать с радиоэфиром как с медиапространством, которое можно записать и хранить, по которому можно свободно искать, которое можно изучать и анализировать.
potok.fm

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

Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments4

Удобный Backup

Reading time1 min
Views1.8K
Как известно, в Asus Eee и других нетбуках нет сидирома, а посему а делать загрузочную флешку от Acronis'а как-то не улыбается.
Но есть два простых способа сделать образ диска.
Оба способа требуют загрузки любой Linux-системы (с флешки) и прав суперпользователя для исполнения (то бишь sudo для Ubuntu и su для всех остальных)

1. > dd if=/dev/sda1 of=/media/disk/backup.bck

2. > cat /dev/sda1 | gzip > /media/disk/backup.bck.gz

В примерах /dev/sda1 — резервируемый раздел, а /media/disk/ — флешка.
Соответственно, второй способ несколько удобнее за счет сжатия. А первый — заметно быстрее.

Восстановление: в первом случае поменять местами аргументы, а во втором — использовать команду zcat.

Идеи почерпнуты в блоге Telegamochka и комментарии Moose_kazan там же. Проверены на моем MSI Wind.
Total votes 21: ↑12 and ↓9+3
Comments10

Владельцам нетбуков посвящается: Unetbootin

Reading time1 min
Views5.4K
Программа уже упоминалась на Хабре в блоге OpenSource

Unetbootin (http://unetbootin.sourceforge.net/) позволяет создать загрузочную USB-флешку из практически любого дистрибутива Linux/BSD. Впрочем, можно создать и загрузочный жесткий диск.
Существуют версии как для Linux, так и для Windows.
Работать просто до неприличия:
Выбрали источник → Выбрали загрузочное устройство → Нажали OK.
При этом в качестве источника можно выбрать дистрибутив и версию, программа сама скачает нужное. Можно выбрать ISO, а можно указать ядро и initrd руками с нужными опциями.

Окошко:
screenshot

PS. Поддерживается даже только что вышедшая Ubuntu 8.10.
Total votes 51: ↑41 and ↓10+31
Comments49

Поиск по англоязычным журнальным статьям

Reading time1 min
Views564
Когда хочется найти оригинальный материал по какой-то сложной теме, поход на Google не всегда помогает: у серьезных статей в серьезных журналах обычно немного входящих ссылок.
Чтобы разыскать какой-то материал, рекомендую заглянуть на http://www11.tdnet.com/frames.asp, откуда можно взять заголовок статьи для последующего гугления.

В качестве примера можно привести поиск информации по поисковым системам. Фраза Search Engines обычно ведет из адекватных ресурсов лишь на Вики, все остальное — мусор.
Total votes 6: ↑3 and ↓30
Comments6

Эксперименты с функциями замены в php

Reading time1 min
Views541
Несколько месяцев назад стал меня занимать вопрос: что быстрее — eregi_replace или str_replace? Когда просто надо заменить один кусок текста другим куском.
Написал какой-то скрипт, который время считал, исправлял там одно на другое и наоборот, но получалась фигня. Все-таки на рабочей машине мерять миллисекунды странно:).

А недавно догнал, что можно же все замерять в одном скрипте и тут же посчитать.
В результате обнаружилось, что str_replace при простой замене на два порядка шустрее eregi. Охренел от результата.

UDP. Впихнул в тест preg_replace. Теперь понимаю, почему из шестой версии PHP POSIX-регулярки собираются вообще убрать.

Код скрипта:
http://drusha.msk.ru/times.php
Total votes 12: ↑2 and ↓10-8
Comments21

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity