Работа с Git

Инициализация проекта

git init

Клонирование проекта

git clone <url>

Добавление в индекс новых файлов или измененных файлов

git add *.txt
git add readme.txt

Показ состояния

git status

Читать дальше >

Vagrant

Отличный инструмент для автоматизации сборки окружения для разработки. Одной командой можно поднять виртуальную машину с установленными в нее пакетами, программами. Таким образом можно достичь однообразия окружения разработки у всех программистов. И не нужно тратить время на настройку окружения для новых программистов. 

Читать дальше >

Ubuntu 12.04 Установка Webalizer

Установка на Ubuntu 12.04 или 14.04 инструмента для анализа логов веб сервера Webalizer.

Установка Webalizer

sudo apt-get install webalizer

Первичная настройка Webalizer

sudo nano /etc/webalizer.conf

В первую очередь необходимо убедитсья в корректности следующих параметров:

LogFile определяет лог-файл, который будет анализироваться. Если он не задан тут, или в командной строке, то вводом будет считаться STDIN. Если имя лог-файла заканчиватся на '.gz', то он будет распакован на лету архиватором gzip, по мере чтения.

LogFile /var/log/apache/access.log.1

OutputDir - определеяет, куда будут складываться файлы статистики. Должен быть абсолютным, но относительные пути так же могут работать. Если этот пункт не задан, то логи будут сохранены в текущей директории.

OutputDir /var/www/webalizer

Запуск Webalizer

webalizer -q -o [директория для вывода] [анализируемый лог]

webalizer -q -o ./ test-site.net_access.log
Читать дальше >

Начало работы с DigitalOcean

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

Небольшая предыстория. Полтора года назад для небольшого проекта мне нужно было выбрать хостинг. Обычные хостинги нам не подходили и я начал искать VPS. Присматривался к украинским, знакомые админы советовали Hetzner. Довольно часто я читал статьи DigitalOcean и отзывы довольно хорошие были, поэтому решил попробовать. Взяли самый минимальный вариант: 5$ в месяц - 1 ядро, 512Мб памяти, 20Гб SSD диска. Изначально проект не должен был быть нагруженным :) В базе было 40 млн записей и весил 14 Гб, обновляться база будет крайне редко и основное чтение. Часто запрашиваемые данные собрал в отдельную таблицу, чтобы не приходилось джойнить кучу таблиц при запросе. Запустили. Через 2 недели в сутки начало посещать 100-120 тыс. Сервер уже еле тужился, но 1500 посетителей одновременно мог держать, конечно людей было наверное и больше и процент отказов при 1500 было больше. Решили перейти на 20$ в месяц. У DigitalOcean это очень удобно сделано. Даунтайм был 1-2 минуты и у нас был уже сервак с двумы процами и 2 Gb памятю, но без увеличения диска. Потому-что если увеличить диск, то потом обратно откатиться на предыдущий тариф не получится и при увеличении диска даунтайм будет больше. Такое удобство мне очень понравилось. Поэтому и в этот раз решил поднять проект на этом сервисе, а в голове оказалось уже ничего не осталось и приходится заново читать все.

Читать дальше >