Галерея диаграмм связей Полнофункциональная оптимизация производительности переднего плана и оптимизация процесса исследований и разработок.
Оптимизация производительности полноканального интерфейса: оптимизация процессов НИОКР и разработки, включая гибридную разработку, CDN/DNS, HTTP, Cookie, сервер, HTTPS, HTTP-2 и т. д. для оптимизации процесса НИОКР и разработки.
Отредактировано в 2021-01-01 19:46:28Cent ans de solitude est le chef-d'œuvre de Gabriel Garcia Marquez. La lecture de ce livre commence par l'analyse des relations entre les personnages, qui se concentre sur la famille Buendía et raconte l'histoire de la prospérité et du déclin de la famille, de ses relations internes et de ses luttes politiques, de son métissage et de sa renaissance au cours d'une centaine d'années.
Cent ans de solitude est le chef-d'œuvre de Gabriel Garcia Marquez. La lecture de ce livre commence par l'analyse des relations entre les personnages, qui se concentre sur la famille Buendía et raconte l'histoire de la prospérité et du déclin de la famille, de ses relations internes et de ses luttes politiques, de son métissage et de sa renaissance au cours d'une centaine d'années.
La gestion de projet est le processus qui consiste à appliquer des connaissances, des compétences, des outils et des méthodologies spécialisés aux activités du projet afin que celui-ci puisse atteindre ou dépasser les exigences et les attentes fixées dans le cadre de ressources limitées. Ce diagramme fournit une vue d'ensemble des 8 composantes du processus de gestion de projet et peut être utilisé comme modèle générique.
Cent ans de solitude est le chef-d'œuvre de Gabriel Garcia Marquez. La lecture de ce livre commence par l'analyse des relations entre les personnages, qui se concentre sur la famille Buendía et raconte l'histoire de la prospérité et du déclin de la famille, de ses relations internes et de ses luttes politiques, de son métissage et de sa renaissance au cours d'une centaine d'années.
Cent ans de solitude est le chef-d'œuvre de Gabriel Garcia Marquez. La lecture de ce livre commence par l'analyse des relations entre les personnages, qui se concentre sur la famille Buendía et raconte l'histoire de la prospérité et du déclin de la famille, de ses relations internes et de ses luttes politiques, de son métissage et de sa renaissance au cours d'une centaine d'années.
La gestion de projet est le processus qui consiste à appliquer des connaissances, des compétences, des outils et des méthodologies spécialisés aux activités du projet afin que celui-ci puisse atteindre ou dépasser les exigences et les attentes fixées dans le cadre de ressources limitées. Ce diagramme fournit une vue d'ensemble des 8 composantes du processus de gestion de projet et peut être utilisé comme modèle générique.
Полнофункциональная оптимизация производительности переднего плана и оптимизация процесса исследований и разработок.
4. HTTP: Как уменьшить количество HTTP-запросов?
CSS-спрайты
В изображениях используется DataURL, веб-шрифт.
Объединение файлов JS/CSS
Комбинация запросов JS/CSS
Объединение интерфейсов
Интерфейсное хранилище LocalStorage
Статическое хранилище ресурсов LocalStorage
5. Файлы cookie: стратегии и преимущества уменьшения размера файлов cookie.
Стратегия
Установить белый список на главной странице сайта
Периодически удалять файлы cookie, не внесенные в белый список.
выгода
Уменьшите размер передачи между страницами
Эффективно управляйте файлами cookie
6. Сервер
Решения по настройке и оптимизации кэша
Срок действия истекает
определение
Заголовок ответа содержит дату/время, после которого срок действия ответа истекает.
Недопустимая дата, например 0, представляет собой дату в прошлом, то есть срок действия ресурса истек.
Если в заголовке ответа Cache-Control установлена директива «max-age» или «s-max-age», заголовок Expires будет игнорироваться.
грамматика:
Истекает: Вт, 17 декабря 2019 г., 07:01:44 GMT
Пример:
Истекает: Вт, 17 декабря 2019 г., 07:01:44 GMT
Кэш-Контроль
определение
Поле общего заголовка сообщения, которое реализует механизм кэширования путем указания инструкций. Директивы кэширования являются односторонними, что означает, что директивы, установленные в запросе, не обязательно включаются в ответ.
грамматика
Cache-Control: max-age=[Установить максимальный период хранения кеша. По истечении этого времени кеш считается просроченным (в секундах). В отличие от Expires, время зависит от времени запроса]
Пример
Cache-Control:max-age=600
ETag
определение
Заголовок ответа HTTP — это идентификатор конкретной версии ресурса. Это делает кэширование более эффективным и экономит полосу пропускания, поскольку веб-серверу не нужно отправлять полный ответ, если содержимое не изменилось. А если контент изменится, использование ETag поможет предотвратить перезапись одновременных обновлений ресурсов.
Если в данном URL-адресе произошло добровольное изменение, необходимо сгенерировать новое значение ETag. Поэтому ETags аналогичны отпечаткам пальцев и могут также использоваться некоторыми серверами для отслеживания. Сравнение ETag позволяет быстро определить, изменился ли этот ресурс, но его также можно сохранить навсегда за счет отслеживания серверов.
грамматика:
ETag: "<etag_value>"
Пример
ETag: "<5c6ccc12-1d45>"
Последнее изменение
Lat-Modified — это заголовок ответа, содержащий дату и время изменения ресурса, определенного исходным сервером. Его часто используют в качестве средства проверки, чтобы определить, соответствуют ли полученные или сохраненные ресурсы друг другу. Это запасной механизм, поскольку он менее точен, чем ETag. Это поле будет использоваться условными запросами, содержащими заголовки If-Modified-Since или If-Unmodified-Since.
грамматика
Последнее изменение: <имя дня>, <день>, <месяц>, <год>, <час>: <минута>: <секунда> GMT
Пример
Последнее изменение: Интернет, 20 февраля 2019 г., 03:40:02 GMT
Дата
определение:
Дата — это общий заголовок, содержащий дату и время создания сообщения.
грамматика
Дата: <имя дня>, <день>, <месяц>, <год>, <час>: <минута>: <секунда> GMT
Пример
Дата: вторник, 17 февраля 2019 г., 03:40:02 по Гринвичу
Положение дел
определение
Коды состояния ответа HTTP указывают, успешно ли выполнен конкретный HTTP-запрос. Ответы разделены на пять категорий: информационные ответы (100–199), успешные ответы (200–299), редиректы (300–399), ошибки клиента (400–499) и ошибки сервера (500–599).
Пример
Статус: 200
Как включить и настроить сжатие gzip
выгода
Сжатие текста (HTML/CSS/JS)
Без сжатия нетекстовых файлов (jpg/gif/png)
Степень сжатия около 50% - 70%
Метод настройки
Конфигурация Nginx: файл nginx.conf добавляет gzip
Конфигурация Apache: AddOutputFilterByType и AddOutputFilter.
Обнаружение достоверности
Заголовок ответа Проверьте, есть ли Content-Encoding: gzip, что означает, что на сервере включен gzip.
7. HTTPS: как включить HTTPS для всего сайта.
основная концепция
HTTPS, протокол передачи гипертекста Secure, представляет собой протокол передачи для безопасной связи в компьютерных сетях.
HTTPS обменивается данными через HTTP, но для шифрования данных использует SSL/TLS.
Основная цель HTTPS — обеспечить аутентификацию личности сервера и защитить конфиденциальность и целостность данных.
Принцип работы
Браузер инициирует HTTPS-запрос
Сертификат передачи
Браузер анализирует сертификат
Отправлять зашифрованную информацию
Сервер расшифровывает информацию
Передача зашифрованной информации
Браузер расшифровывает информацию
преимущество
SEO
Безопасность
осуществлять
Сертификат покупки у дилера
GoGetSSL
SSLs.com
SSLmate.com
Сертификат местного испытания
Локальная установка HomeBrew: Brew install mkcert
Установите корневой сертификат локально: $ mkcert --install
Создать подпись локально: $mkcert 123.com //Создать сертификат для 123.com
Локальная конфигурация nginx
8. HTTP-2. Каковы преимущества обновления HTTP-2? Как обновиться?
Концепции HTTP/2
HTTP/2 (протокол передачи гипертекста версии 2, первоначально называвшийся HTTP 2.0), называемый h2 (зашифрованное соединение на основе TLS/1.2 или выше) или h2c (незашифрованное соединение), является второй основной версией версии протокола HTTP.
Преимущества HTTP/2
Передача данных в двоичном формате
Мультиплексирование, позволяющее выполнять несколько запросов через одно соединение HTTP/2.
Сжатие заголовка, небольшой объем передачи
Server Push: сервер может быстрее передавать ресурсы клиенту.
Преимущества сайтов HTTP/2
Может снизить нагрузку на сервер
Улучшите скорость доступа к сайту
Обеспечьте безопасность вашего сайта
Включить HTTP/2 в Nginx
Обновление OpenSSL: версия $ openssl
Перекомпилировать
$ cd nginx-xxx
$ ./configure --with-http_ssl_module --with-http_v2_module
$ make && make install
Проверьте HTTP/2
Проверьте в браузере, нет ли там маленького зеленого замочка.
Скриншот запроса браузера
3. DNS: Каковы основные методы оптимизации DNS?
определение
Система доменных имен — это распределенная база данных, которая сопоставляет доменные имена и IP-адреса веб-сайтов друг с другом, что упрощает доступ в Интернет.
Обработка клиентов
DNS-модуль Android (okhttp)
Поддерживает HTTP/2. HTTP/2 поддерживает параллелизм в одном TCP-соединении, используя технологию мультиплексирования для отправки или получения данных путем одновременной отправки нескольких запросов по одному соединению.
Если HTTP/2 недоступен, технология повторного использования пула соединений также может значительно сократить задержку.
Поддерживает GZIP для сжатия размера загрузки.
Соответствующее кэширование позволяет полностью избежать повторных сетевых запросов.
Если на сервере настроено несколько IP-адресов, то при сбое первого IP-соединения OkHttp автоматически попытается использовать следующий IP-адрес.
Модуль DNS iOS (собственная разработка)
При запуске приложения оно кэширует все доменные имена и IP-адреса, которые могут использоваться, и обрабатывает их асинхронно. Клиенту не требуется получать кэшированные результаты.
Если в кеше есть кеш для этого доменного имени, кешированный IP-адрес будет возвращен напрямую.
Если этого доменного имени нет в кеше, повторите попытку к HTTPDNS-СЕРВЕРУ, и результат будет возвращен в этом обратном вызове.
Фронтальная обработка
Ограничение параллелизма браузера, распределение по нескольким доменным именам
Пользовательский доступ: Java, PHP и другие интерфейсы API.
Страницы и стили: HTML/CSS/JS.
Картинки: jpg, png, gif и т.д.
2. CDN: Как правильно настроить кэш CDN?
определение
Сеть доставки контента (CDN) использует ближайший к каждому пользователю сервер для более быстрой и надежной отправки файлов в сеть распространения пользователей.
преимущество
Ускорение: пользователям будут назначены более близкие и плавные серверные узлы для передачи данных пользователям.
Низкая стоимость: серверы размещаются в разных местах, что снижает межсетевой трафик и снижает затраты на полосу пропускания.
Высокая доступность: при выходе из строя сервера автоматически вызываются серверы в близлежащих регионах.
CDN возвращается к исходному состоянию
Возврат к источнику означает, что когда браузер обращается к статическим файлам в кластере CDN, срок действия кэша файлов истекает и он напрямую проникает в кластер CDN для доступа к исходному компьютеру.
CDN-кеш
Кэш уровня 3: локальный кеш браузера, кеш пограничных узлов CDN, кеш исходного сайта CDN.
Настройки кэша: если время кэширования установлено слишком мало, кэш пограничного узла CDN часто выходит из строя, что приводит к частым возвратам источника, увеличению нагрузки на исходный сайт, а доступ замедляется, если время кэширования установлено слишком долго, файлы обновляются; работают медленно, и локальный кеш пользователя не может быть своевременно обновлен. Так что это зависит от деловой ситуации;
Время кэширования различных типов статических ресурсов
HTML: 3 минуты
JS, CSS: 10 минут, 1 день, 30 дней
Выпуск CDN в оттенках серого
Принцип: В некоторых регионах и у некоторых операторов в некоторых регионах сначала будут освобождены статические ресурсы. После проверки они будут освобождены в полном объеме.
Реализация: Что касается доменных имен, настройте специальные VIP для разрешения городов и операторов, которые должны быть переведены в оттенки серого, с точки зрения компьютеров исходного сайта, настройте отдельные компьютеры исходного сайта для городов в оттенках серого и операторов для городов и операторов в оттенках серого; эти уникальные машины
CDN готовится к большой акции
Увеличение пропускной способности компьютерного зала
Увеличение трафика оператора
Аварийное восстановление: время кэширования приложения CDN установлено от 10 минут до 1 часа и будет восстановлено после основного повышения.
1. Гибридное развитие
Знакомство с сутью и преимуществами мини-программ
Зрение
Всегда под рукой: пользователи могут открыть приложение путем сканирования или поиска.
Используйте его и вперед: не беспокойтесь об установке слишком большого количества приложений.
Технические преимущества
H5 имеет более низкий порог разработки, чем разработка приложений.
Лучше, чем H5, близко к нативному опыту
Богатые встроенные возможности, такие как камера, местоположение, сеть, хранилище и т. д.
Верхний раскрывающийся список, поиск, QR-код и другие входы просты в использовании и исчезают после использования, что просто и удобно.
Не нужно скачивать как приложение, просто откройте и выйдите напрямую, поддержите горячее обновление.
базовое ядро
Деловой фон
Сторона платформы приложения
Монетизация трафика
Мини программа экология
Рынок распространения классных приложений
Сторона корпоративного приложения
Мобильный трафик иссякает, новый трафик – это бонус
Решить некоторые проблемы сложности с привлечением клиентов и снизить затраты на привлечение новых клиентов
Значительно сократить затраты на разработку
Больше возможностей для проб и ошибок в бизнесе
Рекомендации по выбору
Первый выпуск: январь 2017 г. (мини-программа WeChat).
Запуск Github: закрытый исходный код
Сообщество активно: ОК
Компоненты: очень богатый
Кривая обучения: очень низкая
Собственная производительность: ОК
Комплексные предложения: платформенные продукты теперь обеспечивают вывод трафика для продавцов; несколько приложений обеспечивают совместимость бизнеса по сравнению с RN и Flutter, более рекомендуются небольшие программы;
Введение в ядро Flutter и его преимущества
Зрение
Удобный набор инструментов для создания красивых проектов, позволяющий рисовать пиксели в любом месте экрана.
Технические преимущества
Напишите один раз и разверните на каждом терминале: Интернет, Android/iOS, Mac/Linux/Windows, ОС Fuchsia.
Нижний уровень использует графический движок Skia, а производительность графики сравнима с собственными приложениями.
Интерфейс, подобный полноэкранному приложению или 2D-игре.
Быстрый, использует собственные двоичные файлы ARM, заранее компилируется, JVM не требуется.
основополагающие принципы
Рекомендации по выбору
май 2017 г.
Начало Github: 8.16w (конец 2019 г.)
Сообщество в целом активное.
Компоненты представляют собой специализированные виджеты и недостаточно богаты.
Кривая обучения относительно высока, нужно снова познакомиться с языком Dart.
Родной работает лучше всего
Комплексные предложения: учитывая производительность, бизнес ориентирован на несколько терминалов, а в команде приложения достаточно людей, рекомендуется выбрать