Spring Boot uygulamam var. Çok fazla bağımlılık ekledim (maalesef hepsine ihtiyacım var gibi görünüyor) ve başlangıç süresi oldukça arttı. Sadece a yapmak SpringApplication.run(source, args)
10 saniye sürer.
Bu, "alışkın" olanla kıyaslanamayacak kadar fazla olmasa da, çoğunlukla geliştirme akışını bozduğu için bu kadar zaman almasından mutsuzum. Bu noktada uygulamanın kendisi oldukça küçüktür, bu yüzden çoğu zaman uygulama sınıflarının kendileri ile değil, eklenen bağımlılıklar ile ilgili olduğunu varsayıyorum.
Sorunun sınıf yolu taraması olduğunu varsayıyorum, ancak şunları nasıl yapacağımı bilmiyorum:
- Sorunun bu olduğunu onaylayın (yani, Spring Boot nasıl "hata ayıklanacağı")
- Eğer gerçekten sebep buysa, daha hızlı olması için onu nasıl sınırlayabilirim? Örneğin, bazı bağımlılıkların veya paketlerin Spring'in taraması gereken hiçbir şey içermediğini biliyorsam, bunu sınırlamanın bir yolu var mı?
Spring'in başlatma sırasında paralel fasulye başlatmaya sahip olmasını sağlamanın işleri hızlandıracağını varsayıyorum , ancak bu geliştirme talebi 2011'den beri herhangi bir ilerleme olmadan açık. Spring Boot'un kendisinde, Investigate Tomcat JarScanning hız iyileştirmeleri gibi bazı başka çabalar görüyorum , ancak bu Tomcat'e özeldir ve terk edilmiştir.
Bu makale:
entegrasyon testlerini hedeflemesine rağmen, kullanmayı önerir lazy-init=true
, ancak bunu Java yapılandırmasını kullanarak Spring Boot'taki tüm fasulyelere nasıl uygulayacağımı bilmiyorum - burada herhangi bir işaret var mı?
Herhangi bir (diğer) öneri memnuniyetle karşılanacaktır.
@ComponentScan
. Başka bir şey de, genellikle günlüğe kaydetme yavaş ve çok yavaş olduğundan, hata ayıklama veya izleme günlüğünü etkinleştirmediğinizden emin olmaktır.