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

Вид: 15670|Ответ: 1

Комментарий к проектированию архитектуры системы — краткое описание разработки

[Скопировать ссылку]
Опубликовано 14.11.2018 13:32:04 | | | |
предисловиеПока что я сделал два-три проекта, включая образование, форумы и CMS, и каждый проект использует функцию комментариев, поэтому я хочу отдельно убрать раздел комментариев и сделать его компонентным модулем. Это не только экономит разработку, но и позволяет лучше понять функции этого модуля.
Поскольку сейчас я в основном разрабатываю с использованием фреймворка TP, в синтаксисе фреймворка TP будут представлены следующие примеры. Но на самом деле я лично считаю, что основная часть метода недостаточна, и я не использовал функцию модели ассоциаций. Вот что я реализую в следующем обновлении.
В основной части я расскажу вам о различных системах комментариев, с которыми я столкнулся, проанализирую их преимущества и недостатки, а также дам представление о проектировании таблиц данных и извлечении данных, надеясь быть для вас полезным. Если есть что-то неуместное, все могут это исправить.

Система комментариев

Существует три основных типа распространённых систем комментариев: строительство внутри здания, режим стриминга и режим цитирования (все они я назвал своими именами), и ниже рассматриваются преимущества и недостатки этих трёх и способы их реализации.

1. Режим здания в здании
Так называемое здание внутри модели означает, что каждый комментарий занимает первый этаж, и все ответы на комментарий отображаются в здании, например, система комментариев Baidu Tieba и Jianshu.




Преимущество:Отвечайте на комментарии с фокусным взглядом, который облегчает понимание их разговора.
Недостатки:Когда контента слишком много, нужна пагинация, что сложнее.
Дизайн технических характеристик:


  • id (самодобавленный первичный ключ)
  • target_id (ID темы комментария, который можно изменять на article_id, course_id и т.д. по необходимости)
  • parent_id (ID главного комментария)
  • reply_uid (Запишите идентификатор пользователя комментируемого — 0 при ответе на основной комментарий)
  • UID (User ID, оставивший комментарий)
  • Контент (Комментарий)
  • Другие области... (Время, статус и т.д.)



Бизнес-логика бэк-энда:



2. Режим потока

Режим потока, как следует из названия, похож на поток информации — будь то комментарий или ответ, каждое сообщение занимает определённый слой, например, система комментариев сообщества laravel-China.




Преимущество:Логика простая и простая в реализации
Недостатки:Содержание диалога нельзя представить центрально, и понять его содержание непросто.
Дизайн технических характеристик:


  • id (самодобавленный первичный ключ)
  • target_id (ID темы комментария, который можно изменять на article_id, course_id и т.д. по необходимости)
  • reply_uid (Запишите идентификатор пользователя комментируемого — 0 при ответе на основной комментарий)
  • UID (User ID, оставивший комментарий)
  • Контент (Комментарий)
  • Другие области... (Время, статус и т.д.)



Бизнес-логика на бэкенде



3. Режим цитирования

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




Преимущество:Понимание, на какой комментарий адресован ответ, может помочь вам понять, о чём разговор. Реализация относительно простая.
Недостатки:Подобно режиму потока, он не представляет всю беседу целиком. Анализируя преимущества и недостатки, можно выяснить, что эталонный паттерн является компромиссом между зданием внутри здания и режимом потока.
Дизайн технических характеристик:


  • id (самодобавленный первичный ключ)
  • target_id (ID темы комментария, который можно изменять на article_id, course_id и т.д. по необходимости)
  • reply_id (ID комментария у комментируемого, основной комментарий — 0)
  • UID (User ID, оставивший комментарий)
  • Контент (Комментарий)
  • Другие области... (Время, статус и т.д.)



Бизнес-логика бэк-энда:

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


Выше приведено предварительное резюме трёх режимов комментариев, стиль ещё не проработан, а после завершения блога будет добавлен и фронтенд-стиль. Если есть какие-либо недостатки, если вы дадите советы.




Предыдущий:Видеоурок по фотографии зеркалки Wu Shizi Tong
Следующий:Детали журнала событий Windows — тип входа
Опубликовано 16.08.2021 16:07:24 |
Здравствуйте, я видел ваш пост о системе комментариев, я получил много пользы, сейчас готовлюсь к созданию системы комментариев, объём данных около 1 миллиарда, ежедневное количество посещений — 100w+ Я хотел бы задать вопросы, связанные с дизайном, если удобно, можете добавить свой WeChat?  Мой WeChat — BennyTian, спасибо!!
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com