マニュアル キャンセル

キャッシュ機能の強化

  1. ColdFusion ユーザーガイド
  2. ColdFusion の紹介
    1. Adobe ColdFusion について
    2. Adobe ColdFusion のダウンロード
    3. ColdFusion(2021 リリース)の新機能
    4. ColdFusion(2021 リリース)リリースノート
    5. 非推奨の機能
    6. REST に関連する ColdFusion の機能強化(2018 リリース)
    7. サーバーの自動ロックダウン
    8. 非同期プログラミング
    9. ColdFusion の Docker イメージ
  3. Adobe ColdFusion(2021 リリース)
    1. ColdFusion のインストール - Zip インストーラー
    2. ColdFusion のインストール - GUI インストーラー
    3. ColdFusion のライセンスとアクティベーション
    4. ColdFusion パッケージマネージャー
    5. CFSetup 設定ツール
    6. ColdFusion の SAML
    7. ColdFusion と Amazon S3
    8. ColdFusion と DynamoDB
    9. ColdFusion と Amazon SQS
    10. ColdFusion と Amazon SNS
    11. ColdFusion と MongoDB
    12. ColdFusion と Azure Blob
    13. ColdFusion と Azure Service Bus
    14. 言語の機能強化(新規および更新)
    15. マルチクラウドストレージサービス
    16. マルチクラウド RDS データベース
    17. ColdFusion と Azure Cosmos DB
  4. ColdFusion のインストール
    1. ColdFusion サーバープロファイル
    2. ColdFusion のインストール準備
    3. サーバー設定のインストール
    4. JEE 設定のインストール
    5. ColdFusion Express のインストール
    6. 統合テクノロジのインストール
    7. システムの設定
    8. インストールに関する問題のトラブルシューティング
    9. ColdFusion のサイレントインストール
    10. Adobe ColdFusion(2016 リリース)ホットフィックスのインストール
    11. ColdFusion(2018 リリース)- JEE 設定のインストール
  5. ColdFusion の使用
    1. コマンドラインインターフェイス(CLI)
    2. 外部セッションストレージ
    3. Swagger ドキュメントの生成
    4. 言語の機能強化
    5. NTLM のサポート
    6. ColdFusion(2016 リリース)の新規および変更された関数/タグ
    7. PDF の機能強化
    8. REST に関連する ColdFusion の機能強化(2016 リリース)
  6. Performance Monitoring Toolset
    1. ColdFusion ノードおよびクラスターの自動検出
    2. ColdFusion パフォーマンス監視ツールセットのコードプロファイラー
    3. ColdFusion Performance Monitoring Toolset の設定
    4. ColdFusion Performance Monitoring Toolset のインストール
    5. ColdFusion Performance Monitoring Toolset の概要
    6. クラスターおよびノードの指標の表示
    7. データソース指標の表示
    8. 外部サービスの表示
    9. 受信サービスの表示
    10. サイトおよびビジー接続数のリストの表示
    11. サイトのトポロジの表示
    12. データストアの正常性監視
    13. Performance Monitoring Toolset アップデート 1
    14. HTTPS/SSL でセキュリティ保護された Performance Monitoring Toolset
    15. Performance Monitoring Toolset デプロイメントガイド
  7. Visual Studio Code 用 Adobe ColdFusion Builder 拡張機能
    1. Visual Studio Code 用 Adobe ColdFusion Builder 拡張機能の概要
    2. ColdFusion サーバーの追加
    3. プロジェクトマネージャー
    4. ColdFusion コードの操作
    5. プロファイルに関する環境設定
    6. アプリケーションのデバッグ
    7. リファクタリング
    8. サービスブラウザー
    9. RDS のサポート
    10. PMT コードプロファイラーとの統合
    11. セキュリティアナライザーレポートとの統合
    12. このリリースの既知の問題
  8. ColdFusion Builder の使用
    1. ColdFusion Builder について
    2. 必要システム構成 | ColdFusion Builder
    3. ColdFusion Builder のインストール
    4. ColdFusion Builder でのコードの編集
    5. ColdFusion Builder でのサーバーの管理
    6. ColdFusion Builder でのプロジェクトの管理
    7. Adobe ColdFusion Builder の新機能(2018 リリース)
    8. よくある質問(FAQ) | Adobe ColdFusion Builder(2018 リリース)
    9. ColdFusion Builder でのアプリケーションのデバッグ
    10. ColdFusion Builder ワークベンチ
    11. ColdFusion Builder 拡張機能
    12. ColdFusion Builder でのデバッグの観点
    13. ColdFusion Builder を使用したモバイルアプリケーションの作成
    14. バンドルされた ColdFusion サーバー
    15. ColdFusion Builder でのモバイルアプリケーションのデバッグ
    16. ColdFusion Builder の拡張機能の使用
  9. ColdFusion API Manager
    1. Adobe ColdFusion API Manager の概要
    2. ColdFusion API Manager の機能
    3. ColdFusion API Manager 入門
    4. ColdFusion API Manager のインストール
    5. 認証タイプ
    6. API の作成とパブリッシュ
    7. Administrator
    8. サブスクライバー
    9. スロットルとレートの制限
    10. 通知
    11. コネクタ
    12. クラスターサポートの設定
    13. ColdFusion と API Manager を統合する
    14. API Manager での指標とログ
    15. Swagger ドキュメントの生成
    16. SSL の設定
    17. このリリースの既知の問題
    18. ColdFusion API Manager のポリシー
    19. Redis クラスターの作成
    20. API Manager のマルチテナント機能
    21. ColdFusion API Manager の Docker イメージ
  10. ColdFusion の設定と管理
    1. ColdFusion の管理
    2. ColdFusion Administrator を使用する
    3. ColdFusion のデータソース管理
    4. Webサーバーに接続
    5. ColdFusion アプリケーションのデプロイ
    6. ColdFusion セキュリティの管理
    7. 基本的なトラブルシューティングとよくある質問
    8. Server Manager の使用
    9. 複数のサーバーインスタンスを使用
    10. WebSocket の機能強化(ColdFusion 11)
    11. セキュリティの機能強化(ColdFusion 11)
    12. サーバーモニターの使用
    13. ColdFusion Administrator API リファレンス
  11. CFML リファレンス
    1. CFML リファレンスの概要
      1. ColdFusion(2018 リリース)の新機能
      2. ColdFusion(2016 リリース)の新規および変更された関数/タグ
      3. タグおよび関数をサポートするスクリプト
      4. ColdFusion 11 の新規および変更された関数/タグ
    2. 予約語と変数
      1. 予約語と変数
      2. 予約語
      3. スコープ固有のビルトイン変数
      4. カスタムタグ変数
      5. ColdFusion タグ固有の変数
      6. CGI 環境(CGI スコープ)変数
    3. ColdFusion のタグ
      1. ColdFusion のタグ
      2. ColdFusion 10 のタグ
      3. タグの一覧
      4. 機能別のタグ一覧
      5. ColdFusion 5 以降に変更されたタグ
      6. タグ a~b
      7. タグ c
      8. タグ d~e
      9. タグ f
      10. タグ g~h
      11. タグ i
      12. タグ j~l
      13. タグ m~o
      14. タグ p~q
      15. タグ r~s
      16. タグ t
      17. タグ u~z
    4. ColdFusion 関数
      1. ColdFusion 関数
      2. ColdFusion 10 の新規関数
      3. カテゴリ別の ColdFusion 関数
      4. ColdFusion 5 以降に変更された関数
      5. 関数 a~b
      6. 関数 C~D
      7. 関数 E~G
      8. 関数 H~Im
      9. 関数 In~K
      10. 関数 L
      11. 関数 M~R
      12. 関数 s
      13. 関数 T~Z
      14. BooleanFormat
    5. AJAX JavaScript 関数
      1. AJAX JavaScript 関数
      2. 関数概要 Ajax
      3. ColdFusion.Ajax.submitForm
      4. ColdFusion.Autosuggest.getAutosuggestObject
      5. ColdFusion.Layout.enableSourceBind
      6. ColdFusion.MessageBox.getMessageBoxObject
      7. ColdFusion.ProgressBar.getProgressBarObject
      8. ColdFusion.MessageBox.isMessageBoxDefined
      9. JavaScriptFunctionsinColdFusion9Update1
    6. ColdFusion ActionScript 関数
      1. ColdFusion ActionScript 関数
      2. CF.http
      3. CF.query
    7. ColdFusion Mobile 関数
      1. ColdFusion Mobile 関数
      2. Accelerometer 関数
      3. カメラ関数
      4. 接続関数
      5. 連絡先関数
      6. イベント関数
      7. ファイルシステム関数
      8. ジオロケーション関数
      9. メディアおよびキャプチャの関数
      10. 通知関数
      11. スプラッシュ画面関数
      12. Storage 関数
    8. Application.cfc リファレンス
      1. Application.CFC リファレンス
      2. アプリケーション変数
      3. メソッドの概要
      4. onAbort
      5. onApplicationEnd
      6. onApplicationStart
      7. onMissingTemplate
      8. onCFCRequest
      9. onError
      10. onRequestEnd
      11. onRequest
      12. onRequestStart
      13. onServerStart
      14. onSessionEnd
      15. onSessionStart
    9. CFC として実装されているスクリプト関数
      1. CFC として実装されているスクリプト関数
      2. 関数へのアクセス
      3. 関数一覧
      4. ftp
      5. http
      6. mail
      7. pdf
      8. query
      9. ColdFusion 9 アップデート 1 で CFC として実装されたスクリプト関数
      10. storedproc
    10. ColdFusion Flash フォームスタイルリファレンス
      1. すべてのコントロールに有効なスタイル
      2. cfform に有効なスタイル
      3. type 属性が horizontal または vertical である cfformgroup に有効なスタイル
      4. ボックススタイルの cfformgroup 要素に有効なスタイル
      5. type 属性が accordion である cfformgroup に有効なスタイル
      6. type 属性が tabnavigator である cfformgroup に有効なスタイル
      7. type 属性が hrule または vrule である cfformitem に有効なスタイル
      8. type 属性が radio、checkbox、button、image、または submit である cfinput に有効なスタイル
      9. cftextarea タグ、および type 属性が text、password、または hidden である cfinput に有効なスタイル
      10. size 属性の値が 1 である cfselect に有効なスタイル
      11. size 属性が 2 以上である cfselect に有効なスタイル
      12. cfcalendar タグ、および type 属性が dateField である cfinput に有効なスタイル
      13. cfgrid タグに有効なスタイル
      14. cftree タグに有効なスタイル
      15. ColdFusion Flash フォームスタイルリファレンス
    11. ColdFusion イベントゲートウェイリファレンス
      1. ColdFusion イベントゲートウェイリファレンス
      2. addEvent
      3. CFEvent
      4. CFEventclass
      5. コンストラクタ
      6. ゲートウェイ開発のインターフェイスとクラス
      7. getStatus
      8. setCFCPath
      9. setCFCMethod
      10. getOriginatorID
      11. getLogger
      12. getBuddyList
      13. getBuddyInfo
      14. IM ゲートウェイメッセージ送信コマンド
      15. IM ゲートウェイ GatewayHelper クラスのメソッド
      16. onIncomingMessage
      17. onIMServerMessage
      18. onBuddyStatus
      19. onAddBuddyResponse
      20. onAddBuddyRequest
      21. IM ゲートウェイ CFC 着信メッセージメソッド
      22. IM ゲートウェイメソッドとコマンド
      23. CFML CFEvent 構造体
      24. warn
      25. info
      26. setOriginatorID
      27. data コマンド
      28. submitMulti コマンド
      29. submit コマンド
      30. setGatewayType
      31. setGatewayID
      32. setData
      33. setCFCListeners
      34. outgoingMessage
      35. getStatusTimeStamp
      36. numberOfMessagesReceived
      37. numberOfMessagesSent
      38. removeBuddy
      39. removeDeny
      40. removePermit
      41. setNickName
      42. setPermitMode
      43. setStatus
      44. SMS ゲートウェイ CFEvent の構造体とコマンド
      45. SMS ゲートウェイ着信メッセージ CFEvent 構造体
      46. getStatusAsString
      47. getProtocolName
      48. getPermitMode
      49. getPermitList
      50. getNickName
      51. getName
      52. getDenyList
      53. getCustomAwayMessage
      54. getQueueSize
      55. getMaxQueueSize
      56. getHelper
      57. getGatewayType
      58. getGatewayServices
      59. getGatewayID_1
      60. getGatewayID
      61. getData
      62. getCFCTimeout
      63. setCFCTimeout
      64. getCFCPath
      65. getCFCMethod
      66. GatewayServices クラス
      67. ゲートウェイインターフェイス
      68. GatewayHelper インターフェイス
      69. addPermit
      70. addDeny
      71. addBuddy
      72. error
      73. debug
      74. Logger クラス
      75. 停止するための管理者コンポーネントも含まれます
      76. start
      77. CFML イベントゲートウェイ SendGatewayMessage の data パラメータ
      78. restart
      79. fatal
      80. SMS ゲートウェイメッセージ送信コマンド
    12. ColdFusion C++ CFX リファレンス
      1. C++ クラスの概要
      2. 非推奨のクラスメソッド
      3. CCFXException クラス
      4. CCFXQuery クラス
      5. CCFXRequest クラス
      6. CCFXStringSet クラス
      7. ColdFusion C++ CFX リファレンス
    13. ColdFusion Java CFX リファレンス
      1. ColdFusion Java CFX リファレンス
      2. クラスライブラリの概要
      3. カスタムタグインターフェイス
      4. クエリインターフェイス
      5. リクエストインターフェイス
      6. レスポンスインターフェイス
      7. デバッグクラスリファレンス
    14. WDDX JavaScript オブジェクト
      1. WDDX JavaScript オブジェクト
      2. JavaScript オブジェクトの概要
      3. WddxRecordset オブジェクト
      4. WddxSerializer オブジェクト
  12. ColdFusion アプリケーションの開発
    1. ColdFusion の概要
      1. ColdFusion の概要
      2. ColdFusion について
      3. インターネットアプリケーションと Web アプリケーションサーバーについて
      4. JEE と ColdFusion アーキテクチャについて
    2. ColdFusion の変更点
      1. ColdFusion の変更点
      2. JRun から Tomcat への変更
      3. セキュリティの機能強化
      4. ColdFusion WebSocket
      5. Java 統合の強化
      6. ColdFusion ORM 検索によるインデックス作成と検索
      7. Solr の機能強化
      8. スケジューラーの機能強化
      9. Microsoft Exchange Server 2010 との統合
      10. ColdFusion での RESTful Web サービス
      11. ColdFusion でのクライアントとサーバー間の遅延読み込み
      12. Web サービスの機能強化
      13. 地理位置情報の表示
      14. クライアントサイドのチャート作成
      15. キャッシュ機能の強化
      16. ColdFusion Administrator を使用したサーバーの更新
      17. ColdFusion Administrator のセキュアプロファイル
    3. アプリケーション開発の概要
      1. ColdFusion を使用したアプリケーション開発の概要
      2. 本マニュアルの使用について
      3. デベロッパー向き Adobe ColdFusion ドキュメントについて
    4. CFML プログラミング言語
      1. CFML プログラミング言語
      2. CFML の要素
      3. ColdFusion 変数
      4. 式および番号記号
      5. 配列と構造体
      6. CFML スクリプト言語による ColdFusion ページの拡張
      7. 関数の正規表現
      8. ColdFusion での言語の機能強化
      9. 第一級オブジェクトとしての組み込み関数
      10. データ型開発ガイド
    5. ColdFusion アプリケーションのビルディングブロック
      1. ColdFusion アプリケーションのビルディングブロック
      2. ColdFusion 要素の作成
      3. ユーザー定義関数の記述と呼び出し
      4. ColdFusion コンポーネントの作成と使用
      5. カスタム CFML タグの作成と使用
      6. カスタム CFXAPI タグの作成
      7. メンバー関数の使用
      8. ColdFusion でのオブジェクト指向プログラミング
    6. CFML アプリケーションの開発
      1. CFML アプリケーションの開発
      2. ColdFusion アプリケーションのデザインと最適化
      3. エラーの処理
      4. 永続データとロックの使用
      5. ColdFusion スレッドの使用
      6. セキュリティで保護されたアプリケーション
      7. クライアントサイド CFML(モバイル開発向け)
      8. ColdFusion デバッガの使用
      9. アプリケーションのデバッグとトラブルシューティング
      10. グローバライズしたアプリケーションの開発
      11. ColdFusion での REST 機能強化
      12. OAuth による認証
      13. ソーシャルの機能強化
    7. モバイルアプリケーションの開発
      1. モバイルアプリケーションの開発
      2. モバイルアプリケーションの構築
      3. モバイルアプリケーションのデバッグ
      4. モバイルアプリケーションの検証
      5. モバイルアプリケーションのパッケージ化
      6. モバイルアプリケーションのトラブルシューティング
      7. デバイス検出
      8. クライアントサイド CFML
      9. モバイルテンプレート
      10. モバイルアプリケーションを作成するためのコード例
    8. データのアクセスと使用
      1. データのアクセスと使用
      2. データベースおよび SQL の概要
      3. データへのアクセスと取得
      4. データベースの更新
      5. クエリのクエリの使用
      6. LDAP ディレクトリの管理
      7. Solr 検索のサポート
    9. ColdFusion ORM
      1. ColdFusion ORM
      2. ColdFusion ORM の概要
      3. ORM アーキテクチャ
      4. ORM の設定
      5. ORM マッピングの定義
      6. オブジェクトの操作
      7. ORM セッション管理
      8. トランザクションと同時性
      9. HQL クエリの使用
      10. データベーススキーマの自動生成
      11. ORM における複数のデータソースのサポート
      12. ColdFusion ORM 検索
    10. ColdFusion と HTML 5
      1. ColdFusion と HTML 5
      2. ColdFusion Web Sockets の使用
      3. メディアプレーヤーの機能拡張
      4. クライアントサイドのチャート作成
      5. 地理位置情報データの表示
    11. ColdFusion での Flex と AIR の統合
      1. ColdFusion での Flex と AIR の統合
      2. Flash Remoting サービスの使用
      3. Flash Remoting 更新の使用
      4. オフライン AIR アプリケーションのサポート
      5. ColdFusion サービスのプロキシ ActionScript クラス
      6. LiveCycle Data Services ES アセンブラーの使用
      7. サーバーサイド ActionScript の使用
    12. 情報の要求と提示
      1. 情報の要求と提示
      2. データの検索とフォーマット設定
      3. cfform タグによるダイナミックフォームの作成
      4. データの検証
      5. Flash フォームの作成
      6. スキン可能 XML フォームの作成
      7. Ajax データおよび開発機能の使用
      8. Ajax ユーザーインターフェイスコンポーネントおよび機能の使用
    13. Office ファイルとの相互運用性
      1. Office ファイルとの相互運用性
      2. cfdocument の使用
      3. cfpresentation の使用
      4. cfspreadsheet の使用
      5. サポートされている Office 変換形式
      6. SharePoint の統合
    14. ColdFusion ポートレット
      1. ColdFusion ポートレット
      2. JBoss Portal Server での ColdFusion ポートレットの実行
      3. WebSphere Portal Server での ColdFusion ポートレットの実行
      4. portlet.cfc で使用する一般的なメソッド
      5. ColdFusion ポートレットコンポーネント
      6. JSR-286 のサポート
    15. ドキュメント、チャート、レポートの操作
      1. ドキュメント、チャート、レポートの操作
      2. ColdFusion での PDF フォームの操作
      3. PDF ドキュメントの組み立て
      4. ColdFusion 画像の作成および操作
      5. チャートとグラフの作成
      6. 印刷用のレポートとドキュメントの作成
      7. Report Builder を使用したレポートの作成
      8. スライドプレゼンテーションの作成
    16. Web 要素および外部オブジェクトの使用
      1. Web 要素および外部オブジェクトの使用
      2. XML と WDDX の使用
      3. Web サービスの使用
      4. ColdFusion Web サービスの使用
      5. CFML アプリケーションへの JEE および Java 要素の統合
      6. Microsoft .NET アセンブリの使用
      7. CFML アプリケーションでの COM および CORBA オブジェクトの統合
    17. 外部リソースの使用
      1. E メールの送受信
      2. Microsoft Exchange Server との連携
      3. リモートサーバーとの連携
      4. サーバー上のファイルの管理
      5. イベントゲートウェイの使用
      6. カスタムイベントゲートウェイの作成
      7. Eclipse 用 ColdFusion 拡張機能の使用
      8. データサービスメッセージングイベントゲートウェイの使用
      9. データ管理イベントゲートウェイの使用
      10. FMS イベントゲートウェイの使用
      11. インスタントメッセージングイベントゲートウェイの使用
      12. SMS イベントゲートウェイの使用

 

ColdFusion では、デフォルトのキャッシュエンジンである Ehcache に加え、次のキャッシュエンジンがサポートされています。

Administrator の設定の変更

ColdFusion Administrator では、サーバーの設定/キャッシュ機能をクリックしてキャッシュエンジンを選択できます。

キャッシュエンジンの選択
キャッシュエンジンの選択

選択するオプションに応じて、一部の設定を変更する必要がありま。

JCS

Java Caching System(JCS)は Apache Jakarta サブプロジェクトを通じてリリースされているオープンソースのキャッシュエンジンです。JCS にはメモリ内キャッシュ機能と、キャッシュ内のオブジェクトを選択的に削除するためのアルゴリズムがあります。また 、 インデックスディスクキャッシュや、分散キャッシュのサポートなど、高度な機能も備えています。

JCS を使用するには、ColdFusion Administrator で上の図に示すオプションを選択します。

JCS はアプリケーションレベルで設定することもできます。キャッシュエンジンとキャッシュプロパティファイルを設定するには、新しいアプリケーション変数を使用します。

Application.cfc

component{
  this.name = "appSpecificCacheTest";
  this.cache.configfile = "jcsconfig.properties";
      this.cache.engine = 'jcs';
  this.applicationTimeout = createtimespan(0,0,0,5); 
}

Application.cfc で定義できる 変数 について詳しくは 、 Application.cfc 変数を参照してください。

jcsconfig.properties

maxElementsInMemory=5
eternal=false
timeToIdleSeconds=30
timeToLiveSeconds=5

下の図に示すように、これらの設定は Administrator(サーバーの設定/キャッシュ機能)でも変更できます。

JCS プロパティ
JCS プロパティ

設定を確認するには、次のような cfm を作成します。

<cfscript>
 writedump(cacheGetEngineProperties()); // Returns the cache engine properties
 writeoutput(cacheGetEngineProperties().name); // Returns the name of the cache engine
</cfscript>

JCS での補助キャッシュのサポート

JCS を使用するとデータベース内にキャッシュを常駐させて、複数のノードを経由してキャッシュにアクセスできるようになります。ColdFusion Administrator で、JCS のクラスタリングに使用するデータソースを追加します。

ColdFusion Administrator で、サーバーの設定/キャッシュ機能をクリックします。ドロップダウンからデータソースを選択します。

JCS 補助キャッシュの設定
JCS 補助キャッシュの設定

変更を保存すると、選択したデータソースに JCS_STORE というテーブルが作成されます。

この例では、My SQL を補助キャッシュとして使用しています。

JCS で補助キャッシュをサポートするには、<coldfusion_install_dir>/cfusion/lib にある cache.ccf ファイルを編集します。次の行を追加します。

# MYSQL disk cache used for flight options
jcs.auxiliary.MYSQL=org.apache.commons.jcs.auxiliary.disk.jdbc.JDBCDiskCacheFactory
jcs.auxiliary.MYSQL.attributes=org.apache.commons.jcs.auxiliary.disk.jdbc.JDBCDiskCacheAttributes
jcs.auxiliary.MYSQL.attributes.userName=<user name>
jcs.auxiliary.MYSQL.attributes.password=<password>
# Make sure the datasource is the one in which JCS_STORE is created 
# via the Administrator
jcs.auxiliary.MYSQL.attributes.url=jdbc:mysql://localhost:3306/<datasource>
jcs.auxiliary.MYSQL.attributes.driverClassName=com.mysql.jdbc.Driver
jcs.auxiliary.MYSQL.attributes.tableName=JCS_STORE
jcs.auxiliary.MYSQL.attributes.UseDiskShrinker=false

また、cache.ccf で jcs.default = MYYSQL を設定します。

ColdFusion を再起動します。

JDBC ディスクキャッシュでは MySQL などのリレーショナルデータベースが永続データストアとして使用されます。キャッシュ要素はシリアル化されて BLOB に書き込まれます。

Memcached

Memcached は Java エンタープライズアプリケーション向けの分散キャッシュソリューションです。1 つの Memcached サーバーを複数の ColdFusion インスタンス間で共有することもできますが、1 つの ColdFusion インスタンスで複数の Memcached サーバーを設定することもできます。

Memcached を使用するには、Memcached をダウンロードし、次のコマンドを使用してコマンドラインからサーバーを起動します。

memcached

Memcached サーバーは デフォルトでポート 11211 を使用します。

ColdFusion Administrator でサーバーの設定/キャッシュ機能をクリックし、Memcached サーバーの詳細を指定します。

Memcached サーバー
Memcached サーバー

Memcached はアプリケーションレベルで設定することもできます。キャッシュエンジンを宣言するために使用する必要がある新しいアプリケーション変数は次の 2 つです。

  • this.cache.engine使用するキャッシュエンジンを指定します。選択できるオプションは jcs または memcached または ehcache です。
  • this.cache.configFile memcached の設定ファイルを指定します。例えば、このファイルには、次のようなキーと値のペアを含めることができます。
maxElementsInMemory=5
eternal=false
timeToIdleSeconds=30
timeToLiveSeconds=5

下の図に示すように、これらの設定は Administrator(サーバーの設定/キャッシュ機能)でも変更できます。インターフェイスは他のキャッシュエンジンとほぼ同じです。

Memcached の設定
Memcached の設定

// Application.cfc

component{
 this.name='appUsingMemcached';
 this.cache.engine='memcached';
 this.cache.configFile='memcachedconfig.properties';
 this.cache.applicationTimeout=createtimespan(0,0,0,5);
}
// memcachedconfig.properties

maxElementsInMemory=5
eternal=false
timeToIdleSeconds=30
timeToLiveSeconds=10

Redis

Redis はデータベースおよびキャッシュとして使用されるオープンソース(BSD ベース)のメモリ内データ構造ストアです。文字列、ハッシュ、リスト、セットなどのデータ構造体がサポートされています。

Redis を使用するには、Redis をダウンロードし、次のコマンドを使用してコマンドラインからサーバーを起動します。

redis-server

Redis サーバーはデフォルトでポート 6379 を使用します。

Redis は分散型のソリューションです。クラスター環境では、すべてのノードが同じ Redis ノードと通信できます。

ColdFusion Administrator でサーバーの設定/キャッシュ機能をクリックし、Redis サーバーの詳細を指定します。

Redis の設定
Redis の設定

Redis はアプリケーションレベルで設定することもできます。キャッシュエンジンを宣言するために使用する必要がある新しいアプリケーション変数は次の 2 つです。

  • this.cache.engine:使用するキャッシュエンジンを指定します。選択できるオプションは jcs、redis、memcached または ehcache です。
  • this.cache.configFile:Redis の設定ファイルを指定します。例えば、このファイルには、次のようなキーと値のペアを含めることができます。
maxElementsInMemory=5
eternal=false
timeToIdleSeconds=30
timeToLiveSeconds=5
<!--- Application.cfc --->

<cfcomponent>
    <cfscript>
        this.name = "appSpecificCacheTest";
        this.cache.configfile = "redisconfig.properties";
        this.cache.engine = "redis";
        this.applicationTimeout = createtimespan(0,0,0,5);
    </cfscript>
</cfcomponent>
// redisconfig.properties

maxElementsInMemory=5
eternal=false
timeToIdleSeconds=30
timeToLiveSeconds=5

カスタムキャッシュプラグイン

Memcached、Redis、JCS を使用する以外に、カスタムキャッシュプラグインを実装することもできます。カスタムキャッシュエンジンを実装するためのインターフェイス(C:\ColdFusion2021\cfusion\wwwroot\CFIDE\cache\ICustomCache.cfc)も用意されています。

実装は ICustomCache.cfc と同じフォルダーに配置する必要があります。

ColdFusion は Infinispan ライブラリを利用します。安定版リリースから次のファイルをダウンロードします。

  • infinispan -embedded-query-9.1.3.Final.jar
  • infinispan -embedded-9.1.3.Final.jar

これらのファイルを C:\ColdFusion2021\cfusion\lib にコピーして ColdFusion を再起動します。

カスタムプラグインを追加するには:

  1. C:\ColdFusion2021\cfusion\wwwroot\CFIDE\cache にフォルダーを作成します。このフォルダーの名前はカスタムプラグインと同じ名前にする必要があります。

  2. ICustomCache.cfc を実装する <any CFC name>.cfc を作成し、実装を記述します。次に例を示します。

    <cfcomponent implements="ICustomCache">
        <cffunction name="put" >
            <cfargument name="obj" type="struct">
                <cfoutput>"inside put"</cfoutput>
                <cfset defaultCache=Application.defaultCacheManager.getcache()>
                <cfset defaultCache.put(obj.id,#obj.value#)>
        </cffunction>
    </cfcomponent>
  3. Infinispan ライブラリへの参照を含む config.xml を 作成します。

    <infinispan>
        <cache-container default-cache="local">
            <local-cache name="local"/>
        </cache-container>
    </infinispan>
  4. Application.cfc を作成します。

    <cfcomponent> 
        <cfset this.name= "xyz"> 
            <cfscript> 
                function onApplicationStart() 
                { 
                    writelog("In onApplicationStart()"); 
                    Application.defaultCacheManager=CreateObject("java","org.infinispan.manager.DefaultCacheManager").init('C:\ColdFusion2021\cfusion\wwwroot\custom_cache\config.xml'); 
                    writelog("In onApplicationStart()"); 
    } 
                    function onApplicationEnd() { 
                    writelog("In onApplicationEnd()"); 
    } 
            </cfscript> 
    </cfcomponent>

次のコードを使用してアプリケーションを作成します。

// Application.cfc

<cfcomponent>
    <cfscript>
        this.name = "mycache_app";
        this.cache.engine = "mycache";
    </cfscript>
</cfcomponent>

Admin API

ColdFusion 2018 リリースのキャッシュ機能に関連する Admin API は 次の とおりです。これらの API は runtime.cfc に含まれています。

verifyRedisCacheStorageConnection

説明:Redis キャッシュストレージへの接続を確認します。

シンタックス

void verifyRedisCacheStorageConnection (sessionStorageHost, numeric sessionStoragePort, sessionStoragePassword)

パラメーター

必須/オプション

デフォルト

説明

sessionStorageHost

オプション

Any

Redis キャッシュストレージのホスト名。

sessionStoragePort

オプション

Numeric

Redis キャッシュストレージのポート番号。

sessionStoragePassword

オプション

Any

Redis キャッシュストレージのパスワード。

setServerCachingEngine

説明:サーバーレベルでキャッシュエンジンを変更します。

シンタックス

void setServerCachingEngine (required engine)

パラメーター

必須/オプション

デフォルト

説明

engine

必須

Any

1.       Ehcache

2.      JCS

3.      Memcached

4.      Redis

setJCSClusterDsnName

説明:JCS クラスターのデータソースを設定します。

シンタックス

void setJCSClusterDsnName (required dsn, required boolean createTables)

パラメーター

必須/オプション

デフォルト

説明

dsn

必須

Any

データソースの名前。

createTables

必須

Any

テーブルを作成するかどうか。

setCachingRedisServer

説明:Redis のキャッシュエンジンを設定します。

シンタックス

void setCachingRedisServer (required host, required port, required password, required boolean cluster)

パラメーター

必須/オプション

デフォルト

説明

host

必須

any

サーバーのホストアドレス。

port

必須

any

サーバーのポート番号。

password

必須

any

サーバーのパスワード。

cluster

必須

Boolean

Redis でクラスターを有効にするかどうか。

getMemcachedServer

説明:Memcached キャッシュエンジンの詳細を取得します。

シンタックス

any getMemcachedServer ()

ColdFusion のキャッシュ機能について詳しくは、ColdFusion アプリケーションの最適化を参照してください。

Azure Redis Cache

Azure Cache for Redis は、Redis に基づいたメモリ内データストアを提供します。頻繁にアクセスされるデータを高性能ストレージにコピーすることによって、キャッシュパフォーマンスが強化されます。Azure Cache for Redis を使用すると、データベースによってディスクから読み込まれる代わりに、このストレージがメモリ内に配置されます。

Azure Cache for Redis は、次のように使用できます。

  • 分散データキャッシュ
  • セッションストア
  • メッセージブローカー

Azure Cache for Redis は、Azure でホストされ、Azure 内外の任意のアプリケーションからアクセスできます。詳しくは、Azure Cache for Redis を参照してください。

Azure Portal で、Redis Cache を作成します。

キャッシュの詳細ページで、次の情報を入力します。

  • プライマリキー
  • セカンダリキー
  • プライマリ接続文字列
  • セカンダリ接続文字列

これらの接続の詳細を ColdFusion Administrator のキャッシュページで使用します。

接続を確認」をクリックすると、キャッシュエンジンが Azure クラウドに保存されます。

AWS ElastiCache

Amazon ElastiCache は、Amazon Web Services の Caching-as-a-Service(サービスとしてのキャッシュ)です。AWS は、クラウドの分散メモリ内キャッシュ環境を管理およびスケーリングします。AWS は、分散キャッシュ環境のデプロイおよび管理に関する複雑さを取り除きます。

詳しくは、AWS ElastiCache を参照してください。

AWS ElastiCache は、次の機能を提供します。

  • キャッシュノードエラーの自動検出および回復。
  • 失敗したプライマリクラスターの自動フェイルオーバー
  • ノードおよびクラスターの柔軟なアベイラビリティーゾーンの配置

Amazon ElastiCache には、Memcached と Redis の 2 つのキャッシュエンジンが用意されています。既存の Memcached または Redis キャッシュ実装を Amazon ElastiCache に容易に移行できます。アプリケーションの Memcached/Redis エンドポイントを変更するだけです。

AWS では、EC2 インスタンスへの SSL トンネルを作成する必要があります。すると、localhost が AWS のキャッシュエンジンポートにリダイレクトされます。

AWS コンソールで、Redis および Memcached 用にキャッシュを作成してから、ColdFusion Administrator のキャッシュの詳細ページに詳細を入力します。

アドビのロゴ

アカウントにログイン