내 응용 프로그램에서 ScriptEngine을 사용하여 응용 프로그램의 일부 클라이언트 코드를 평가하고 있습니다. 문제는 성능이 충분하지 않기 때문에 실행 시간을 개선하기위한 조치를 취해야합니다. 현재 URL에서 기본적으로 매개 변수를 대체하는 극히 간단한 스크립트를 평가하는 데 최대 1463ms (평균 약 300ms)가 소요될 수 있습니다.Java ScriptEngine (Groovy)의 경우 성능을 향상시키는 방법은 무엇입니까?
저는 스크립팅 능력을 잃지 않고이 성능을 향상시키는 간단한 전략을 찾고 있습니다.
내 첫 번째 생각은 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);
: 다음은 내 코드입니다!
아, 좋습니다. 나는 앞서 가서 ScriptEngine을 공유지 풀과 공동으로 만들었다. 이제 문제가 발생하여 사전 컴파일합니다. 감사! – matsientst