У нас есть одна настраиваемая среда Java, основанная на EJB. Используя эту структуру в качестве зависимости (означает расширение функциональности), у нас есть несколько приложений (поэтому косвенно, эти приложения также являются EJB). Это приложение размещено на одном предварительном сервере jboss.
Теперь мы хотим удалить этот предварительный сервер и переместить это приложение на AWS lambda, поскольку это приложение используется только один раз в день (я имею в виду вызовк этому приложению приходит только один раз в день). Более того, критерии не касаются существующего кода приложения. мы можем написать несколько классов для добавления лямбда-обработчика или чего-то еще, но мы можем изменить существующий код приложения или архитектуру. (некоторые ограничения, которые я действительно хотел бы переписать, но без опций).
Может кто-нибудь подсказать, возможно ли запустить JAVA-приложение на основе EJB (которое сегодня размещается на предварительном jboss) из AWS-lambda? ? (я имею в виду, можем ли мы разместить его на лямбде?).
Это отправная точка этого приложения EJB:
package packagename;
//various imports here
import javax.ejb.*;
import javax.jms.MessageListener;
@MessageDriven(messageListenerInterface=MessageListener.class,
activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty(propertyName = "destination", propertyValue = "java:global/queue/queuename"),
@ActivationConfigProperty(propertyName="hostName", propertyValue="${jms.queue.manager.host}"),
@ActivationConfigProperty(propertyName="port", propertyValue="${jms.queue.manager.port}"),
@ActivationConfigProperty(propertyName="channel", propertyValue="${jms.queue.manager.channel}"),
@ActivationConfigProperty(propertyName="queueManager", propertyValue="${jms.queue.manager.name}"),
@ActivationConfigProperty(propertyName="useJNDI", propertyValue="true")
})
@TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
public class BatchInvoker extends BatchInvokerServiceMDB {
@EJB
public ImportPlannedCoursesJob importPlannedCoursesJob;
}