Евгений Сайты › Peppers Сбер ID
Сайты, SEO и GEO, реклама, чат-боты, ИИ и дизайн | Москва
Рейтинг
9 371
№ 111 в каталоге
Отзывы
Профессионализм
9/10
Коммуникация
9 /10
Город
Москва
Опыт работы
11 лет
На сайте с
2016 года
Юридический статус
Самозанятый
Freelance.Boutique
Премиум-сервис для лучших исполнителей

Перенос Java-серверов регионального банка с Oracle WebLogic Server и WebSphere на Tomcat и Jboss: внутренние сервисы переехали без потери заявок

Используемые навыки Jboss Oracle WebLogic Server Tomcat WebLogic WebSphere

Описание

Внутренние Java-сервисы регионального банка в России — кредитные заявки, справочники, отчёты — переехали с коммерческих серверов приложений на открытые. Перенос выполнил Евгений Росляков: он делает сайты и веб-системы с 2016 года, оформлен как самозанятый, работает по договору и готовит закрывающие документы для юридических лиц. Встречается с заказчиками в Москве, всё остальное делает удалённо.

У банка набралось около десятка Java-приложений. Они росли много лет и жили на двух серверах приложений. Часть работала на Oracle WebLogic Server, часть на IBM WebSphere. Лицензии и техподдержка обоих продуктов для банка недоступны. Пока всё крутится, это терпимо, но обновить сервер, закрыть уязвимость или добавить мощности уже нельзя, и это вопрос времени.

Сложность в том, что приложения привязаны к серверам не только названием. Источники данных заданы в консоли WebLogic. Имена JNDI вшиты в код. Рядом лежат дескрипторы, которые понимает только свой сервер. В приложениях с EJB есть очереди JMS, а у WebSphere они устроены иначе, чем у соседа.

Требования банка были жёсткими. Кредитные заявки терять нельзя. Ночных окон на переезд каждого приложения мало. Если что-то пойдёт не так, всё должно вернуться как было. И ни один шаг нельзя пробовать на живых данных клиентов.

Решение

Сначала сделал инвентаризацию. Для каждого приложения выяснил, на чём оно держится: только сервлеты и JSP или ещё EJB и JMS, какие библиотеки подтянуты, что настроено вне кода. По этому списку приложения разошлись на два лагеря.

Лёгкие веб-приложения, в основном справочники и отчёты, поехали на Tomcat. Полноценный сервер приложений им не нужен: хватает контейнера сервлетов, источника данных и нормальной настройки журналов.

Приложения с EJB и JMS, прежде всего кредитные заявки, получили Jboss, а точнее его открытую версию WildFly. В ней есть и EJB, и обмен сообщениями через встроенный брокер, так что структура приложений почти не менялась.

Дальше пошла самая нудная и самая важная часть. Всё, что было заточено под WebLogic и WebSphere, переписал под новые серверы. Это пулы соединений и источники данных, имена JNDI, дескрипторы вроде weblogic.xml и ibm-web-bnd.xml, очереди, порядок загрузки классов. Вызовы закрытых расширений WebLogic заменил стандартными. Конфликты библиотек разбирал руками: в старых сборках они копились годами.

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

Переключал по одному приложению в нерабочее время. Для каждого заранее написал короткий план отката: старый сервер остаётся нетронутым и поднимается обратно, пока не закончится период наблюдения.

Результат

Внутренние сервисы банка работают на открытых серверах и больше не зависят от лицензий на WebLogic и WebSphere. Сотрудники переезд почти не заметили: те же экраны, те же заявки, при переключении ничего не потерялось.

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

Есть и неудобная сторона. Административные консоли у Tomcat и Jboss скромнее прежних, и то, что раньше делалось кнопкой, теперь делается конфигурацией. Администраторам придётся привыкать. Платной поддержки производителя нет, зато есть документация и сообщество, а обновления можно ставить, когда удобно банку.

Дальше стоит подтянуть версии самих приложений: часть из них до сих пор собирается под старые выпуски Java. Но это отдельный проект, и торопиться с ним не нужно.

Лицензия на сервер приложений не продлевается, а сервисы на нём должны работать дальше? Пишите мне через сайт freelance.ru и приложите перечень приложений и серверов. Отвечу, что отправить на Tomcat, а что на Jboss.

Оценили проект:

Другие проекты

Все проекты →
Дизайн и Брендинг Детская книга сказок о море от художника книги: раскадровка разворотов, глава-шторм в стиле манги, карикатура и мультфильм-трейлер, иллюстрации в Krita, герои без лиц
Детская книга сказок о море от художника книги: раскадровка разворотов, глава-шторм в стиле манги, карикатура и мультфильм-трейлер, иллюстрации в Krita, герои без лиц
13
Веб-разработка и IT IT для офиса инжиниринговой компании в Казахстане: Windows Server, Active Directory, Microsoft 365 и управление компьютерами через System Center
IT для офиса инжиниринговой компании в Казахстане: Windows Server, Active Directory, Microsoft 365 и управление компьютерами через System Center
12
Веб-разработка и IT Создание сайта для автора блога о путешествиях: один сайт на Strapi вместо TypePad, Ning, MotoCMS и Wix, перенос статей и 301-редиректы
Создание сайта для автора блога о путешествиях: один сайт на Strapi вместо TypePad, Ning, MotoCMS и Wix, перенос статей и 301-редиректы
17
ИИ и Нейросети Перенос отчётности агрохолдинга с Tableau, QlikView, Cognos, Hyperion и Crystal Reports в одну российскую BI-систему: единая модель данных и сверка цифр
Перенос отчётности агрохолдинга с Tableau, QlikView, Cognos, Hyperion и Crystal Reports в одну российскую BI-систему: единая модель данных и сверка цифр
13