Как работает Disqus? - PullRequest
       8

Как работает Disqus?

9 голосов
/ 10 марта 2010

Кто-нибудь знает, как работает disqus ?

Он управляет комментариями в блоге, но все комментарии хранятся на стороннем сайте. Похоже на аккуратное использование межсайтового общения.

Ответы [ 7 ]

8 голосов
/ 01 сентября 2010

Общий используемый шаблон: JSONP

На самом деле он реализован довольно изощренным способом (по крайней мере, на сайте jQuery) ... они откладывают загрузку файлов disqus.js и thread.js до тех пор, пока пользователь не перейдет к разделу комментариев.

Файл thread.js содержит json-контент для комментариев, которые отображаются на странице после ее загрузки.

2 голосов
/ 10 июня 2015

Цитирую слова Антона Ковалева (бывшего инженера в Disqus) ответ на тот же вопрос на другом сайте, который мне действительно помог:

Disqus - это стороннее JavaScript-приложение, которое запускается в вашем браузере и внедряется на веб-сайтах издателей. Этим издателям необходимо установить небольшой фрагмент кода JavaScript, который делает первый запрос к нашим серверам и загружает начальный загрузчик JavaScript. Затем этот загрузчик создает все необходимые элементы iframe, получает данные с наших серверов, отображает шаблоны и вставляет результат в какой-либо элемент на странице.

Как вы, вероятно, можете догадаться, существует довольно много разных технологий, поддерживающих то, что кажется простой операцией. На серверной части вы должны запустить и масштабировать гигантское веб-приложение, которое обслуживает миллионы запросов (в основном читаемых). Мы используем Python, Django, PostgreSQL и Redis (для нашего сервиса в реальном времени).

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

К сожалению, невозможно объяснить, как все работает, в комментарии к Quora или даже в статье. Так что, если вы заинтересованы в серверной части Disqus, просто научитесь писать, запускать и работать с масштабируемыми веб-сайтами, и вы будете в восторге. А если вам интересна внешняя сторона, Бен Винегар и я (оба интерфейсные инженеры в Disqus) написали книгу на тему «Сторонний JavaScript» (http://thirdpartyjs.com/).

).

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

Вот также ссылка на официальный ответ на этот вопрос на сайте Disqus.

2 голосов
/ 16 июля 2011

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

2 голосов
/ 12 августа 2010

У вас есть три варианта добавления комментариев Disqus на сайт:

Основным преимуществом интегрированных решений является то, что их легко настроить. Например, в случае WordPress это так же просто, как активировать плагин.

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

0 голосов
/ 17 декабря 2011

Я всегда оставляю комментарий на платформе disqus. Иногда комментарий, кажется, удаляется после того, как вы обновили его, а иногда это не так. Я думаю, что тот, который был удален, содержится на модерации, не говоря об этом.

0 голосов
/ 03 сентября 2010

Я думаю, что они хранят контент на своем сайте, и ваш сайт будет только отправлять и получать данные на / с disqus. Теперь мне интересно, что произойдет, если вы решите, что хотите внести свой комментарий в дом, не потеряв все существующие комментарии! Интересно, насколько легко вы получите ваши данные? Они утверждают, что данные принадлежат вам, но они контролируют их, и на их сайте нет особых объяснений по этому поводу.

0 голосов
/ 10 марта 2010

короткий ответ? AJAX, вы получаете свой собственный URL, например, "site.com/?comments=ID", включенный через javascript ... но с такими обновлениями в реальном времени, как этот, вам потребуется сервер опроса.

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