[ https://issues.apache.org/jira/browse/IGNITE-3233?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Semen Boikov updated IGNITE-3233: --------------------------------- Priority: Major (was: Blocker) > need to optimize injections > --------------------------- > > Key: IGNITE-3233 > URL: https://issues.apache.org/jira/browse/IGNITE-3233 > Project: Ignite > Issue Type: Improvement > Reporter: Yakov Zhdanov > Assignee: Semen Boikov > Labels: community, performance > Fix For: 1.7 > > > {noformat} > I want to check how this closure performs vs empty one: > ignite.compute().affinityCall(xx, xx, new IgniteCallable<Object>() { > @IgniteInstanceResource > Ignite ignite; > > @SpringApplicationContextResource > ApplicationContext ctx; > > Object bean1; > Object bean2; > > > @Override public Object call() throws Exception { > bean1 = ctx.getBean(bean1class); > bean2 = ctx.getBean(bean2class); > > return null; > } > }); > {noformat} > Closure above is 3 times slower than Noop closure. Injections should be > optimized. > I see the following options: > # Annotations > ## Introduce SpringAware annotation and annotate each object that will need > injection including SPI and internal stuff > ## Support Spring Autowire annotation. > ## I am not sure about the approach. We can use ApplicationContext.autowire() > or generate and compile code that will do injections. > # Interfaces > ## IgniteAware > ## Spring ApplicationContext aware > ## ... > Implementor should suggest and back solution with microbenchmarks. -- This message was sent by Atlassian JIRA (v6.3.4#6332)