TGViewer
Channel Public Channel
Делаем продукт

Делаем продукт

@realbootstrapper

Леонид Черненко, PHP программист.

Делаю свои продукты и рассказываю об этом.

Чат: https://t.me/leonidchernenko

Сайт: https://leonidchernenko.ru/
Subscribers
126
Photos
42
Videos
0
Links
15

Showing posts older than #11 · Back to latest

Older Posts 10 shown
Post #10 395
"...это решается написанием плейбуков в стиле Infrastructure as a Code. Да, на это уходит очень много времени на старте, зато потом ты разворачиваешь мониторинг одной-двумя командами. Изредка рефакторишь плейбук как обычный код"

Infrastructure as a Code

Сколько раз я пытался осилить эти плейбуки, каждый раз плевал и бросал это занятие.

Сделано как-то калечно, пока въедешь в те концепции что нагородили авторы этих тулов, пока напишешь все скрипты, поседеешь. Ещё и Питон вместо PHP )

Если кайфово превозмогать сложные инструменты, валяйте, но я пас.

В моём случае отлично себя показала самопальная система скриптов на Bash + MakeFile + Docker.

Раньше чем она себя исчерпает я не буду брать ничего сложнее, но уже три года полёт нормальный, так что сами судите.
  • 😁 1
Post #9 362
Привет всем кто советует использовать Sentry 🤦‍♂️
  • 👍 5
  • 🥴 2
Post #8 389
Анализ рынка

"Перед разработкой решения, делали ли какой-то анализ рынка? Про графану и прометеус вижу обсуждение. Есть ещё laravel pulse и вроде ещё парочку аналогов есть для php"

Конечно, у всех на слуху Графана, Прометей, Сентри, NewRelic, BlackFire.

Но всё это существующие продукты, которые не решают мою задачу так как это нужно мне.

Как мне нужно чтобы они решили задачу? Быстро, просто и дёшево.

Решают они мою задачу быстро, просто и дёшево? Нет.

Большая часть это либо гемор с ковырянием серверов, такие как Графана и Прометей, либо установка "агентов", либо возня с конфигурацией в приложении, а самые мощные решения ещё и стоят кучу денег.

Это всё не подойдёт. Не хочу часами возиться для решения такой задачи.

Мне нужно фигак-фигак и у тебя есть готовый мониторинг, без напрягов.

Получится ли у меня самого создать простое и быстрое решение? Может, и нет. Но я попробую )

P.S. Laravel Pulse у нас есть, но статистику FPM он не показывает.
Post #7 320
Несмотря на то, что проблема уже решена, остаётся желание смотреть за показателями сервера и дальше, чтобы вовремя поймать подобные проблемы ещё "на подлёте".

А ведь этот проект у нас не единственный с высокой нагрузкой, пригодится и на других.

Поэтому решено: сделаю свой мониторинг, отслеживающий сервер PHP.

Что мониторим

Основные параметры сервера, за которыми нужно следить, это очередь запросов (если всё в порядке тогда в ней 0 ожидающих запросов), а также количество активных процессов.

Если количество активных процессов начинает зашкаливать и упирается в лимит, это означает что сервер уже не справляется с нагрузкой и не успевает обрабатывать запросы.

Пфф... это решается за 15 минут Прометей/Графана/etc

Ну... нет. Ни один из мне сервисов не подключается за 15 минут. Возни везде много и самый минимум подключение займёт несколько часов.

Кто утверждает что такой мониторинг делается без подготовки за 15 минут, либо обманывает себя либо просто врёт.

А толковые APM (глубоко интегрированные системы мониторинга веб-приложений) ещё и стоят капец сколько денег. Например BlackFire стоит 20 000 рублей в месяц.
  • 👍 5
Post #6 296
Предыстория. Мы сделали бэкенд на PHP для многопользовательской онлайн игры, космическая леталка Pulse Online.

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

Чтобы разобраться в чём проблема, стали изучать логи, параметры сервера и так далее.

В итоге добавили страницу статуса PHP FPM, отслеживая которую убедились что в проблемах виновата медленная обработка запросов на сервере PHP.

Позже мы ускорили запросы с помощью индексов в БД и кеширования и проблема ушла.

Но в процессе установления причин тормозов, нам очень нехватало классного мониторинга! Обновляли и следили за страницей статуса PHP FPM вручную.

На картинке к посту — как выглядит такая страница сейчас.
  • 👍 3
Post #5 261
Итак, поехали!

Всю неделю мне хотелось сделать продукт, малюсенький, ультранишевый и связанный с разработкой PHP.

Когда я озвучу в чём заключается идея то вы возможно скажете "ой ну что за фигня! это никому не будет нужно!"

А я отвечу: "ну и что?"

Я всё равно его сделаю, потому что это нужно мне самому. А будут ли им пользоваться... Посмотрим )

Честно говоря надоело быть "сапожником без сапог" и вечно искать готовые решения, особенно когда я уверен что могу решить проблему ничуть не хуже, а местами даже и лучше.
  • 👍 1
Post #4 281
У меня есть блог о разработке: https://leonidchernenko.ru/

Раз в неделю выходит пост.

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

https://t.me/leonidchernenko

Чат привязан к каналу для обсуждений, все посты из канала автоматом публикуются в чате.
Telegram Сделано вайбкодерами Это группа, посвящённая обсуждению постов из блога https://leonidchernenko.ru/ и всему что связано с разработкой. Главный принцип группы — взаимное уважение и доброжелательное отношение к участникам. Новые записи в блоге будут публиковаться здесь.
Post #3 258
Меня зовут Леонид Черненко, я программист. Пишу код на PHP.

Этот канал о том, как я создаю свои продукты.

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

Буду рассказывать о своих приключениях на пути к созданию продукта и делиться мыслями.
  • 👍 8
Post #2
Channel photo updated
Post #1
Channel created
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →