Автор сайта с миллионом чекбоксов отказался его монетизировать и раскрыл детали и ошибки проекта

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

Nolen рассказал, что ему уже пришлось несколько раз отклонять запросы рекламодателей, так как смысл проекта в том, чтобы построить что-то чистое и веселое как в 2001 году.

По словам разработчика сайта, стоимость поддержки проекта на стороне хостинг-провайдера на данный момент составляет около $84, которые покрываются за счет пожертвований (он получил таких уже $180). Автор заренее не продумал свои расходы, хотя это важно и нужно было сделать заранее.

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

«Это одно из самых веселых развлечений, которые у меня когда-либо были. Я действительно не могу в это поверить. И я думаю, что самый большой урок заключается в том, что я рад, что я создал дерьмовую версию сайта и запустил ее вместо того, чтобы дорабатывать. Не думаю, что я бы вообще запустился, если бы более подробно обдумал всё и спросил себя заранее, что будет после запуска. Интернет может быть таким крутым», — уточнил Nolen.

Автор отслеживал использование полосы пропускания, наблюдая за выводами команды "ip -s link show" на своем компьютере с Nginx. «Спасибо компании Digital Ocean за то, что терпели, когда я заполнял ненормальный тикет, подтверждающий мое понимание того, какую пропускную способность я использую (их счетчик обновлялся недостаточно быстро)», — добавил Nolen.

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

Планируемые и текущие обновления:

• пакетная обработка обновлений (я сделал это через несколько часов после открытия сайта);
• увеличение размера партии (в два раза);
• уменьшение размера сообщения (первоначально список диктов, теперь просто массивы индексов, которые имеют значения true/false);
• реплика исходного снимка состояния (огромная для начальной загрузки!).

Nolen по-прежнему просто использует обратный прокси-сервер Nginx для распределения worker-процессов на разные ПК. По его мнению, worker-процессы по-прежнему медлительны, но хорошо, что Nginx может таке сделать. Исходная установка была Nginx + Worker на одной виртуальной машине. Он рад, что выбрал что-то, что можно масштабировать. Тесты с Redis тоже были не особо продуктивны.

Ошибки в проекте:

• первая самая большая ошибка, которую автор совершил, заключалась в том, что он вёл подробные логи каждой проверки, но при запуске он вёл только первый миллион логов за каждый день. Это было так глупо. Он просто хотел ограничиться и думал, что не сможет приблизиться к лимиту, который быстро наступил. Nolen потребовалось немного времени, чтобы вспомнить, что именно нужно исправить в настройках логов;

• второй самой большой ошибкой был протокол. В рамках проекта рабочая система сайта немедленно транслирует все события переключения, а также время от времени делает полные снимки состояния, чтобы убедиться, что клиенты синхронизированы. Оказалось, что снимки полного состояния не имели временных меток некоторое время. Поэтому клиенты получали устаревшие обновления и применяли их. Вот почему клиенты так сильно менялись на каждом снимке состояния — они были смещены. Автору было очень неловко из-за этой ошибки, так как это такая классическая ошибка, по мнению Nolen.

Ранее Nolen рассказал, что после первого запуска сайта столкнулся с различными проблемами на серверной стороне, но решил их. «Я сделал сайт. Он называется «onemillioncheckboxes dot com». На нем миллион чекбоксов. Активация чекбокса показывает его статус для всех. Вот и всё. Веселитесь!», — уточнил разработчик.

Материал опубликован при поддержке сайта habr.com
Комментарии

    Актуальные новости по теме "Array"