Sannis
+1
Под 2000 за стакан пива и пюрешку с сосиской, насколько помню.

Не помню как насчёт бенгерс энд мэш, но по Гиннесу сравнение в пользу Лондона: самый дешёвый вменяемый в Москве сейчас стоит 390, средняя цена в пабах Сохо (!) — £4.5 = 327.

Sannis
+2

99% кода на Go в Баду пишется в отделе C-разработки и задачи выбрать язык который был бы проще в изучении PHPшникам не стояло. Была цель выбрать язык который был бы достаточно эффективен (ближе к C чем к PHP), но при этом бы на нём было быстрее писать (основное, насколько я понимаю, чтобы был GC). Так что Node.js не подошёл нам по многим параметрам.


P.S. Моё личное мнение насчет Node.js — на нём даже проще написать плохо работающий код, чем на PHP.

Sannis
0

Если рисовать пропорционально все площадки и подкластера инфраструктуры Баду — на экран не влезет :-)

Sannis
0

В принципе нам ничто не мешает стандартизировать и подстановки, но так как новые сервисы появляются не чаще раза в месяц в этом пока не было необходимости.

Sannis
0

В Badoo практически всегда используется pinba_stats_history=60.
Raw данные мы не используем, только отчеты, а для них совершенно не нужно хранить данные за 15 минут.

Sannis
0
Попробуйте phpcf — он умеет как находить, так и исправлять ошибки форматирования. Кроме того, если его запускать из git репозитория, он может проверять только те строки, которые были изменены с последнего коммита.
Sannis
+1
Вы разрешите доступ к своему ноутбуку и виртуалке на нём админскому паппету? Думаю нет :-)
Sannis
+1
Зачем очищать или инициализировать по новой?

Каких проблем конкурентных запросов? Node однопоточна, что избавляет от проблем конкурентного доступа к данным на корню.

Вы серьёзно сейчас пытаетесь сравнивать один однопоточный сервер Node и один php-fpm с одноим воркером? Как только вы начинаете запускать Node cluster или несколько процессов на одном сервере или выходите за рамки одного сервера приходится заниматься всем этим, какую бы видимую простоту Node вам не сулила.

Sannis
0
Sannis
+1
Выходит что в 4х, так что всё равно плохо.
Sannis
0
Наличие utils — не слишком хороший признак сам по себе :-)
Sannis
+2
На документацию по написанию PHP extension с поддержкой persistent connect?
На деле всё не так просто и о persistent connection нужно думать начиная с протокола взаимодействие клиента с сервером.
А уже во вторую очередь думать о том как это сделать в расширении для определённого языка.
Для начала, ИМХО, стоит начать отсюда: http://www.slideshare.net/rybaxek/pconnect-12329335.
Sannis
0
У нас не так часто появляется необходимость в новых расширениях. Навскидку за последний год это был только tarantool 1.6, нецелесообразно было писать его на Зефире с нуля.
Sannis
0
А что об этом пишут на https://bugs.php.net/?
Sannis
0
Какой смысл делать всё такие крутое если при рестарте всё равно пропадут данные?

А persistent connections к сервисам можно и так делать на уровне расширений.
Sannis
0
Ничто не мешает использовать protobuf для описания формата и при этом сериализовывать данные в JSON.
Sannis
0
Не пробовали чем-нибудь вроде strace смотреть чем в этот момент php-fpm занимается?
Sannis
0
А что, WP настолько убог что не подволяет добавить пару строк HTML в шаблон?
Sannis
+1
В своё время тоже мучился со стилями для Gnuplot, но в итоге перешёл на GLE.
Sannis
0
Интересно что за инструменты были раньше… Да и в целом задачу интересно узнать.
Sannis
0
Вас не смущает что ASAN не всегда находит не освобожденную в конце программы память? А LSAN ещё считается экспериментальным.
Sannis
+1
Для этого нужно ещё все тесты переписать на использования MyClass::$class вместо 'MyClass' в моках, например.
Sannis
0
Второй пока что ничего грандиозного не сделал, имхо.
Sannis
0
1. Могу посоветовать github.com/nodeca/ndoc.
Sannis
+2
Он был торт только первый год :)
Sannis
–1
Словари были преобразованы в windows-1251

WHY???
Sannis
+1
Было бы интересно услышать числа в $ :-)
Sannis
+1
Которая как мы знаем просто base64 закодированная и подписанная кука.

Нихилый такой антипаттерн.
Sannis
+2
При всей моей любви к OSM, FOSM и т.д., фраза «лучше других карт в интернете», так популярная в русскоязычном OSM сообществе, уже поднадоела.
Sannis
0
Его, к сожалению, не получилось записать.
Sannis
0
Да, обязательно.
Sannis
0
Соглашусь что для анализа производительности логи в таком виде трудно применимы :) Потому я и занимаюсь портированием Pinba на Node.js и надеюсь на днях написать об этом.
Sannis
+1
Если это вас убедит, то вот профиль Тони на гитхабе: github.com/tony2001.
Да, оба этих человека работали в Баду с самого основания.
Sannis
–1
Данные пишутся в лог, а специальный демон раз в 5 минут собирает очередную порцию логов со всех фронтендов и строит очередной отрезок на графике.
OMG, Pinba же есть.
Sannis
+1
По поводу конфликтов у нас сделано просто благодаря той самой автоматизации. если автомерж не смог залить какую-то ветку в билд, то задаче выставляется специальный флаг в Jira чтобы предотвратить дальнейшие попытки автомержа и с AIDA переводится обратно на разработчика с комментарием что в такой-то билд её не удалось замержить.
Sannis
+7
А зачем разработчику мержить себе в ветку релиз, если он через 4 часа всё равно будет в мастере? Если есть какая-то зависимость между задачами, то можно замержить отдельную задачу, это намного безопаснее.
Sannis
0
Честно говоря не знаю, как у нас биллинг считается, но в BI используют специализированные базы. Но после одного успешного применения judy уже разные команды начали думать как им это расширение может помочь.
Sannis
0
Но только это будет не просто массив на 100k записей, а массив из массивов по count(columns) — так что уже стоит попробовать judy. Но это всё так, just for fun, мы не такие задачи с помощью judy решаем.