Какие технологии я должен использовать при разработке для большого социального веб-сайта (с большим количеством транзакций, как Твиттер)? использование решений с открытым исходным кодом - базы данных - веб-сервера - OS
Как видите, на самом деле не имеет значения, что вы выберете; все эти сайты имеют большой трафик, но основаны на очень разных технологиях.
Самое важное в социальных сетях - это бэкенд, поскольку большинство узких мест будет именно там. Возможно, вы захотите рассмотреть базы данных No-SQL.
Есть несколько других, например:
Что касается языка программирования, то, как уже говорили другие, он не имеет большого значения. Но если вы действительно не можете определиться, вам стоит рассмотреть неблокирующий веб-сервер, например Tornado.
Неважно, какой язык сценариев вы выберете, если вы будете активно использовать memcached . Обязательно наличие правильной иерархии кеширования.
В конце концов, это вопрос личных предпочтений. Twitter использует Ruby on Rails. Википедия работает на PHP. Reddit использует библиотеку Python под названием web.py, но изначально она была написана на Lisp. Я бы сказал, выберите технологии, с которыми вы наиболее знакомы.
Хорошая книга по оптимизации для высокопроизводительных веб-сайтов от инженеров Yahoo - это Высокопроизводительные веб-сайты: необходимые знания для инженеров внешнего интерфейса . Это красивое и короткое руководство по сути представляет собой маркированное руководство по шагам, которые необходимо предпринять, чтобы ускорить работу веб-сайтов за счет оптимизации менее изученного интерфейса.
Как Джоэл говорит
Люди во всем мире постоянно строят веб-приложения, использующие .NET, использующие Java и постоянно использующие PHP. Ни один из них не выходит из строя из-за выбора технологии.
Выберите ту из «большой тройки» (.Net, Java или PHP), которую вы знаете лучше всего - эти технологии, как известно, масштабируемы, реальный вопрос о том, будет ли ваш сайт масштабироваться, заключается в том, как он структурирован и качество кода - использование того фреймворка, с которым вы наиболее знакомы, дает вам наилучшие шансы на достижение этого.
Любые технологии на ваш вкус. В вашей ситуации, я думаю, важнее алгоритмы.
Если вы создаете что-то вроде Facebook, тогда ваш выбор немного ограничен, Facebook создал собственную среду выполнения PHP, проверьте HipHop For PHP
Технологии, методы,