altrg
Erlang Покопался с имеющимися готовыми пулами, из известных — poolboy и pooler. Оба могут мониторить вызывающие и вызываемые процессы, оба могут делать overflow, но из особо полезных отличий — пулбой умеет делать блокирующие вызовы (ждать воркера), а пулер зато умеет гасить их с задержкой (грабли кучи дергающихся тяжелых коннектов на overflow). Еще пулер может сам дернуть воркера из рандомной группы. Может прибить воркера по результатам вызова. У него тонкая настройка каждого воркера в отличии от пулбоя. Вобщем нраица!
altrg
Erlang Вчера полдня выковыривал из тектовых логов термы, чтобы воспоризвести одну проблему. При этом поимел большой гемор с конвертацией текста из :format("~p".. обратно в эрланг. В итоге все как обычно оказалось совсем несложно:

get_term(Str) ->
case erl_scan:tokens([], binary_to_list(Str)++". ", 1) of
{done, {ok, Tokens, _}, []} -> erl_parse:parse_term(Tokens);
Other -> {error, Other}
end.
altrg
SSH Erlang Дано: сервер за семь фарволами, на нем нода с @127.0.0.1 именем. Открыт только ssh.

Требуется: прицепить консоль, пустить обсервер, сделать c:nl/1 и тп с девелоперской тачки за NAT.

Родилося:
#!/bin/sh
export ERL_EPMD_PORT=43690

PORT=`ssh target-host "/opt/target/erts-5.9.2/bin/epmd -names" | awk '$2 == "target-node" {print $5}'`

pkill -f ssh.*-fxN.*target-host
ssh -fxNL 43690:localhost:4369 target-host
ssh -fxNL $PORT:localhost:$PORT target-host
ssh -fxNR 9001:localhost:9001 target-host

erl -name dev@127.0.0.1 -setcookie target-cookie \
-kernel inet_dist_listen_min 9001 inet_dist_listen_max 9001 \
-eval "net_adm:ping('target-node@127.0.0.1')."

pkill -f ssh.*-fxN.*target-host

Усложним задачу. Пускает только с одной разрешенной тачки, где нет эрланга, но есть ssh?
Кладем на девелоперской тачке в ~/.ssh/config:
Host target-host
ProxyCommand ssh -q -A some-allowed-host nc -q0 target-host 22
altrg
Debian graphite быстро поднять графит с временной мордой на wheezy:
1) apt-get install graphite-carbon python-pip
2) /etc/default/graphite-carbon сделать true
3) invoke-rc.d carbon-cache start
4) pip install graphite-web django django-tagging
5) cd /opt/graphite/webapp/graphite/
6) в app_settings.py написать ченить в SECRET_KEY
7) mv local_settings.py.example local_settings.py, WHISPER_DIR = '/var/lib/graphite/whisper', добавить ALLOWED_HOSTS=['*'], разремить DATABASES = { ...
8) python manage.py syncdb
9) /opt/graphite/bin/run-graphite-devel-server.py /opt/graphite

все, можно поливать данные и смотреть в морду
altrg
разное Сильный человек? Качок, с трудом ворочающий мозгами, — слабый человек. С трудом шевелящийся сто-пядей-во-лбу ботан — слабый человек. Бездушный человек, который не ценит красоту, не знает любви к другому — слабый человек.
Все в жизни устроено так, что ломается в самом слабом месте..
altrg
Linux audio Странно насколько сильно отличаются бэкенды xine и gstreamer. Xine, покрайней мере на mp3 и mp4, дает какой-то слишком уж яркий, граничащий с искажениями звук. Gstreamer же, напротив, выдает звук темный, хочется подкрутить высоких. VLC похож на xine. Gstreamer сильно комфортнее (привычнее?).
altrg
Erlang Походу я начинаю понимать что не так с distributed gproc. Как на нем просто и быстро сделать штуку типа global:set_lock? Как на ходу вводить в него новые ноды?
Имхо для того, чтобы сделать уникальный процесс в кластере, наделить его свойствами, по которым можно будет делать селект и юзать его для pubsub — отлично вписывается связка global+mnesia(пусть даже ram_only)+pg2.
btw надо будет поковыряться с gen_leader, посмотреть какие ништяки он может предложить для этих целей
altrg
music да, это блюз. высший пилотаж электронного блюза. великолепный вокал, глубокая музыка, прекрасный отточеный звук. браво depeche mode!
altrg
music слушаю новый депеш.. хочется громче, хочется расслушать все интонации. абсолютно не фанат депешей, но, черт, давно так не пробирало
altrg
English Больше полугода упорно слушал Effortless English, добрался до середины 3-го уровня.. Сегодня, наконец, дошло что в нем не так — тексты там в основном от третьего лица. Мне же для свобдного общения с заказчиками нужно как можно больше забивать в башку фраз и построений от первого лица.. У Пильснера с этим все ок, но он сцуко своим нлп меня бесит :(
Надо поискать чегонить от первого лица на несложном инглише..
altrg
audio теперь, с Fiio Andes в качестве звуковухи, решил собрать отовсюду все свои уши домой и посравнивать
1. Сенхи PX100-II. Улица и только. картины нет, низ каша
2. iGrado. Звук теплый, очень комфортный, вся картинка на месте. Звук нравится, хотя может это дело привычки — хз. Сидят неудобно — давят за ушами, но сидел в них на работе полгода — впринципе норм.
3. Сенхи hd238. Раньше както неуважал, отправил играть в игрушки на комп — почему то не очень звучали с sansa clip+ — мутная картина, странные низы. Но с fiio вдруг заиграли. И вобщем-то хорошо заиграли. Очень комфортные лекгие удобные уши. Но все равно оставил дома — iGrado музыка все же привычнее, да и дома неудобно их резко скидывать за детями бегать
4. Shure 440. Пля когда я ж к ним привыкну. Единственные мои закрытые уши. Брал для шумоизоляции от детей, для работы дома. Звук ДРУГОЙ. Напрочь другой. Вроде все классно — картина очень четкая, все отлично, но я не узнаю свою привычную музыку. Амбиент не нравится. Рок супер. Синти/фьча не нравится. EBM/Industrial супер. Громоздкие. По мониторами жарко. Заказал на амазоне амбюшуры от 840, посмотрим еще — говорят звук менятся в лучшую сторону
altrg
Erlang <kvakvs> век живи век учись, эрланг может матчить бинари посимвольно в utf8, и это быстрее чем другие способы подсчёта юникод символов <<X/utf8, _/binary>> от вдвое быстрее для неюникод строк до просто быстрее для юникод строк