10
我在我的應用程序中使用ScriptEngine來評估我的應用程序中的一些客戶端代碼。 問題是它的性能不夠好,我需要採取措施來提高執行時間。 目前,它可能需要長達1463毫秒(平均300毫秒左右)來評估一個非常簡單的腳本,它基本上是URL中的參數替換。使用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與commons-pool混合使用。我現在繼續並進行預編譯。謝謝! – matsientst