home.social

#apache_poi — Public Fediverse posts

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

fetched live
  1. Один язык документов, несколько форматов: как я отделил layout engine от PDFBox и Apache POI

    Долгое время GraphCompose выглядел как PDF-движок. Но архитектурно PDF никогда не должен был быть центром системы: разработчик описывает документ на одном языке, движок один раз рассчитывает layout, а подключаемые backend’ы переводят готовую геометрию в нативные объекты нужного формата.

    habr.com/ru/articles/1065080/

    #GraphCompose #Java #document_generation #layout_engine #PDF #PPTX #PDFBox #Apache_POI #open_source #backend

  2. Один язык документов, несколько форматов: как я отделил layout engine от PDFBox и Apache POI

    Долгое время GraphCompose выглядел как PDF-движок. Но архитектурно PDF никогда не должен был быть центром системы: разработчик описывает документ на одном языке, движок один раз рассчитывает layout, а подключаемые backend’ы переводят готовую геометрию в нативные объекты нужного формата.

    habr.com/ru/articles/1065080/

    #GraphCompose #Java #document_generation #layout_engine #PDF #PPTX #PDFBox #Apache_POI #open_source #backend

  3. Один язык документов, несколько форматов: как я отделил layout engine от PDFBox и Apache POI

    Долгое время GraphCompose выглядел как PDF-движок. Но архитектурно PDF никогда не должен был быть центром системы: разработчик описывает документ на одном языке, движок один раз рассчитывает layout, а подключаемые backend’ы переводят готовую геометрию в нативные объекты нужного формата.

    habr.com/ru/articles/1065080/

    #GraphCompose #Java #document_generation #layout_engine #PDF #PPTX #PDFBox #Apache_POI #open_source #backend

  4. Шёл за утечкой памяти, нашёл утечку диска: SXSSFWorkbook без dispose() в Apache POI

    Меня зовут Игорь Симаков, работаю engineering manager’ом и руковожу командами разработки На одном из наших сервисов, который работает с XLSX-файлами, прилетел production-алерт на высокое потребление памяти. Стандартный P3, обычно решается рестартом. Пошёл смотреть поды и нашёл проблему, к памяти отношения не имеющую, но представляющую больший риск, чем сам алерт. Об этом и расскажу ниже: чем «утечка диска» отличается от «утечки памяти», как мы наткнулись на грабли в Apache POI и как закрыли их на уровне архитектуры

    habr.com/ru/articles/1039862/

    #apache_poi #утечка_памяти #kubernetes #java #rss #archunit #spring_boot #производительность

  5. Шёл за утечкой памяти, нашёл утечку диска: SXSSFWorkbook без dispose() в Apache POI

    Меня зовут Игорь Симаков, работаю engineering manager’ом и руковожу командами разработки На одном из наших сервисов, который работает с XLSX-файлами, прилетел production-алерт на высокое потребление памяти. Стандартный P3, обычно решается рестартом. Пошёл смотреть поды и нашёл проблему, к памяти отношения не имеющую, но представляющую больший риск, чем сам алерт. Об этом и расскажу ниже: чем «утечка диска» отличается от «утечки памяти», как мы наткнулись на грабли в Apache POI и как закрыли их на уровне архитектуры

    habr.com/ru/articles/1039862/

    #apache_poi #утечка_памяти #kubernetes #java #rss #archunit #spring_boot #производительность

  6. Шёл за утечкой памяти, нашёл утечку диска: SXSSFWorkbook без dispose() в Apache POI

    Меня зовут Игорь Симаков, работаю engineering manager’ом и руковожу командами разработки На одном из наших сервисов, который работает с XLSX-файлами, прилетел production-алерт на высокое потребление памяти. Стандартный P3, обычно решается рестартом. Пошёл смотреть поды и нашёл проблему, к памяти отношения не имеющую, но представляющую больший риск, чем сам алерт. Об этом и расскажу ниже: чем «утечка диска» отличается от «утечки памяти», как мы наткнулись на грабли в Apache POI и как закрыли их на уровне архитектуры

    habr.com/ru/articles/1039862/

    #apache_poi #утечка_памяти #kubernetes #java #rss #archunit #spring_boot #производительность