Если источник XSLT действительно такой большой, вам, вероятно, следует сохранить его в файле, например, как ресурс classpath, и загружайте и анализируйте его только один раз:
private static Templates largeTemplate;
Инициализация с использованием (только один раз):
try (InputStream in = Test.class.getResourceAsStream("path/to/large.xslt")) {
TransformerFactory transformerFactory = TransformerFactory.newInstance();
largeTemplate = transformerFactory.newTemplates(new StreamSource(in));
}
Тогда для каждой нити:
Transformer transformer = largeTemplate.newTransformer();
// Use transformer here