パフォーマンスの記事一覧
パフォーマンス に関する記事を 8 本まとめています。Spring Boot の実装・設計・運用の観点で関連テーマを横断して読めます。
-
Spring Bootの組み込みTomcatスレッド数をチューニングする方法 - server.tomcat.threads.max・max-connections・accept-countの決め方
Spring Boot 3.xの組み込みTomcatでserver.tomcat.threads.max・threads.min-spare・max-connections・accept-countがリクエストのどの段階で効くかを整理し、Actuatorのtomcat.threads.*メトリクスと負荷試験で根拠を持って値を決める手順を解説します。HikariCPのmaximumPoolSizeとの整合やVirtual Threads有効化時の差分も扱います。
-
Spring Data JPAで大量INSERTを高速化する方法 - hibernate.jdbc.batch_sizeとsaveAllのバッチ化
saveAll()を呼んでも1件ずつINSERTされてしまう原因を、hibernate.jdbc.batch_size・order_inserts・IDENTITY採番の仕組みから解説。PostgreSQLのreWriteBatchedInsertsやJdbcTemplate.batchUpdateとの比較まで、SQLログで検証しながら大量INSERTを高速化する手順をまとめます。
-
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 まで本番運用ノウハウを実装例で解説します。