У меня есть библиотека JSon на GitHub https://github.com/jillesvangurp/jsonjджексон против JSON простой для потока разборе
Эта библиотека синтаксический анализатор на основе JSON простой, который использует класс обработчика, чтобы сделать всю работу по созданию экземпляров JSONObject, JsonArray, и JsonPrimitive, которые у меня есть в моей библиотеке.
Я видел, как люди публиковали различные тесты, предлагая, чтобы парсером Джексона было так же хорошо, как и с точки зрения производительности, и что json simple является одним из более медленных вариантов. Итак, чтобы увидеть, могу ли я повысить производительность, я создал альтернативный парсер, который использует API потокового трафика jackson и вызывает тот же обработчик, который я использовал для исходного анализатора. Это прекрасно работает с функциональной точки зрения и довольно просто.
Вы можете найти соответствующие классы здесь (JsonHandler, JsonParser и JsonParserNg): https://github.com/jillesvangurp/jsonj/tree/master/src/main/java/com/github/jsonj/tools
Однако, я не вижу каких-либо улучшений на различных тестов я побежал.
Итак, мой вопрос: должен ли я видеть какое-либо улучшение вообще, и если да, то почему? Мне кажется, что в потоковом режиме API, по крайней мере, обе библиотеки имеют схожую производительность.
Я был бы очень заинтересован в опыте других людей.
Не решение, ни ответ на ваш реальный вопрос, но по их собственным критериям, json-smart является самым быстрым из всех тестируемых, включая json-simple и jackson. https://code.google.com/p/json-smart/. Кроме того, он использует точно такой же интерфейс, как json-simple, поэтому перенос должен быть быстрым. Однако много комментариев на одном сайте говорят, что люди получают разные результаты, поэтому YMMV. – Colselaw
Спасибо, я тоже могу попробовать. –
Json-smart не быстрее, чем альтернативы в соответствии с любым общедоступным эталоном. Оценки, упомянутые на странице проекта, имеют недостатки, о которых свидетельствуют комментарии; включая использование странных данных ({«значение»: 123} и такое - действительно?). – StaxMan