home.social

#jsonserializeroptions — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #jsonserializeroptions, aggregated by home.social.

fetched live
  1. Бенчмаркая System.Text.Json: те же данные, те же настройки, до ×4,3 разницы

    В документации к PropertyNameCaseInsensitive есть предупреждение про накладные расходы, но не сказано, когда они появятся. Замерил на четырёх машинах, трёх рантаймах и трёх размерах входного JSON: пока через настройки идёт один регистр ключей, флаг не добавляет ничего — 0,92–1,09. Политика именования camelCase тоже. Разницу до ×4,3 даёт другое: какие ещё написания этих ключей прошли через настройки раньше. Два экземпляра JsonSerializerOptions, созданные через new с одинаковыми полями, делят один кеш имён. Внутри: пять историй с таблицами по четырём машинам, листинги из dotnet/runtime, предел кеша в 64 записи и веб-настройки, на которых эта разница не видна.

    habr.com/ru/articles/1065092/

    #SystemTextJson #JsonSerializerOptions #PropertyNameCaseInsensitive #десериализация #кеш #производительность #бенчмарк #BenchmarkDotNet #NET_10 #оптимизация

  2. Бенчмаркая System.Text.Json: те же данные, те же настройки, до ×4,3 разницы

    В документации к PropertyNameCaseInsensitive есть предупреждение про накладные расходы, но не сказано, когда они появятся. Замерил на четырёх машинах, трёх рантаймах и трёх размерах входного JSON: пока через настройки идёт один регистр ключей, флаг не добавляет ничего — 0,92–1,09. Политика именования camelCase тоже. Разницу до ×4,3 даёт другое: какие ещё написания этих ключей прошли через настройки раньше. Два экземпляра JsonSerializerOptions, созданные через new с одинаковыми полями, делят один кеш имён. Внутри: пять историй с таблицами по четырём машинам, листинги из dotnet/runtime, предел кеша в 64 записи и веб-настройки, на которых эта разница не видна.

    habr.com/ru/articles/1065092/

    #SystemTextJson #JsonSerializerOptions #PropertyNameCaseInsensitive #десериализация #кеш #производительность #бенчмарк #BenchmarkDotNet #NET_10 #оптимизация

  3. Бенчмаркая System.Text.Json: те же данные, те же настройки, до ×4,3 разницы

    В документации к PropertyNameCaseInsensitive есть предупреждение про накладные расходы, но не сказано, когда они появятся. Замерил на четырёх машинах, трёх рантаймах и трёх размерах входного JSON: пока через настройки идёт один регистр ключей, флаг не добавляет ничего — 0,92–1,09. Политика именования camelCase тоже. Разницу до ×4,3 даёт другое: какие ещё написания этих ключей прошли через настройки раньше. Два экземпляра JsonSerializerOptions, созданные через new с одинаковыми полями, делят один кеш имён. Внутри: пять историй с таблицами по четырём машинам, листинги из dotnet/runtime, предел кеша в 64 записи и веб-настройки, на которых эта разница не видна.

    habr.com/ru/articles/1065092/

    #SystemTextJson #JsonSerializerOptions #PropertyNameCaseInsensitive #десериализация #кеш #производительность #бенчмарк #BenchmarkDotNet #NET_10 #оптимизация