LINUX.ORG.RU
ФорумTalks

За что я не люблю свободное ПО


0

1

Последнее время на сервере наблюдалась странная картина: CPU поднимался до 100% и не опускался (вебприложение на томкате). Лечилось только ребутом томката. Начал разбираться, включил JMX, подключился JVisualVM, посмотрел на 100% heap, понял, что GC отчаянно пытался освободить удивился тому, что нету OOME на сервере и стянул себе на машину heap dump. Тут начинается самое интересное:

Я пытаюсь открыть этот дамп с поомщью JVisualVM - первый раз падает с OOME. Окей, ставим -J-Xmx2048 - тупит полчаса, потом таки грузит этот дамп, при попытке посмотреть иерархию объектов - опять тупняк на полчаса, через полчаса резолвинга ссылок - вопрос на экране «Хотите ли вы подсчитать суммарный вес обьектов? Это может занять долгое время на больши дампах.» (размер дампа - 1.5Гб). Первый раз я попробовал - через полчаса убил процесс JVisualVM, не дождался. (Комп, смею заметить не сильно древний - 4х-ядерник с 4 гигами памяти, Ubuntu 10.04 x64). Заново полчаса загрузка, полчаса резолвинг ссылок (при чем все остальные приложения пришлось выключить, ибо система просто фризилась и свопилась). Забил.

Получил триальный ключ для YourKit Java Profiler 9.0.7, загрузил в него дамп и через 3 (!!!!) минуты получил полную картину по памяти и сразу нашелся источник проблем.

Я приверженец свободного ПО, но его качество действительно отвратительно. Бесплатные приложения - это все лишь codebase (при условии opensource-ности), но до уровня работающих продуктов мало кто дотягивает.

★★★☆

ах да, еще небольшая мелочь - YJP при закрытии сохраняет свой отдельный файл индекса для загруженных дампов, что при открытии во второй и следующие разы приносит огромный профит.

JFreeM ★★★☆
() автор топика

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

Terrens
()

А теперь сравни дебаг дампов ОС Windows и OC Linux/FreeBSD :)

gh0stwizard ★★★★★
()

Это твоя лень виновата. Надо было найти нативный аналог, а не жава версию. А претензии по поводу работы жава программ обращайся к Ораклу.

xcreatepixmap
()
Ответ на: комментарий от xcreatepixmap

> Это твоя лень виновата. Надо было найти нативный аналог, а не жава версию. А претензии по поводу работы жава программ обращайся к Ораклу.

Жги еще!

Fredrik
()
Ответ на: комментарий от Terrens

> Я всегда говорил, что опенсорцу нужна железная рука, которая возьмёт разрабов за яйца и заставит их работать качественно, а не for fun. Но тогда разрабы захотят оплаты своего труда, и опенсорц придётся сделать проприетарным.

Гораздо эффективней будет невидимая рука старика Смита. Если более просто - всепоглощающее желание ДЕНЕГ.

PavelR
()

Типа, никогда не видел коммерческих программ, в которых безвестные кодеры для массива в цикле вызывают Create(), который в цикле вызывает FindParent() по тому же самому массиву?

триальный ключ


Приходи, когда купишь ;-)

queen3 ★★★★★
()

Я люблю opensource, потому что если вдруг приспичит, то можно раскопать исходники и пофиксить проблему. Пользовался этим не один раз.

mv ★★★★★
()
Ответ на: комментарий от queen3

> для массива в цикле вызывают Create(), который в цикле вызывает FindParent() по тому же самому массиву?

спасибо, поржал :)

isden ★★★★★
()
Ответ на: комментарий от isden

Ооо... я бы ещё и не такое рассказал, но это же не про опен-сорц, не интересно ;-)

queen3 ★★★★★
()
Ответ на: комментарий от Terrens

> Я всегда говорил, что опенсорцу нужна железная рука, которая возьмёт разрабов за яйца и заставит их работать качественно, а не for fun. Но тогда разрабы захотят оплаты своего труда, и опенсорц придётся сделать проприетарным.

Проприетарным-то зачем? Пусть работают централизованно во всяких НИИ за вполне себе зарплату. Нужно решение - за его разработку и доводку до ума платятся деньги. Все счастливы.

tx
()
Ответ на: комментарий от Terrens

> Я всегда говорил, что опенсорцу нужна железная рука, которая возьмёт разрабов за яйца

Титановые яйца. Наш ответ железным рукам.

shimon ★★★★★
()

>но до уровня работающих продуктов мало кто дотягивает

видел я эти ваши проприетарные работающие продукты. Каждый раз, как подключаюсь к одному из вендовых серваков, хочется плакать. От любой нагрузки это произведение индусокода трещит по швам. После нее даже бздя кажется раем, хоть и с демонами.

nu11 ★★★★★
()
Ответ на: комментарий от Lighting

Думается, там не в яве таки дело.

Вообще, не нужно расслабляться разработчику, думая, что там сборщик мусора.

hibou ★★★★★
()

Раз на раз не приходится.

Могу рассказать про то, как одна проприетарная программа не могла открыть файл, а свободная открыла без проблем.

LinuxUser ★★★
()

А еще fold с юникодом не дружит.
2010 год.
Лучше б на мсдосе до сих пор сидел, честно.

Igron ★★★★★
()
Ответ на: комментарий от hibou

> Вообще, не нужно расслабляться разработчику ЯВЫ, думая, что там сборщик мусора

А если немного перефразировать - то дело в Яве.

queen3 ★★★★★
()
Ответ на: комментарий от JFreeM

Не подскажу, придётся тебе самому искать. Ведь томкат использовать невозможно, ибо

его качество действительно отвратительно. Бесплатные приложения - это все лишь codebase (при условии opensource-ности), но до уровня работающих продуктов мало кто дотягивает.

queen3 ★★★★★
()
Ответ на: комментарий от queen3

Ну почему же? Это как автомобили с ручной коробкой передач и с автоматической. Приемы вождения разные. Никто же не говорит, что автомат не нужен.

hibou ★★★★★
()
Ответ на: комментарий от queen3

мое имхо - такие вещи, как томкат и джейбосс входят в число реально работающих продуктов.

JFreeM ★★★☆
() автор топика

Тебе еще не сказал, что тебе никто ничего не обязан? Дали набор, собирай из него сам что тебе надо. Если ты не смог собрать - значит руки не из того места растут. Увы, это опенсорс детка, во всей красе. ;-)

Pantserovik
()
Ответ на: комментарий от queen3

> Нет, это как автомобиль с плохой коробкой автомат. Хинт: а есть и с хорошей ;-)

это ты про ASP.NET сейчас, да? :)

isden ★★★★★
()

Так ты о свободных или о бесплатных разработках?

Quasar ★★★★★
()
Ответ на: комментарий от queen3

с каких это пор Smalltalk стал фреймворком?

isden ★★★★★
()
Ответ на: комментарий от queen3

>Типа, никогда не видел коммерческих программ, в которых безвестные кодеры для массива в цикле вызывают Create(), который в цикле вызывает FindParent() по тому же самому массиву?
Это о чём?

Booster ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.