Сейчас открываю свой проект, думаю над покупкой сервера.
Проект на php (laravel) + mysql, redis
Вопрос состоит в том, хочу взять выделенную машину, но думаю с какими характеристиками лучше? А именно думаю по количеству RAM и SSD.
Раньше такими вопросами занимался системный администратор, но хотелось бы самому разобраться в данном вопросе.
Собственно что именно меня волнует: я бы хотел услышать, каким способом вы определяете, какой сервер необходим при старте, охото взять с запасом на будущий рост и стоит ли заранее выносить redis, mysql - на отдельный сервер(-а)? (т.е. купить >=2 серверов ).
1)Начните с 4 гигов оперативы, используйте вдс, вы в любой момент можете увеличить вдс в большую сторону, в меньшую нельзя.
2)Не стоит пока выносить.
попробуйте vdsina.ru/pricing
они сейчас оптимальны по цене в рублях.
Вы ничего не написали про предполагаемую нагрузку на сервер, объём данных и как эти данные будут обрабатываться (соотношение чтение/запись), будет ли статика и как она будет обрабатываться - в общем ничего, от чего можно оттолкнуться в вопросах выбора площадки. Нарисуйте хотя бы приблизительную архитектуру проекта, чтобы Вам помогли.
Если не охота - берите облачный сервис (тот же Forge, если пишите на laravel), смотрите нагрузку, начиная с малого. Некоторое время работы ресурса даст Вам понимание, куда копать дальше и какой объём денег Вам потребуется для того, чтобы обеспечить работу ресурса...
Все очень просто - при старте примите меры, чтобы не оказаться заблокированным у конкретного хостера. Настройте Ansible/Chef/Puppet, чтобы в любой момент за 5 минут можно было поднять всю инфраструктуру на любом месте. Проведите "учения" в Vagrant и берите самую дешевую виртуалку.
Лично у меня смена хостера занимает 30 секунд моего времени - добавление нового сервера в Jenkins и запуск 3-х "Job": снятие бэкапа, установка окружения и восстановление бэкапа. Я уверен, что все будет нормально, потому что переодически проверяю систему.
Это зависит от самого проекта.
Для соц. сети с over 1000+ пользователей мощное железо нужно, для небольшого проекта меньше и т.д.
Чем больше конкретики , тем больше возможность получить хороший ответ )
А можете по подробнее!? Сколько CPU, RAM, канал (mb/s) нужно для 1000+ user'ов (в примере соц. сети, при условий не будет загрузки видео на сервер...)?
Ответ не будет, пока не ясно какая нагрузка. Свой сервер -- дорогая игрушка (учите, что надо будет платить на юнит в стойке провайдера, порты, IP-шники, питание. Все это "постоянные издержки" которые стартапу всегда надо минимизировать. Когда проект будет в плюсе по "переменным издержкам", то уже можно смотреть как избавившись от некоторых из них, и переложившись в "постоянные издержки" сэкономить. Так что садитесь на виртуалки или комбинацию сервисов Amazon и вперед.