Производительность

Оптимизация производительности в .NET Core 2.1

dotNET  /  Производительность dotNET  /  Performance

Скоро в свет выйдет .NET Core 2.1. Осталось сделать меньше 1% задач. Конечно, оставшиеся 5% проекта занимают 95% времени, но будем оптимистами :)

Далее будет краткое резюме статьи Performance Improvements in .NET Core 2.1.

Если вы готовы прочитать эту интересную, но огромную статью — прочитайте. Я всё-таки пристрастен и расскажу о том, что интересно лично мне. А если не хотите читать и короткую…

TL&DR; Значительно (в 1.5-2 раза) улучшена производительность многих вещей, в том числе:

  • Структуры (Value types). Это ключевые изменения, многие оптимизации сделаны за счет Span<T> и Memory<T>.
  • Сравнения. Также оптимизированы сравнения внутри Dictionary .
  • Строки — оптимизированы не только сравнения, но и такие штуки как ToLower, Format и Parse.
  • Потоки, блокировки и async/await.
  • Socket, SslStream и HttpClient.

Далее немного про некоторые оптимизации.

Про производительность .NET, React, Regex

Производительность Performance  /  dotNET  /  React

С удовольствием прочитал статью High-performance .NET by example: Filtering bot traffic. Кстати, к ботам статья почти не имеет отношения, а вот к улучшению производительности — очень даже. В частности, есть примеры использования BenchmarkDotNet, PerfView, Intel VTune Amplifier, ILSpy, WinDbg и unsafe-кода.

Книга “High Performance Browser Networking” и TCP-прокси для тестирования сети

Производительность Performance  /  Network

Буквально пару слов об online-книге High Performance Browser Networking — не читал, но одобряю :) Точнее, посмотрел одну из глав (бегло). Познавательно и по делу.

А toxiproxy — это набор от Shopify для тестирования сети в разнообразных условиях. Состоит из TCP-прокси (на Go) и клиентских библиотек для подключения (Ruby, Go, Python, .NET, PHP, Node, Java).

Два простых способа сделать пользователей счастливее

UX  /  Вёрстка  /  Производительность Design  /  UX  /  Performance  /  YarFullStack

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

Как вы уже знаете, мне нравятся быстрые сайты. Летом я уже делился набором инструментов для оптимизации сайтов. Однако, есть пара несложных приёмов, первый из которых эти инструменты вряд ли когда-нибудь догадаются посоветовать.

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

Улучшаем производительность npm-install нестандартным способом

Производительность Node.js  /  Performance

В последнее время всё чаще сталкиваюсь с разработкой на node.js. На работе использую версию LTS, по понятным причинам. Дома поставил 6.3.1.

Идеологически мне больше нравится третий npm — всё-таки хранить дубликаты модулей, особенно когда их много — не здорово. Кстати, для старой версии ноды есть модуль npm3 — позволяет (в лучших традициях партизан) использовать новый npm при установленном старом (только команды будут npm3 install и т.п.). Но сегодня речь не об этом.

Инструменты оптимизация сайтов (в основном, скорости загрузки)

Производительность Performance  /  SEO  /  Tools

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

Да, вероятно я перфекционист, однако я не могу спокойно смотреть на мегабайтные картинки и сайты, загружающиеся дольше секунды при нормальном соединении. Правда, этот сайт я пока не оптимизировал на все 100%, но в этом случае я рисковал начать писать сюда в следующем году :)