Суть многоуровневой архитектуры Интернета

задняя часть база данных Архитектура сервер

Руководство сообщества 21CTO:

Эта статья — работа Шэнь Цзяньчжи, архитектора 58.com. Текст лаконичный, и я надеюсь, что он будет полезен для всех.

Картинка выше типичнаяМногоуровневая архитектура Интернета :

  • Клиентский уровень : Типичный вызывающий абонент — браузер или приложение.

  • прикладной уровень сайта : Реализовать основную бизнес-логику, получать данные от нисходящего потока и возвращать html или json восходящему потоку.

  • слой кэша данных : Ускоряет доступ к хранилищу

  • слой базы данных данных : Надежное хранилище данных

 

Если сервисизация реализована, эта схема многоуровневой архитектуры может выглядеть так:

еще один посерединесервисный уровень.

 

внутри того же уровня , такие как приложение на терминале и веб-сервер, также имеютМногослойность MVC:

  • слой просмотра : показывать

  • слой управления логика

  • слой модели :данные

 

Видно, что в костях у каждого инженера,Все тонко реализуют многоуровневую архитектуру.

 

Итак, в чем суть многоуровневой архитектуры Интернета?

Если мы хорошенько об этом подумаем, то обнаружим, что так ли этоМногоуровневая архитектура процессов,ещеВнутрипроцессное наслоение MVC, оба одно«Движение данных»,Потом"обрабатывается"а также"представил"Процесс, в конечном счете, одно предложение:Многоуровневая архитектура Интернета представляет собойПроцесс перемещения, обработки и представления данных Перемещение данных лежит в основе процесса.

 

Как показано на фиг.1:

Обработка и представление данных требуют вычислений ЦП,ЦП исправлен:

  • db/service/web-server развернуты в фиксированном кластере

  • На терминале, будь то браузер или приложение, также есть фиксированная обработка процессора.

 

данные мобильны :

  • Межпроцессное перемещение: данные передаются из базы данных и кэша на сервисный уровень, на уровень веб-сервера, на клиентский уровень.

  • Перемещение в одном и том же процессе: данные передаются со слоя модели на уровень управления и на уровень представления.

 

Данные будут перемещаться, поэтому важны две вещи:

  • данныеформат передачи

  • данные вФормы на всех уровнях

 

Первый взглядФормат передачи данных,СейчаспротоколОчень важный:

  • Между сервисом и db/cache,двоичный протокол/текстовый протоколявляется носителем передачи данных

  • Между веб-сервером и сервисом,Двоичный протокол RPCявляется носителем передачи данных

  • Между клиентом и веб-сервером,http-протоколявляется носителем передачи данных

 

посмотри сноваФорма данных на разных уровняхПользовательПример данных:

  • db, данные«Линия» как единицасуществующая строка (uid, Назовите возраст)

  • слой кэша, данныеформа квСуществующий kv(uid -> Пользователь)

  • Сервисный уровень преобразует строку или kv в удобные для программы значения.Пользовательский объект

  • Уровень веб-сервера преобразует удобный для программы объект User в удобный для httpjson-объект

  • Клиентский уровень: объект json получен на терминале

 

Вывод: Суть многоуровневой архитектуры Интернета заключается в перемещении данных.

 

Зачем это говорить, это приведет к основным принципам и методам «эволюции многоуровневой архитектуры»:

  • Позвольте восходящему потоку получать и обрабатывать данные более эффективно ,мультиплекс

  • Пусть нисходящий блокирует детали сбора данных ,упаковка

 

Знание этого принципа и метода, а также накопление определенного опыта могут ответить на вопросы, которые пользователи сети часто задают в комментариях:

  • Нужно ли внедрять слой DAO и когда?

  • Нужно ли его обслуживать и когда нужно обслуживать?

  • Нужно ли извлекать общий мидл-офисный бизнес и когда его извлекать

  • Нужно ли разделять передний и задний концы и когда разделять

(На эти вопросы пользователей сети на самом деле трудно ответить. Безответственно делать выводы ДА или НЕТ, не понимая стадии развития бизнеса, масштаба бизнеса, объема данных и параллелизма.)

Более конкретные детали эволюции многоуровневой архитектуры будут рассмотрены в следующей статье.

 

Суммировать

  • Суть многоуровневой архитектуры Интернета ,Дадвижение данных

  • В многоуровневой архитектуре Интернета очень важны формат передачи (протокол) данных и форма данных на различных уровнях.

  • Основные принципы и методы эволюции многоуровневой архитектуры Интернета:Инкапсуляция и повторное использование

 

считать

какая системная архитектура,нет«Исправить ЦП, переместить данные»,ноКак насчет «фиксированных данных, мобильного процессора»?

Далее будут статьи г-на Шен Цзяня. Вы также можете внести свой вклад в сообщество 21CTO и обсудить технологии архитектуры высокой доступности с Shen Jian и другими крупными коровами.

Автор: Shen Jian (общественный номер: Architect Road)