Какой язык / фреймворк (технологию) использовать для сайта (портал флеш игр) - PullRequest
1 голос
/ 23 мая 2010

---- редактировать -----

БЫСТРЫЙ ВОПРОС : Использует ли Grails слишком много ресурсов для сайта с высоким трафиком и стоит ли его размещать?

Например: если я могу сделать сайт с миллионами пользователей / м проще в CakePHP, стоит ли делать это в Grails просто для того, чтобы сэкономить ресурсы веб-сервера, или ему потребуется больше серверов?

---------------

Hello

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

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

Вопрос в том, какую технологию использовать? Я пока не знаю технологии веб-разработки, поэтому не имеет значения, что я буду изучать. Мой опыт веб-разработки был немного php 8 лет назад, и с тех пор я программировал на C ++ / Java-разработке игр и мобильных устройствах. Мне очень нравятся синтаксис и язык Java и C, и мне не нравятся динамическая типизация или нестабильные сценарии (например, php) - но я могу обойтись, если они лучшие выбор.

Кандидаты сейчас: -

  • Grails (мой лучший сейчас)
  • Ruby on Rails
  • Торт PHP
  • Другие технологии (Google App Двигатель, Python / Django и т.д ...)

Сначала я рассматривал возможность использования чистого C и компиляции веб-приложения на сервере - просто чтобы выжать больше из серверов, но вскоре понял, что это излишне. Затем мои глаза остановились на Ruby - так как он очень прост в использовании. Затем я обнаружил Grails и посмотрел на Java, потому что сказано, что он «быстрее». Но я не знаю, что на самом деле означает это «Быстрее», поэтому возникает первый вопрос:

1) Что будет наибольшим потреблением на сервере, кроме пропускной способности, для большого количества запросов флэш-контента? Это память? Я слышал, что Java требует много памяти, но быстрее. Это процессор? Сначала я планирую использовать несколько ежедневных узлов VPS.NET, чтобы узнать, есть ли спрос, и постоянный ли «шип» для перехода на выделенный сервер (у serverloft.com есть несколько хороших предложений), иначе остаться с меньше узлов.

Я также рассматривал возможность разработки в Google App Engine - дешевого или бесплатного хостинга для использования вначале - чтобы я мог проверить свое предположение - и также очень прост в использовании (не нужно sys-администрирование), но затраты стали выше, если использовать больше (> 3 миллиона сыгранных игр / месяц .. х мб / каждая). И проблема с Google заключается в том, что он выглядит мной в этой технологии.

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

2) Потребует ли Grails гораздо больше ресурсов, чем сервер RoR или Php? Я слышал, что создание этого на Java-стеке будет дорогостоящим аппаратным обеспечением и излишним, если вы не создадите банковское приложение. Мое приложение не будет очень сложным (надеюсь и постараюсь), но на нем будет много трафика.

Я также учел использование CDN для файлов, но самый дешевый найденный CDN был 5c / GB (vps.net), а стоимость на гигабайт на serverloft (http://www.serverloft.com/dedizierte-server/server-details.php?products=4) составляет всего 1,79 цента / GB и поставляется с другие ресурсы либо.

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

И большое спасибо за такое замечательное сообщество!

1 Ответ

1 голос
/ 23 мая 2010

Так я (в своем блоге) смотрю на веб-производительность, особенно для сильно абстрагированных фреймворков, таких как Grails.

Я не понимаю одержимости производительностью во время выполнения.Принимая во внимание большинство сценариев проекта, вы должны уделять основное внимание своей производительности, а также своей способности выполнять работу с выбранной технологией.

Например, с Groovy вы добьетесь большего за определенный период времени, чем сЯва в любой день.Часто одна строка кода Groovy будет соответствовать 10 строкам кода Java и т. Д. И т. Д.

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

Плохая реализация алгоритма илидизайн.Плохой дизайн БД и / или запросы.Потребовалось много времени, чтобы добиться цели, а затем возникли всевозможные проблемы коммерческих отношений из-за этого.

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...