Spring Boot

【Java】Spring bootでシングルトンを利用し、簡易的にTBLデータをキャッシュ

今回はSpring Boot開発の現場で役立つTipsとして、シングルトンパターンとキャッシュを組み合わせたTBLデータのキャッシュ実装についてご紹介します。長い期間不変なマスタテーブルの値とかを保持できるので、毎回クエリを発行せずに済む、というメリットがあります。 シングルトンとキャッシュで実現する高速化 アプリケーションにおけるパフォーマンスの重要性 Webアプリケーションにおいて、パフォーマンスはユーザーエクスペリエンスを大きく左右する重要な要素であり、表示速度が遅いと、ユーザーの離脱率増加やコンバージョン率低下につながる可能性があります。特に、近年ではモバイル端末からのアクセス増加や、ユーザーの応答速度に対する期待値向上など、パフォーマンスの重要性はますます高まっています。特にWebだと「ターンアラウンドタイム(TAT)3秒以内」なんて目標設定されたりするので、ボトルネックは少ないほうがいいです。 TBLデータのキャッシュとは? TBLデータのキャッシュとは、データベースから取得したデータをアプリケーションサーバーの
やまぐろ

【Java】Spring Bootのインターセプターで、スレッドローカルに値をセットして使い回す

ちょっと限定的な使い方かも知れませんが「仕様変更とかで、全てのコントローラークラスに同じ処理を追加したい。でも、既存モジュールへの改修はコスト的に厳しい」って時に役立つのが、インターセプター。これとスレッドローカルを組み合わせて、なるべく改修範囲を抑えてやりたい事を実現しようと言うのが、今回のコンセプトです。 インターセプターとは インターセプターは、Spring Bootアプリケーションにおいてリクエストの前後に特定の処理を挿入するための仕組みです。例えば、「ある機能を実行する前に特定の処理を実行したい」場合などに活用されます。また、共通の処理を一箇所で管理することができるため、効率的な開発が可能となります。 スレッドローカルとは スレッドローカルとは、各スレッドごとに値を保持する仕組みです。これにより、特定のスレッド内で共有するデータを簡単に管理できます。特に、マルチスレッド環境において、スレッドごとに異なる値を保持する必要がある場合に有用です。 サンプルコード Spring Bootのインターセプターを使用し
やまぐろ