Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Startup Optimization #485

Open
JPercival opened this issue Mar 14, 2022 · 0 comments
Open

Startup Optimization #485

JPercival opened this issue Mar 14, 2022 · 0 comments
Labels
enhancement New feature or request spike Research or discovery task

Comments

@JPercival
Copy link
Contributor

Currently, the cqf-ruler takes around 30 seconds to start up on my local laptop. Ideally, this would be significantly faster. <10 seconds would be ideal.

There are several different things we could do to optimize this:

  • Eliminate all Spring warnings on startup

There are a number of startup warnings that could potentially affect startup speeds:

WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration [JpaBaseConfiguration.java:219] spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning

INFO o.s.b.web.servlet.RegistrationBean [DynamicRegistrationBean.java:110] Servlet dispatcherServlet was not registered (possibly already registered?)

  • Add the ability to selectively enable functionality

    • Scheduling
    • Supported resource types
    • Making sure plugins enabling/disabling are documented
  • Add explicit Spring configuration as opposed to component scanning

    • This should be coordinated with Smile efforts to do the same for the base hapi-fhir-server
    • Need to make sure plugin scanning still works
  • Precompute Spring config

    • Not sure if this would work or not. Need to explore possible options. One possible solution is to go full Spring-native, but there are quite a few runtime things in hapi and the ruler that might break.
@JPercival JPercival added enhancement New feature or request 5 spike Research or discovery task labels Mar 14, 2022
@JPercival JPercival removed the 5 label Sep 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request spike Research or discovery task
Projects
None yet
Development

No branches or pull requests

1 participant