[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Система на подобии диалогов VK
caHek2x
Добрый вечер, я за уточнением ....
мне надо реализовать систему типа диалогов VK
проверка на новые сообщения и подгрузка новых это ajax ? или по другому делается .... ?
просто через ajax я знаю как сделать. .. но мне кажется это слишком будет большая нагрузка если будет идти проверка например каждые 5 секунд ... или это нормально ?
Игорь_Vasinsky
вы думаете у вк сервер на базе pentium 4 поставлен? там целые дата центры способную выдержать огромную нагрузку.

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

_____________
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
caHek2x
я делаю это на заказ ... поэтому сервер и тд будут подстраивать под мой скрипт ...
кол-во пользователей ... ну это старт ... будем считать что 50 - 100 ... ну а когда уже начнет расти уже понятное дело все будет подтачивать ...
все пишу с 0 без движков или еще чего ... ну мое субъективное мнение что пишу код качественно ...
сама суть вопроса: если сделаю через ajax то насколько это будет оптимально для старта ?
ajax будет обращаться к простому php скриптику гдето каждые 5 сек, который будет делать выборку с одной таблицы на count не прочитанных написанных мне от некого пользователя сообщений ...
Игорь_Vasinsky
ну под ваш скрипт наврятли кто-то будет дата центры открывать с этажами серверов))

на 100 юзеров - делайте - тут нет ничего страшного.

_____________
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
Игорь_Vasinsky
у меня сайт был на виртуальном хостере, даже не VDS, 500 +- юзеров.
делал какждые 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
caHek2x
вы меня обрадовали ... это отлично ...
и еще вопрос по параллельной теме про цену где вы ответили "слишком много не бывает. " ... то есть взять за такое 50 000 рублей это нормально ?
TMake
по поводу vk можно здесь глянуть http://www.insight-it.ru/masshtabiruemost/...tura-vkontakte/ я так понял у них прослойка на node.js

Игорь_Vasinsky
caHek2x
нормальная цена

_____________
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
Zzepish
Кеширование + веб-сокеты
inpost
caHek2x
Сервер и количество пользователей.

Мой чат сделан на Ajax не просто так. Выдерживает около 1000 посетителей онлайн. Нагрузка была небольшой.
Альтернатива - вебсоккеты. Они эффективнее, но меньше возможностей.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
caHek2x
Цитата (inpost @ 20.05.2014 - 02:36)
caHek2x
Сервер и количество пользователей.

Мой чат сделан на Ajax не просто так. Выдерживает около 1000 посетителей онлайн. Нагрузка была небольшой.
Альтернатива - вебсоккеты. Они эффективнее, но меньше возможностей.

как часто делаете опрос на новые сообщения?
inpost
caHek2x
6 сек. То, что выше написал - это не ЛИМИТ. ph34r.gif

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Миша
Цитата (caHek2x @ 19.05.2014 - 21:32)

просто через ajax я знаю как сделать. ..

А можешь простой пример, например с формами.

_____________
Принимаю заказы, писать в ЛС
caHek2x
вот простой пример из старого проекта высунул ...

	setTimeout(upd_comments, 10000);

function upd_comments()
{
upd_comment();
setTimeout(upd_comments, 10000);
}

function upd_comment()
{
var get = window.location.href.slice(window.location.href.indexOf('idstory')).split('&');
var idstory = get[0].split('=')[1]

$.ajax({
type: "GET",
url: "get_all_comments.php",
data:
"idstory="+encodeURIComponent(idstory),
success: function(msg)
{
document.getElementById('comments').innerHTML=msg;
}
}
);
}

но это простой вариант ... по правильному скрипт должен возвращать число сколько новых ... а уже если есть новые то подгружать ...
bestxp
Цитата (inpost @ 20.05.2014 - 02:36)
caHek2x

Альтернатива - вебсоккеты. Они эффективнее, но меньше возможностей.

Кто тебе сказал что вебсокеты не эффективны, они еще как эффективны, ты даже не представляешь на сколько это крутая штука, когда не ты опрашиваешь сервер, а сервер тебе сообщает, нагрузку сводит к 0 =) даже на больших чатах

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.