Существующий инструмент PHP для переключения функций

Недавно я прочитал ряд статей, в которых говорилось об идее использования "переключателей функций" или "привратников", чтобы скрывать функции от пользователей до завершения разработки. Facebook и Flickr также рассказывают о том, как они используют это для тестирования новых функций с подмножеством пользователей, прежде чем раскрывать их всем.

Немного гуглинга не выявило никаких существующих пакетов / инструментов PHP, которые можно добавить в веб-приложение для обработки подобных вещей. Кажется, это достаточно просто, чтобы катиться, но нет причин заново изобретать это колесо, если нам не нужно. Существуют ли какие-либо инструменты PHP для этого?

статьи

Пояснение: часть этого, которую я смотрю, чтобы увидеть, существует ли она, является административной панелью, которая контролирует, какие пользователи могут видеть новые функции. В примере Flickr они могут включить его в зависимости от хоста. В примере с Facebook они добавляют такую ​​функциональность, как ограничение функции для 5% пользователей, только для пользователей TechCrunch или только для пользователей на восточном побережье.

Панель администратора кажется важной, когда у вас есть 200 включенных функций, 10 функций, которые еще не совсем сделаны, и еще 3, которые вы демонстрируете для некоторых пользователей.

3 ответа

if (user_can_see_app()) {
    show_app();
} else {
    dont_show_app();
}

Я не понимаю, почему пакет понадобится для чего-то такого простого.

Я написал микро-сервис для шаблона переключения функций, который называется Bipolar:

https://marinho.github.io/bipolar-server

Он написан на Python, но это не имеет значения, потому что это внешний интерфейс API и интерфейс администратора, поэтому все, что вам нужно, - это написать для него клиент PHP. Мы использовали его в производстве какое-то время, но недавно работали над публичным выпуском и документацией. Для поддержки JavaScript он может отправлять уведомления, используя Webhooks в качестве основного URL-вызова или через событие Pusher.

Я скучаю по многим годам без контакта с PHP, но я могу помочь вам написать клиент, если вы заинтересованы.

Я надеюсь, что это может быть полезно.

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

Мне было легко иметь на GitHub репо, содержащее некоторые данные JSON с состоянием переключателя функций, позже вы можете изменить это состояние на GitHub (с телефона / компьютера и т. Д.)

Ваш PHP-код должен получить JSON и принять решение из него...

Вы можете посмотреть в блоге о том, как этого добиться:

http://www.nimrodstech.com/dead-simple-feature-toggle/

он показывает фрагмент кода о том, как этого добиться простым способом.

Другие вопросы по тегам