С Java ScriptEngine (Groovy), как сделать его более производительным?

Я использую ScriptEngine в своем приложении, чтобы оценить некоторый клиентский код в моем приложении. Проблема в том, что он недостаточно эффективен, и мне нужно принять меры для улучшения времени исполнения. В настоящее время может потребоваться до 1463 мс (в среднем около 300 мс), чтобы оценить чрезвычайно простой скрипт, который в основном является заменой параметров в URL.

Я ищу простые стратегии для улучшения этой производительности, не теряя возможности сценариев.

Сначала я подумал о том, чтобы объединить объект ScriptEngine и использовать его повторно. Я вижу в спецификации, что он предназначен для повторного использования, но я не нашел никаких примеров того, как кто-то действительно делал это.

Есть идеи? Вот мой код:

ScriptEngineManager factory = new ScriptEngineManager();
GroovyScriptEngineImpl engine = (GroovyScriptEngineImpl)factory.getEngineByName("groovy");
engine.put("state", state;
engine.put("zipcode", zip);
engine.put("url", locationAwareAd.getLocationData().getGeneratedUrl());
url = (String) engine.eval(urlGeneratorScript);

Любая обратная связь будет оценена!

Ответы на вопрос(1)

Ваш ответ на вопрос