パフォーマンスの記事一覧
パフォーマンス に関する記事を 6 本まとめています。Spring Bootの実装・設計・運用の観点で関連テーマを横断して読めます。
-
Spring Bootアプリの起動を高速化する方法 - CDS・AOT・遅延初期化で短縮
Spring Bootアプリの起動が遅くてPodがreadinessに間に合わない、ローカルの再ビルドで集中力が切れる—そんな悩みを解決する実践手順。Actuator startupでボトルネックを特定し、遅延初期化・AutoConfig除外・CDS・AOTを段階適用して定常的に短縮するコツを解説します。
-
Spring BootのHikariCPコネクションプールを正しく設定・チューニングする方法 - デフォルト10では足りない理由
Spring BootのHikariCPでConnection is not availableを根絶するチューニング手順。maximumPoolSizeのデフォルト10と公式算出式(コア数×2+1)、connectionTimeout 30秒→3秒の見直し、maxLifetimeとwait_timeoutの関係、leakDetectionThresholdでのリーク検出までを実装例つきで解説。設定見直しでタイムアウトエラー率を40%→3%まで削減した比較データつき。
-
Spring Boot 3.xでGraalVM Native Imageを使ってネイティブコンパイルする方法
Spring Boot 3.xプロジェクトをGraalVM Native Imageでネイティブコンパイルする手順を解説。AOT処理の仕組み、Reflectionヒントの追加、native-image-agentの活用、Testcontainersでの動作検証、トラブルシューティングまでカバーする実践ガイド。
-
Spring Boot 3.2 + Java 21の仮想スレッド(Virtual Threads)で高スループットを実現する方法
Java 21のProject LoomによるVirtual Threadsをspring.threads.virtual.enabled=trueで有効化し、従来スレッドモデルとのパフォーマンス差を実測。ThreadLocalの挙動変化・ピン留め問題・@Asyncとの使い分けまで解説する実践ガイド。
-
Spring Bootのキャッシュ機能で高速化する方法 - @Cacheableと@CacheEvictの使い方
Spring Cache Abstractionを使ってDBアクセスを減らし、レスポンスを高速化する実装ガイド。@Cacheable、@CacheEvict、@CachePutの使い方から、CaffeineとRedisの選定、キャッシュ戦略まで実例で解説します。
-
Spring Bootで非同期処理を実装する方法 - @Asyncと@EnableAsyncの使い方
Spring Boot 3.2+ / Java 21 の Virtual Threads にも対応した @Async / @EnableAsync の実装ガイド。メール送信や外部API呼び出しをバックグラウンド化してAPIを高速化する方法、ThreadPoolTaskExecutor のサイジング、RejectedExecutionHandler・graceful shutdown・MDC伝播 (TaskDecorator)・CompletableFuture まで本番運用ノウハウを実装例で解説します。