Третья часть "Истории одного стартапа" задерживается из-за внезапно случившихся праздников (кто не читал — здесь начало), вот вам пока набор вредных советов. С "Историей ..." они никак не связаны, просто наблюдения за разными проектами в которых довелось поучавствовать мне, или моим коллегам.
Совет №1. Берите вычислительных мощностей с запасом. Ведь ваше приложение — это прорыв в индустрии, и количество посетителей будет зашкаливать через два часа после релиза на Google Market / App Store. Берите сервер под рекламный сайт и сервер под контроллер Ansible, а также следуйте рекомендациям производителей программного обеспечения о том, что деплой на меньше, чем три сервера — это не продакшн-уровень.
Совет №2. Пользуйтесь как можно большим количеством SaaS. Желательно — с отсутствием простого механизма переезда с этого SaaS на собственный хостинг. Идеально — решение должно быть платным с некоторым ознакомительным периодом, после которого отключается большая часть функционала. Ведь приложение "уже-почти-вот-вот-готово", размещение в Google Market / App Store занимает пару часов, а потом вы сразу заработаете столько денег, что хватит на оплату всех аккаунтов, и на пиво останется.
Совет №3. Пользуйтесь облачными вычислительными мощностями. Ведь когда у вас приложение в облаке — вам не нужен ни архитектор, ни DevOps, в облаке приложение будет само масштабироваться, что уменьшит ваши эксплуатационные расходы.
Совет №4. Когда выяснится, что не так всё просто с облаками — выдайте программистам задачу спроектировать архитектуру приложения с учётом масштабирования, и автоматизировать развёртывание. Не слушайте их робкие намёки на то, что было бы неплохо взять в команду хоть какого-нибудь админа — у вас же всё в облаке, там сервера сами знают, когда нужно стартануть, когда остановиться, и где хранятся данные вашего приложения. А если не знают — есть Ansible, для использования которого вообще не нужно знать о том, что такое "системное администрирование". Знай, конфиги на YAML шлёпай.
Совет №5. Сделайте неотключаемый мониторинг исключений в коде. Ведь вам всегда будет очень важно знать, сколько именно push-сообщений не было доставлено за период "в этот день, час, минуту и секунду два года назад". Данные складывайте в облачный SaaS сервис со своим API — ведь хранить такой объём в обычных файлах это прошлый век и дорого.
Совет №6. Никогда не реализуйте мониторинг на уровне операционной системы. Ведь если перестанет работать приложение — вы это и так увидите (оно ведь запущено у вас на телефоне / во вкладке браузера 24 часа в сутки), а графики загрузки процессора и использования памяти можно посмотреть в веб-интерфейсе управления вашим облаком.
Совет №7. Когда кто-то из команды аккуратно намекнёт на ненужность 60% телодвижений уже сделаных в проекте, и что "может ну его, давайте для начала поселимся на виртуалке пожирней" — отмахнитесь, а то и перестаньте работать с человеком, ибо он некомпетентен. Помните, без High Availability, Big Data и Scalability не выживает ни один стартап.
Ну и делитесь своими вредными советами в комментариях, что ли...
Комментарии (19)
Acuna
20.12.2016 09:31Большое спасибо! У Вас прекрасные статьи!
Как раз тут обсуждаем как важно хвалить друг друга в сети и в жизни на примере иностранцев, поэтому исправляемся)NLO
20.12.2016 21:42НЛО прилетело и опубликовало эту надпись здесь
Acuna
20.12.2016 23:45Не о том ли писал автор, как любят иностранцы благодарить других в отличии от нас? Статья из трех предложений, из них 50% — это перечисление комментариев, которые они обычно оставляют. Может быть у Вас какой-то свой Хабр? Я хочу с ним ознакомиться, чтобы не быть в неведеньи.
Acuna
21.12.2016 01:48P. S. Если в обсуждении участвуют несколько человек, то на «вы» обращаются ко всем участникам этой переписки, тогда как к отдельному человеку в этой переписке — на «Вы». Понятно, что Вы таким образом пытаетесь показать свое отношение ко мне, однако это еще раз подтверждает, что в той статье поднята действительно актуальная тема.
Однако я все еще жду приглашение на Ваш собственный Хабр, где даже статьи читаются по-другому.
Acuna
22.12.2016 02:21Благодарю. Вопросов больше не имею. Однако я всегда удивляюсь, насколько человек может ставить во главу угла свое мнение и даже пытаться увидеть его в статье, в которой содержится всего одна совершенно ясная мысль, еще и выраженная всего в паре-тройке предложений.
Acuna
20.12.2016 09:32Кстати, давно хотел спросить: каким образом у статей отключают рейтинг? Говорят, что ее минусуют, смотрю, а он вообще отключен. Администрацию просить надо?
vedenin1980
20.12.2016 10:57+2каким образом у статей отключают рейтинг? Говорят, что ее минусуют, смотрю, а он вообще отключен
У статьей рейтинг не отключен, но пока пользователь не проголосует ему не показывается рейтинг этой статьи (видимо, чтобы голосование не было предвзятым).
А у вас недостаточно кармы, чтобы голосовать за статьи поэтому рейтинг статьи вы сможете увидеть только после окончания периода голосования (3 дней). Хотя это секрет полишинеля, так как в "Самое читаемое" рейтинг отлично отображается.
DorianPeregrim
20.12.2016 12:14Но ведь между стрелочек голосования можно нажать на дефис и увидеть текущий рейтинг статьи. Или вы о чем то другом?
vedenin1980
20.12.2016 12:23+2Если кармы для голосования за статью не хватает, то нажать на дефис тоже нельзя. По крайне мере, на geektimes у меня нет положительной кармы и я не могу нажав на дефис узнать рейтинг статьи (сейчас перепроверил — не могу никак ни голосовать, ни просто нажать на дефис).
Revertis
20.12.2016 13:25+2Хм, у меня с кармой тут небольшая беда, но на дефис я нажал и вижу +14. Странно всё это…
Acuna
21.12.2016 01:53Все чаще и чаще у юзеров встречаю такого рода «небольшую беду» с кармой. Казалось бы, революция — это когда верхи не могут, а внизу не хотят, только низа вот очень мало для этой революции, очень( Это так, мысли в слух, не более)
JediPhilosopher
20.12.2016 20:14+1Да, столкнулся с такой ситуацией с позиции основателя стартапа (хотя это может и громковато сказано). Так ведь хочется всего-всего самого хорошего, больше серверов богу серверов, сразу позаботиться о будущих
тысячахмиллионах пользователей, чтобы все компоненты на отдельных машинах, да не VDS а железных, или наоборот во всяких разных облаках (а под это еще и что-то новое для себя изучить). Приходится бить себя по рукам.
Когда для одного конкурса грантов составляли презентацию с планируемым бюджетом, посчитали два варианта — «все включено» по максимуму (если дадут много денег) — много серверов и облаков — и «необходимый минимум» (чтобы показать что проект сможет жить и с минимумом денег) — все на одном выделенном сервере. Разница в цене получилась чуть ли не на порядок. При том что объективно никакой необходимости в первом варианте нет. Но хочется же!
Видимо не всегда получается свои желания обуздать (особенно когда с неба падают дармовые деньги от инвесторов, расплачиваться за которые предстоит еще не скоро).br0ziliy
21.12.2016 14:57> больше серверов богу серверов
Спасибо за фразу, распечатал и повесил на стенку перед глазами :D
> Когда для одного конкурса грантов
Вот тут я бы просил «по максимуму», если честно. Дадут всё равно меньше, чем просишь — зато как раз хватит на реальные потребности.
customtema
20.12.2016 21:44Хм… если исключить тон, по всем советам — да, на самом деле. Говорю как человек, познавший темную сторону.
Дело в том, что когда оно скакнет — если при этом денег не приносит (которые решают все обозначенные проблемы) — то имеет смысл озадачиться вопросом, а стоит ли оно затрат, в принципе? Облачность и другие обозначенные плюшки прежде всего дают возможность сэкономить, а для быстрого старта при малом бюджете это важно. Если заработает — можно и масштабировать.
Запас мощностей в 2 раза нужен всегда. Этот подход используется в гугле.br0ziliy
21.12.2016 15:00> если исключить тон
О, а что не так с тоном? А то там минусовали поначалу, возможно как раз это.
> Запас мощностей в 2 раза нужен всегда. Этот подход используется в гугле.
Этот подход используется в гугле в настоящее время, когда они уже не попадают под определение «стартап» в том значении, которое имеется ввиду в статье. У меня речь про самых-самых маленьких, скажем так.
zorgzerg
Интересно, за что минусуют? По-моему типичный портрет малоопытного стартапера. Мы и сами такое проходили ))
Areso
Может быть и малоопытного, зато по статье сразу видно — с деньгами.
br0ziliy
За подачу наверное.
Каждый совет, взятый по отдельности — вредным не является, по сути.
Надо рассчитывать нагрузки до релиза, чтобы не получился хабра/лепро/чтотоещё-эффект, когда после статьи в «Я пиарюсь» сервис падает, можно срезать углы на автоматизации и мониторинге (держа всё же задачи в бэклоге), да и облачные сервисы совсем не так плохи до определённого момента.
Статья родилась после того, как в нескольких проектах закончились деньги, а на самоокупаемость так и не вышли — и мне пришлось перетаскивать всё из разных мест на один VDS. То ещё удовольствие.