Модернизация RPG (iSeries) с использованием JTOpen - что возможно?

89
15

Мы будем в ближайшем будущем внедрять решение для модернизации наших приложений iSeries
написанные как программы RPG с некоторыми хранимыми процедурами, и наш предпочтительный способ - использовать последнюю и самую большую из того, что Java может предложить в этом пространстве.


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


С этим как фоном, я думаю о следующем, как арка высокого уровня


    Установите IBM JRE и используйте возможности JTOpen для вызова программ RPG и в некоторых случаях непосредственно вызывайте хранимые процедуры, выполняемые в DB2
    У Tomcat есть современное веб-приложение, построенное с использованием Grails и других фреймворков (Camel, Smooks), чтобы обеспечить логический уровень приложения, который заполнял бы любые медиации, преобразования, необходимые для того, чтобы старые функции предлагались пользователю из браузера

Вопросы -


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

спросил(а) 2020-04-04T01:31:04+03:00 3 месяца назад
1
Решение
68

Будьте очень осторожны с вызовом RPG из Java, потому что RPG не является потокобезопасным без каких-либо изменений.

ответил(а) 2020-04-04T01:50:01.929050+03:00 3 месяца назад
55

Когда я был на COMMON, лучшим продуктом, который я ощущал на рынке, был Глубокий пользовательский интерфейс. Есть несколько других от различных поставщиков. Большинство из этих продуктов не используют Java. Java на i, как правило, медленный. (Есть вещи, которые можно сделать, чтобы сделать это быстрее, но родной всегда быстрее.) Вы заплатите цену за эти продукты, но представьте себе, сколько времени вам потребуется, чтобы сделать это самостоятельно. Для вышеизложенного я был указан в диапазоне $20 + тыс. Но, как и все продукты i, цены сильно различаются в зависимости от системы.


Чтобы ответить на ваши вопросы:


    Я занимаюсь исследованиями по модернизации по мере того, как позволяет время, продукты еще не были там (в то время, когда я смотрел), чтобы использовать его для того, что мы хотели использовать для него (до COMMON 2011). Теперь похоже, что это может сработать.
    Это действительно зависит от вашей системы. Более новая система будет иметь меньше проблем, чем более старая система. Интернет всегда будет медленнее, чем зеленый экран. Рукопожатие людей не понравится. Руководителям и молодым людям это понравится.
    Ваша медленная точка запускает бизнес-логику. Не имеет значения, из какого сервера идет HTML.

ответил(а) 2020-04-04T01:31:04+03:00 3 месяца назад
54

Я нашел, что для всех практических целей AS/400 ведет себя как поле AIX, которое видно из кода Java, и вы должны использовать jt400 (jtOpen) для связи с AS/400, такими как очереди данных, файлы и т.д. Это работает очень хорошо, но медленность вызова JVM давит на Java решения на долгое время.


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

В V6R1 Java 6 доступен и работает очень хорошо в редакции "новой технологии". Затем вы можете запускать практически все решения на основе Java, включая такие веб-серверы, как Jetty. Обратите внимание, что Java по умолчанию использует код 819 при обращении к файлам IFS напрямую. Клиенты Windows, использующие AS/400 в качестве сетевого диска, используют совместимую кодовую страницу.

ответил(а) 2020-04-04T01:31:04+03:00 3 месяца назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема