Pull to refresh
1
0
Send message

Учим старую собаку новым трюкам или как я научился любить str.format и отказался от %

Reading time7 min
Views63K
Предлагаю вниманию читателей хабры и поклонникам python перевод довольно объемной статьи о форматировании строк. Сказка будет правдивой и намек в ней будет на то, что консерваторам стоит иногда рассматривать что-то новое, даже если привычка упорно сопротивляется.

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

Жду замечания по ошибкам в оформлении и опечаткам в личку — с меня традиционные хабраплюшки.
Далее слова автора оригинальной статьи
Total votes 76: ↑69 and ↓7+62
Comments39

Основы работы с потоками в языке Python

Reading time20 min
Views64K

Предисловие


Данную статью я затеял написать после учащающихся вопросов как на форуме так и вопросов в icq на тему многопоточности в CPython. Проблема людей, которые их задают происходит, в основном, из незнания или непонимания основных принципов работы многопоточных приложений. По крайней мере, это относится к используемой мной модели многопоточности, которая носит название Thread Pool (Пул потоков). Часто встречаемой проблемой является и другое: люди не имеют элементарных навыков работы со стандартными модулями CPython. В статья я постараюсь привести примеры такого незнания, не останавливаясь на личностях, так как это по моему скромному мнению неважно. Исходя из условий, в которых пишется эта статья, то мы немного затронем и работу через proxy серверы (не путать с SOCKS).
Читать дальше →
Total votes 77: ↑62 and ↓15+47
Comments39

Создание игры на ваших глазах — часть 1: Идея, вижен, выбор сеттинга, платформы, модели распространения и т.п

Reading time5 min
Views40K


Введение


Данная статья является первой из запланированного цикла статей, посвященного разработке, дизайну и становлению нашей игры. Я намеренно не буду называть ни названия проекта, ни давать ссылок на него, чтобы пост не попал в “я пиарюсь”. Да, собственно, еще и пиарить толком нечего, т.к. проект находится в самом начале пути и мы планируем пройти этот путь вместе с теми, кому интересно понаблюдать за кухней true-инди.

Этот цикл задуман как некий живой дев-лог игрового инди проекта. Здесь я планирую рассказывать обо всем, что будет встречаться на пути — от решений по выбору сеттинга, гейм-дизайна и арта до технической реализации всего это дела.
Читать дальше →
Total votes 59: ↑50 and ↓9+41
Comments55

Современный Торнадо: распределённый хостинг картинок в 30 строк кода

Reading time3 min
Views35K
Впервые слышите о tornado? Слышали, но боялись асинхронности? Смотрели на него более полугода назад? Тогда я посвящаю эту статью вам.
Там будут: gen.coroutines, обработчики, роутинг, шаблоны, motor, gridfs
Total votes 100: ↑89 and ↓11+78
Comments16

Чеклист по оптимизации VPS на PHP/Mysql/Nginx

Reading time3 min
Views45K
Как обеспечить более высокую производительность VPS сервера, который работает на Nginx + PHP + Mysql? В этой статье приведен чеклист основных настроек, которые позволят существенно оптимизировать работу сервера. Настройка займет не более 10 минут и не требует ничего, кроме редактирования конфигурационных файлов.
Читать дальше →
Total votes 34: ↑17 and ↓170
Comments21

Zabbix + Pushbullet: простой способ push-оповещения

Reading time3 min
Views36K
У нас на предприятии, основным способом оповещения о событиях системы мониторинга Zabbix является email-рассылка. Jabber не прижился ввиду малой распространенности, а СМС устарел (хоть и весьма универсален). Хотелось предложить ещё одну альтернативу, которой и стали push-уведомления.

Сервис Pushbullet уже успел сделать себе имя на платформе Android, а с недавних пор пытается покорить и iOS. Pushbullet умеет слать «пуши» на телефоны, принимать их в браузере (Chrome и Firefox) и из него же снова отправлять. В общем очень удобный и полезный сервис, который плюс ко всему имеет открытый API. Посредством этого API мы и будем отправлять события Zabbix на телефоны сотрудников.


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

Астериск под реальной нагрузкой – распределённый отказоустоичивый колл-центр на >500 операторов

Reading time10 min
Views20K
Порядка 600 операторов в 4 странах, обрабатывающих звонки клиентов на американские (и немного на российские) номера.
Примерно 200 одновременных разговоров в пиковое время.
Примерно 15 000 звонков в день.
Возможность за несколько минут масштабировать это решение в несколько раз (по нашим прикидкам до ~1000 параллельных звонков, прежде чем начнутся проблемы).

Ну и конечно же, плотная интеграция с внутренними системами (CRM, сопровождение покупок, приоритеты операторов и клиентов и много-много других плюшек).

Кому интересно как это это работает и почему именно так — добро пожаловать
под кат.
Total votes 46: ↑45 and ↓1+44
Comments58

Введение в IBM DB2

Reading time4 min
Views43K
По работе пришлось в течение некоторого времени разбираться с СУБД IBM DB2. Т.к. система коммерческая, то в интернете не так много информации на русском языке, поэтому решил описать некоторые особенности работы этой СУБД.

Читать дальше →
Total votes 39: ↑32 and ↓7+25
Comments6

Автоматизированные бэкапы для DB2 на *nix

Reading time5 min
Views2.3K
Не так давно на работе понадобилось настроить автоматизированные оффлайн бэкапы для DB2 на AIX. Tак как стандартным методом это сделать не получилось я решил попробавать настроить всё при помощи скриптов которые бы запускались с помощью крона. Простым методом тыка я выяснил что полные оффлайн бэкапы базы занимающие около нескольких гигабайт можно весьма успешно архивировать с помощью 7z. Конечные результаты занимают около 20-50 мб для баз размером в 2-3 гигабайта. Таким образом можно хранить полные бэкапы расфасованные по датам. Осталось всё это дело автоматизировать. Для этого я решил написать несколько скриптов которые бы автоматически убивали соединение к базе, делали бэкап схемы и самой базы.

Для примера расмотрим DB2 9.7.4 Express Edition установленную на Centos 5.5. Для того чтобы вся эта система работала у вас должен быть установлён perl и 7za. База по умолчанию установлена в директорию /home/db2inst1. Cоздадим две директории, одну для скриптов а вторую для бэкапов.
mkdir bin
mkdir backups

Первый скрипт который нам понадобится это скрипт для убийства соединений к базе forcedb
Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments6

Модель безопасности СУБД IBM DB2

Reading time7 min
Views6.8K

Система управления базами данных IBM DB2 начинает свое развитие в далеких 70-х годах и сейчас занимает прочное положение на рынке корпоративных СУБД, отвечая высоким требованиям к производительности, надежности, безопасности и масштабируемости. В частном секторе система DB2 не получила широкого распространения, несмотря на наличие бесплатной версии IBM DB2 Express. Возможно, именно из-за этого в Интернете не так много статей по поводу настройки и использования DB2.

Модель безопасности DB2 обладает широким функционалом и позволяет защитить данные как от внешнего воздействия, так и разграничить права доступа для внутренних пользователей средствами самой СУБД.

Однако неподготовленному пользователю сложно с нуля разобраться во всем этом многообразии, поэтому некоторые важные аспекты будут рассмотрены в данной статье.
Читать дальше →
Total votes 1: ↑1 and ↓0+1
Comments3

Отказоустойчивые службы при помощи CARP

Reading time4 min
Views9.9K

Краткое введение


Про сам протокол очень хорошо написанно в википедии. Кому интересны подробности и история — туда. В двух словах о нём можно сказать так: это протокол избыточности, который позволяет двум или более компьютерам в одной подсети иметь одновременно один и тот же IP адрес, при этом возможна настройка этой группы компьютеров как взаимозаменяемые (главный компьютер отключился/сломался – вместо него сразу же принимается за работу другой, у которого приоритет выше) и так по кругу, обеспечивая тем самым почти 100% доступность служб. СARP является «родным» для OpenBSD, FreeBSD и NetBSD. На линуксе с ядром выше 2.4 доступен через ucarp.

Немного сумбурно, но в дальнейшем, надеюсь, ситуация прояснится.
Читать дальше →
Total votes 31: ↑24 and ↓7+17
Comments25
2

Information

Rating
Does not participate
Registered
Activity