Shkiper
16.09.2012 - 19:54
Всем привет. Меня давно интересовал вопрос - "Как, а главное на чем написан vk.com". Мне интересно на каком языке его дуров шпилил(из серверных языков). На Си или ПХП или может на чем нибудь другом? и как он сделал прослушивание музыки на всех страницах. то есть я вкл. музыку, шагаю по сайту. Естественно каждый раз меняется УРЛ, а значит и грузится совсем другая страница, а музыка все играет, и гл. показывает какая - как это он состряпал? теперь еще один вопрос. Например я на странице Новостей на vk.com. там как только кто-то из друзей или групп, в которых я состою, добавить запись на стену, она мгновенно появляется. у меня аналогичный вопрос - как он это сделал? у меня есть предположения. он сделал setIntval() с интервалом в 1 сек. и каждую секунду он посылает АЯКС запрос на сервер и он вытаскивает все новости моих друзей и групп которые опубликовал в течении 1 сек. после последнего обновления. но ведь это жрет трафик
Winston
16.09.2012 - 19:57
Shkiper
16.09.2012 - 20:04
Winston там только на чем он написан и все
Winston
16.09.2012 - 20:09
Цитата (Shkiper @ 16.09.2012 - 18:54) |
главное на чем написан vk.com |
Цитата (Shkiper @ 16.09.2012 - 19:04) |
там только на чем он написан и все |
Что не так?
Shkiper
16.09.2012 - 20:24
Winston ладно, признаю - виновен. Но на остальные вопросы ответ я тоже жду
T1grOK
16.09.2012 - 22:54
Цитата (Shkiper @ 16.09.2012 - 15:54) |
... у меня есть предположения. он сделал setIntval() с интервалом в 1 сек. и каждую секунду он посылает АЯКС запрос на сервер и он вытаскивает все новости моих друзей и групп которые опубликовал в течении 1 сек. после последнего обновления. но ведь это жрет трафик |
Суть правильная, правда не каждую секунду.
Жрет трафик? А вы думаете VK просто так держит десяток тысяч сервером.
В дополнение об архитектуре. Mysql в нем используется весьма модифицированный(собственно как и все остальное). Под него много чего написано специально под нужны системы, вплоть до собственных движков.
_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
dron4ik
16.09.2012 - 23:31
меня больше интересует структура их бд... ибо в голове у меня безумные лабиринты))0
_____________
Ex3m.com.ua — Активный образ жизни
Shkiper
17.09.2012 - 06:47
T1grOK так то все понятно, кроме одного - я не знаю как с 1 сайтом склеить остальные десятки серверов и как оно облегчит нагрузку. а так все панятно
Игорь_Vasinsky
17.09.2012 - 08:02
) ну как как..
разделение трафика идёт, либо ведётся статистика и весь трафик делится и идёт распределение на сервера, может сразу по регионам распределение.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Shkiper
17.09.2012 - 09:25
Игорь_Vasinsky вот скажи. Тебе щас поставят перед огромной ракетой и скажут чтобы ты рассказал - как она работает? Так вот - у меня похожая ситуация
Игорь_Vasinsky
17.09.2012 - 09:33
ну давай думать логически
для чего сервера, вообще и в конкретном случае:
1. отдача контента (графика)
2. ввод, отдача и хранение инфы соотв-но
Я не помню про содержание статьи, но сдаётся мне - что идёт простое распределение трафа, при превышении квоты на один сервер переключается на второй и т.д.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Shkiper
17.09.2012 - 09:42
Игорь_Vasinsky эхх мне опять придется шагать в гугл
Игорь_Vasinsky
17.09.2012 - 10:06
ну представь самое банальное:
- трафик и нагрузка подсчитываются серверными средствами (программами или скриптами - не суть)
- а далее просто отдаётся команда в нужный момент - подключить БД с того или иного сервера (опять же if else или switch)
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Shkiper
17.09.2012 - 10:08
пнт
dron4ik
17.09.2012 - 13:22
я читал что трафик идет с конкретной территориальной зоны на конкретный серв, или несколько... типо ты с Воронежа, значит получаешь выдачу с сервера 18, а картинки и прочие лежать на отдельных серверах, и вытаскиваются по отдельному запросу...
_____________
Ex3m.com.ua — Активный образ жизни
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.