Re: Большое и дорогое приложение с проблемами роста
От: wildwind Россия  
Дата: 20.09.13 07:05
Оценка:
Здравствуйте, Аноним, Вы писали:

>Все это работает как одно приложение и задеплоино на app-сервер. Стоит задача сделать так чтобы рост данных не провоцировал новые эксепшины и перформанс был небольшой. Все приложение никто переписывать не будет (бюджет), хотя логично было бы вынести batch-задачи в отдельное приложение. Для кэша используем хибернейт. Как лучше реинженирить это приложение чтобы избежать описанных проблем? Спасибо.


Для начала нужно провести анализ. Очевидно для этого тоже нужно выделить какой-никакой бюджет. Во многих случаях можно обойтись оптимизацией БД с минимальными исправлениями кода приложения. "Во многих" — это если при начальной разработке на архитектуру базы наплевали, или ее лепил тот же Java кодер, что и приложение. В общем, для начала пригласите специалиста по Ораклу для анализа производительности БД.

Если же у вас в базе все грамотно, нужно рассматривать другие варианты, которые обойдутся уже дороже. Например апгрейд железа, которое является узким местом. Часто это дисковая подсистема.

У Оракла есть много фишек для масштабирования, в том числе и не требующих переписывания кода приложения. Правда, большинство из них доступны только в EE, так что может потребоваться апгрейд лицензии. И в большинстве случаев также затраты на железо. Например перенос read-only нагрузки на стендбай-базу.

Но для начала я бы аккуратно выяснил насколько текущие проблемы на самом деле остры и мешают бизнесу. Если мешают, но не очень, и руководство вообще не готово выделять бюджет на оптимизацию, я бы даже не чесался.

P.S. Что такое "небольшой перформанс" :)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.