Как стать автором
Обновить

Комментарии 12

Для сравнения сериализации JSON в Go и .NET в контексте веб-приложений вам сюда. Повторяемая методика тестирования и возможность любому желающему взять и улучшить решение на конкретном языке/технологии вызывают больше доверия к данным бенчмаркам за счёт исключения факторов ангажированности и/или кривых рук бенчмаркающего.


Собственно разница выходит не "12%", а меньше 2% (1,306,423 vs 1,286,433)

Я почему то более чем уверен что .net побьет go если тесты techempower запустить на винде.

Автор использует стандартный Json.Net, а пример из бенчмарка какую-то странную библиотеку: https://github.com/TechEmpower/FrameworkBenchmarks/blob/master/frameworks/CSharp/beetlex/PlatformBenchmarks/json.cs


Но да, надо бы переписать на неткор 3.0 и справнить.

Интересно было бы сравнить с .NET Core 3.0 и System.Text.JSON. По ссылкам обещают ускорение:


Description  RPS    CPU (%) Memory (MB)
Newtonsoft.Json – 500 B 136,435 95  172
System.Text.Json – 500 B    167,861 94  169
Newtonsoft.Json – 2.4 KB    97,137  97  174
System.Text.Json – 2.4 KB   132,026 96  169
Newtonsoft.Json – 40 KB 7,712   88  212
System.Text.Json – 40 KB    16,625  96  193
Я вообще был настроен в статье увидеть .net core 2.2 и .net core 3.0, т.к. новый сериализатор — одно из ключевых изменений нового фреймворка.
Разница 10-15%, то есть для реальных приложений разницы практически нет и все будет упираться в кривизну рук разработчиков, то есть при выборе языка/платформы на эту характеристику (а именно скорость работы в этой конкретной задачи) можно не смотреть.

Мне вот тоже всё больше кажется, что не сильно эта мифическая величина "производительность" и важна. Важнее наличие рабочей команды под стэк проекта. А докинуть 1-2 сервера — это недорого.

А во что упёрлись бенчмарки и там и там? Стектрейсы есть? Дампы памяти есть? Данные по кэшам есть? Короче, за счёт чего одно решение быстрее другого? Анализ не сделан, статья бессмысленна.

не понятно почему заминусили, вероятно раз результат совпадает с ожидаемым то нефиг смотреть почему, а то вдруг выяснится что тестировали криво и немного изменив условия всё поменяется
непонятно есть ли смысл, но можно ещё немного ускорить замени easyjson на
github.com/francoispqt/gojay
Наверное, нет.
В первом комментарии дали ссылку на бенчмарки по json сериализации. Топовое решение на Go c easyjson, ближайшее решении с gojay проигрывает ему 1.4%.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий