マニュアル キャンセル

複数のサーバーインスタンスを使用

  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 11 をインストールする場合、エンタープライズライセンスを持っているか、トライアル版あるいはデベロッパー版の ColdFusion をインストールしていれば、複数のインスタンスおよびクラスターを作成できます。(ColdFusion スタンダード版では、複数のインスタンスはサポートされません。)

複数のサーバーインスタンスについて

ColdFusion Administrator では、サーバーインスタンスやクラスターを作成できます。また、リモートの Tomcat サーバーに接続し、それらのサーバーをクラスターに追加することもできます。

ColdFusion の複数のインスタンスを実行することには、次のような利点があります。

  • アプリケーションの隔離:各サーバーインスタンスに個別のアプリケーションをデプロイできます。設定内容はサーバーインスタンスごとに個別に保持されます。各サーバーインスタンスが別の Java 仮想マシン(JVM)上で実行されるので、1 つのアプリケーションで問題が発生しても他のアプリケーションに影響を与えません。
  • クラスタリング(負荷分散とフェイルオーバー):各サーバーインスタンスに同じアプリケーションをデプロイし、それらのサーバーインスタンスを 1 つのクラスターに追加します。Web サーバーコネクタは負荷分散を自動的に管理し、いずれかのサーバーインスタンスが停止した場合は別のサーバーインスタンスにリクエストを転送することで、パフォーマンスと安定性を最適化します。

ファイルの位置についての注意事項

ColdFusion では、CFM ページの格納場所として、外部 Web サーバーのルートの下、または ColdFusion Web アプリケーションのルートの下を使用できます。ここでの説明は、ColdFusion Web アプリケーションのルートの下に CFM ページを格納し、アプリケーション用にコンテキストルートを指定していることを前提としています。

Web サーバーのルートから CFM ページを配信する場合の詳細については、Web サーバーの管理を参照してください。

追加サーバーインスタンスの定義

ColdFusion Administrator のエンタープライズマネージャーページを使用して、複数の ColdFusion インスタンスを作成できます。このページを使用できるのは、ColdFusion のエンタープライズ版、トライアル版、デベロッパー版のみです。

サーバーインスタンスの定義

ColdFusion をサーバー設定(JEE 設定ではなく)でインストールした後、ColdFusion Administrator を使用して ColdFusion インスタンスを作成します。

  1. ColdFusion Administrator で、エンタープライズマネージャ/インスタンスマネージャに移動します。
  2. 「新規インスタンスの追加」をクリックします。
  3. サーバー名とサーバーディレクトリを入力します。(サーバー名フィールドで tab キーを押すと、フィールドに入力された名前が、Administrator の Javascript コードによって既存のサーバーディレクトリの場所に自動的に追加されます。)
  4. (オプション)「Windows サービスの作成」にチェックを付けます。
  5. 「送信」をクリックします。新しいインスタンスが作成されるまで待機します。
  6. 作成された新しいインスタンスは、インスタンスマネージャーに表示されます。ここから、Administrator を起動、停止、再開、編集、アクセスしたり、このインスタンスの Web サイトにアクセスしたりできます(Administrator および Web サイトへのアクセスには、インスタンスマネージャのデフォルトの選択に従って、そのインスタンスの内部 Web サーバーポートを使用して実行されます)。
  7. (オプション)インスタンスマネージャを編集するには、編集アイコンをクリックします。なお、内部 Web サーバーポートと同様に、負荷分散係数も編集できます。負荷分散係数は、インスタンスが受け持つ負荷を表し、インスタンスがクラスターの一部になっている場合にのみ指定できます。例えば、最初のインスタンスの負荷分散係数を 1 に、2 つ目のインスタンスの負荷分散係数を 2 に設定したとします。この場合、2 つ目のインスタンスに 2 倍の負荷がかかります。
  8. 「送信」をクリックします。

アプリケーションの隔離の有効化

それぞれ別の ColdFusion アプリケーションを実行する個別のサーバーインスタンスを作成すると、各アプリケーションに ColdFusion および JEE サーバーのリソースを個別に割り当てることができます。この設定では、複数のサーバーインスタンスを実行する単一の外部 Web サーバーを 1 台のコンピュータ上に構成し、各サーバーインスタンスごとに仮想ホスト (またはサイト) を割り当てるのが普通です。

注意:ColdFusion と同様に、他の JEE アプリケーションサーバーにも同等の機能があるので、そのような JEE サーバーに ColdFusion JEE 設定をデプロイする場合もほとんどの概念がそのまま通用します。

この方法で複数の独立したアプリケーションを実行することには、次のような利点があります。

  • ColdFusion アプリケーションレベルまたは Tomcat サーバーレベルでエラーが発生しても、他の ColdFusion アプリケーションに影響を与えません。
  • マルチホームサーバーをサポートできます。1 つの Web サーバーで複数の IP アドレスまたはドメイン名(例えば、www.mycompany.com と services.anothercompany.com の両方)をサポートし、それぞれに対して別の Web ルートの内容を提供できます。詳しくは、マルチホーミングを参照してください。

    注意:『ColdFusion のインストールと使用』では、1 台のコンピューター上に複数のサーバーインスタンスを作成する方法を説明しています。複数台のコンピュータ上にサーバーインスタンスを作成するには、各コンピュータ上に個別の ColdFusion エンタープライズ版のライセンスが必要です。

    アプリケーションの隔離を完全に実現するには、使用する Web サーバーの機能を使用して、各アプリケーション用に個別の Web サイトを作成します。この概念を表す用語は Web サーバーによって異なります。例えば IIS では個別の Web サイトを定義し、Apache では複数の仮想ホストを作成します。

    ここでは、エンタープライズ版の複数のインスタンス設定で ColdFusion を実行する場合の手順を説明します。この原則は、ColdFusion を他の JEE アプリケーション上で実行する場合にも適用されます。ただし、すべての JEE アプリケーションサーバーが外部 Web サーバーと統合されるとは限りません。詳しくは、マルチホーミングを参照してください。

    次の手順では、各アプリケーションをそれぞれ名前の付いたコンテキストルートにデプロイするものと仮定します。この場合、ユーザーは http://_hostname_/_context-root_/_pagename_.cfm を指定して CFM ページにアクセスできます。同じサーバーインスタンスで別の Web アプリケーションが動作している場合は、個々の Web アプリケーションごとに異なるコンテキストルートを使用する必要があります。

    例えば、コンテキストルートが cf の場合、ユーザーが CFM ページにアクセスするには http://_hostname_/cf/_pagename_.cfm を指定します。コンテキストルートについて詳しくは、『ColdFusion インストール』を参照してください。

    注意:この {{cf}} はコンテキストルートですが、Web アプリケーションのディレクトリ構造とは関連していません。

複数のサーバーインスタンスを使用したアプリケーションの隔離

  1. 追加サーバーインスタンスの定義の手順に従って、別個のサーバーインスタンスをもう 1 つ作成します。ビルトインの Web サーバーを使用する場合は、下の手順 6 に進みます。
  2. 使用する Web サーバーに応じた方法で、アプリケーションの仮想 Web サイト(別の Web サイト)を作成します。詳細については、マルチホーム、または使用する Web サーバーのマニュアルを参照してください。
  3. 各仮想 Web サイトをテストし、HTML ページが正しく配信されることを確認します。
  4. アプリケーションの ColdFusion ファイルを仮想 Web サイトの Web ルートに保存します。または、任意で ColdFusion Web アプリケーションのルートに保存することもできます(アプリケーションの移植性を考慮)。
  5. 使用する Web サーバーに応じた手順で、仮想 Web サイトとサーバーインスタンスとの接続を設定します。詳しくは、アプリケーションの隔離を行う場合の Web サーバー設定を参照してください。
  6. アプリケーションをテストします。
  7. サーバーインスタンスごとに、ここまでの手順を繰り返します。

アプリケーションの隔離を行う場合の Web サーバー設定

アプリケーションを隔離するために複数のサーバーインスタンスを使用する場合、Web サイトおよびサーバーインスタンス間の通信を設定する手順は、個々の Web サーバーによって異なります。

IIS 上でのアプリケーションの隔離の設定

IIS 環境で、複数のサーバーインスタンスを持つ複数の仮想 Web サイトを使用する場合は、仮想 Web サイトとサーバーインスタンスの個々の組み合わせごとにフィルターとマッピングを定義します。

ここでは、既にサーバーインスタンスと仮想 Web サイトがアプリケーションの隔離の有効化の説明に従って作成されていることを前提に説明します。

IIS を使用した、アプリケーションの隔離のための複数のサーバーインスタンスの設定

Web サーバー設定ツールを、個々の仮想 Web サイトにつき 1 回ずつ、繰り返し実行します。ColdFusion 11 では、各インスタンス内(cfroot\instancename\runtime\bin 内にある wsconfig ツール)から Web サーバー設定ツールを実行してから、接続先の Web サイトを指定する必要があります。Web サーバー設定ツールを実行する方法の詳細を参照してください。

Apache 上でのアプリケーションの隔離の設定

Apache 環境で、複数のサーバーインスタンスを持つ複数の仮想ホストを使用する場合は、httpd.conf ファイルを手作業で編集します。

ここでは、既にサーバーインスタンスと仮想 Web サイトがアプリケーションの隔離の有効化の説明に従って作成されていることを前提に説明します。

Apache を使用した、アプリケーションの隔離のための複数のサーバーインスタンスの設定

cfusion および server1 という 2 つのインスタンスがあるものとします。

  1. wsconfig ツールを使用して、cfusion インスタンスに Apache Web サーバーを設定します。この手順では、コネクタ関連のファイルを cf_root¥config¥wsconfig¥1 フォルダーに作成します。また、mod_jk.conf を <Apacheroot>\conf フォルダーに作成します。mod_jk.conf }} ファイルは {{httpd.conf に含まれます。
  2. Apache 仮想ホストを設定します。
    1. cf-root¥config¥wsconfig¥1 の workers.properties で、server1 を workers.list に追加します。例えば、worker.list=cfusion,server1 のようにします。
    2. 次のブロックを追加します。

      worker.server1.host=localhost
      worker.server1.port=8014

      注意:ポートは server1 の AJP ポートで、cf_root¥server1¥runtime¥conf¥server.xml の server1.server.xml で確認できます。

    3. cf-root¥config¥wsconfig¥1 にある uriworkermap.properties の内容を、{{uriworkermap1.properties}} にコピーします。cfusion を server1 に置き換えます。
    4. 各仮想ホストで、次の行を追加します。例えば、VH1 は ColdFusion のインスタンスです。これは JkMountFile "cf_root¥config¥wsconfig¥1¥uriworkermap.properties" となっている必要があります。VH2 は server1 のインスタンスです。これは JkMountFile "cf_root¥config¥wsconfig¥1" となっている必要があります。

Sun ONE Web サーバー上でのアプリケーションの隔離の設定

Sun ONE Web Server 環境で複数のサーバーインスタンスを含む複数の仮想ホストを使用する場合は、各 ColdFusion サーバーインスタンスに 1 つの Sun ONE Web Server インスタンスがマップされます。

Sun ONE Web Server を使用する場合にアプリケーションを隔離するための複数のサーバーインスタンスの設定

Web サーバー設定ツールを Sun ONE Web Server のインスタンスごとに実行します。実行のたびに異なる設定ディレクトリと ColdFusion サーバーインスタンスを指定する必要があります。ColdFusion MX アプリケーションのオプション(GUI)で「Web サーバーの設定」を選択してください。

クラスタリングの有効化によるロードバランスとフェイルオーバーの実現

「ロードバランス」とはエンタープライズレベルの機能で、アプリケーションサーバーがクラスター内にある複数のサーバーインスタンスへと自動的にリクエストを分散させることです。また、クラスタリングを使用すると、元のサーバーインスタンスが停止した場合でも、動作中の他のサーバーインスタンスへとアプリケーションサーバーがリクエストを転送できます。

新しい管理 API メソッドを使用してインスタンス名を(getinstancename in runtime.cfc)を取得し、ロードバランスとフェイルオーバーを実現するには、同じ ColdFusion アプリケーションおよび設定内容を複数のサーバーインスタンスにデプロイし、それらのインスタンスを 1 つのクラスターに追加します。各インスタンスとも、デプロイするアプリケーションおよび設定するリソース(データソース、Solr コレクション、マッピングなど)を同じにする必要があります。Web サーバーコネクタは負荷分散を自動的に管理し、いずれかのサーバーインスタンスが停止した場合は別のサーバーインスタンスにリクエストを転送することで、パフォーマンスと安定性を最適化します。

注意:クラスタリングが動作するには、ネットワークに接続されている必要があります。

最大限のフェイルオーバー保護を実現するには、1 つのクラスター内で複数台のコンピュータを使用してください。ただし、使用するコンピュータごとに個別の ColdFusion エンタープライズ版ライセンスを購入する必要があります。

クラスター内のサーバーインスタンスでセッションフェイルオーバーを実装するには、各サーバーインスタンスでセッションレプリケーションを有効化します。セッションレプリケーションは、クラスター内のサーバーインスタンス間でセッション情報をリアルタイムに調整する機能です。セッションレプリケーションを有効にすると、現在のサーバーが使用不可能な場合に、動作中の他のサーバーへと Tomcat がリクエストを自動的に転送します。

注意:セッションレプリケーションを使用するクラスタの場合、セッションデータは、変化するたびにクラスタ内の他の各サーバーへとコピーされます。したがって、セッションスコープに大量の情報を格納していると、この動作のためにパフォーマンスが低下する可能性があります。セッションスコープに格納する情報が大量になると考えられる場合は、その情報をデータベース内のクライアント変数に格納することを検討してください。

ロードバランスとフェイルオーバーのための、サーバーインスタンスのクラスターの設定

ColdFusion Administrator を使用してクラスターを管理します。

  1.  ColdFusion Administrator で、エンタープライズマネージャ/クラスターマネージャをクリックします。
  2. クラスター名を入力して、「追加」をクリックします。
  3. クラスター名をクリックして、要件に基づいてサーバーをクラスターに移動します。
  4. (必要であれば)マルチキャストポートを編集します。マルチキャストポートは、クラスターメンバーのグループ化に使用します。マルチキャストポートのデフォルト値は 45564 です。クラスターを作成すると、cfroot¥cfusion¥config¥cluster.xml ファイルにポートが追加されます。マルチキャストポートについて詳しくは、http://tomcat.apache.org/tomcat-6.0-doc/config/cluster-membership.html を参照してください。
  5. スティッキーセッションが必要かどうかを指定します。スティッキーセッションを指定した場合、クライアントのセッションが最初に確立されたインスタンスに、そのクライアントのすべての後続リクエストがマッピングされるようになります。スティッキーセッションを無効にすると、セッションレプリケーションが有効になることに注意してください。
  6. 「送信」をクリックします。

クラスターへのリモートインスタンスの追加

リモートインスタンスをクラスターに追加するには、クラスターブロックをリモートインスタンスの server.xml に追加します。次に、リモートインスタンスを登録して、インスタンスをクラスターに追加します。 Tomcat でのクラスター設定について詳しくは、http://tomcat.apache.org/tomcat-5.5-doc/cluster-howto.html を参照してください。

セッションレプリケーションを使用する場合は、「メモリ変数」ページに移動して J2EE セッションを有効化します。クラスター内のすべてのサーバーインスタンスに対して J2EE を有効化してください。ColdFusion Administrator で J2EE セッションを有効化しないと、セッションレプリケーションは正常に機能しません。

CFC シリアル化では、クラスターで J2EE セッションレプリケーションを使用して、クラスター内のすべてのインスタンスでセッションデータの CFC にアクセスできます。セッションレプリケーションを有効にすると、セッションスコープ変数もクラスター内で複製されます。ただし、セッションレプリケーションではセッションスコープの CFC または変数内の配列のレプリケーションはサポートされません。また、セッションフェイルオーバーの場合は CFC 内にデータを保持してアクセスすることもできます。セッションスコープ内に格納された ColdFusion 構造体は、フェイルオーバーの後でもセッションスコープで使用できます。 

例えば、複数の ColdFusion のインスタンスを実行してサーバーの負荷を分散させている場合、セッション内に有用なデータ(CFC を含む)を格納して、そのセッションで配信されるすべてのページでデータにアクセスすることができます。CFC シリアル化を有効にするには、次のようにセッションで CFC を設定します。

<cfset session.datasourcecomponent = cfccomponent>

フェイルオーバーが発生したら、次のように CFC のメソッドにアクセスしてメソッドを呼び出すことができます。

<cfset check = session.datasourcecomponent.verifyDSN("testdsn")>

  1. リモートインスタンスをローカルマシンに登録します。
  2. ローカルマシンでクラスターを作成します。
  3. リモートインスタンスの cfroot_instance-name_runtime\conf\server.xml ファイルを開きます。
  4. </host>}} エントリと {{</engine> エントリの間に次のブロックを追加します。

    <Manager notifyListenersOnReplication="true" expireSessionsOnShutdown="false" className="org.apache.catalina.ha.session.DeltaManager">
    </Manager>
    <Channel className="org.apache.catalina.tribes.group.GroupChannel">
    <Membership port="45565" dropTime="3000" address="228.0.0.4" className="org.apache.catalina.tribes.membership.McastService" frequency="500">
    </Membership>
    <Receiver port="4003" autoBind="100" address="auto" selectorTimeout="5000"
    maxThreads="6" className="org.apache.catalina.tribes.transport.nio.NioReceiver">
    </Receiver>
    <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
    <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender">
    </Transport>
    </Sender>
    <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector">
    </Interceptor>
    <Interceptor className="org.apache.catalina.tribes.group.interceptors.
    MessageDispatch15Interceptor">
    </Interceptor>
    </Channel>
    <Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter="">
    </Valve>
    <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve">
    </Valve>

    <ClusterListener className="org.apache.catalina.ha.session.
    JvmRouteSessionIDBinderListener">
    </ClusterListener>
    <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener">
    </ClusterListener>

    </Cluster>

     

  5. エントリ内のメンバーシップポートをクラスターのマルチキャストポートで更新します。
  6. ローカルホストの ColdFusion Administrator を使用して、ローカルインスタンスとリモートインスタンスをクラスターに追加します。

    注意:リモートインスタンスとローカルインスタンスの JVM ルートを同じにしないでください。

  7. すべてのインスタンスを再起動します。

注意:複数のインスタンスでコードを実行する場合、リクエストされたテンプレートを現在実行中のインスタンスをレポートする CFML コードを実行すると便利です。セキュリティ上の理由で、現在のインスタンス名を提供する関数はありませんが、ColdFusion の管理 API は、インスタンス名を取得するメソッドを提供します(実行時 CFC 内の getInstanceName メソッド)。

リモートサーバーインスタンスに関する ColdFusion Administrator での定義

ColdFusion Administrator を使用して ColdFusion の新規リモートインスタンスを登録します。

  1. ColdFusion Administrator で、エンタープライズマネージャ/インスタンスマネージャ/リモートインスタンスの登録をクリックします。
  2. インスタンス名、リモートホスト、リモートポート、http ポート、JVM ルート、負荷分散係数などの詳細を指定します。 

    インスタンス名は、そのインスタンスを識別するための文字列です。リモートポートと HTTP ポートがインスタンスマネージャページに表示されます。 これらのポートは、インスタンスの runtime¥conf フォルダーにある server.xml ファイルに指定されています。リモートポートは AJP ポートで、インスタンスポートはコネクタポートです。

    JVM ルートはリモートインスタンスの名前です。 JVM ルートは、特定の Tomcat ワーカーに対する識別子として機能する属性です。 JVM ルートは、インスタンスの runtime¥conf フォルダーにある server.xml ファイルに指定されています。JVM ルートについて詳しくは、http://tomcat.apache.org/tomcat-5.5-doc/cluster-howto.html を参照してください。

    注意:リモートインスタンスとローカルインスタンスをクラスタに追加した場合は、両方のインスタンスに同じ JVM ルートを設定することはできません。

  3. HTTP 経由のリモート開始および停止機能を有効にするには、「Admin コンポーネントのポート」、「Admin コンポーネントのユーザー名」および「Admin コンポーネントのパスワード」に入力する必要があります。 デフォルトの Admin コンポーネントのポートは、8985 です。

    注意:この機能を有効にするには、リモートホストに Admin コンポーネントをインストールします。

    1. リモートホストで、cfroot¥cfusion¥jetty¥etc¥jetty.xml を開きます。
    2. org.mortbay.jetty.bio.SocketConnector という文字列を検索します。
    3. リモートホストの IP アドレスでホストを更新します。
    4. jetty サーバーを再起動します。
  4. 「送信」をクリックします。
注意:ColdFusion 8、9 または 10 で IIS をすべてのサイトに対して設定している場合、ColdFusion11 で IIS をすべてのサイトに対して設定することはできません。また、ColdFusion 11 で IIS をすべてのサイトに対して設定している場合、ColdFusion 8、9 または 10 で IIS をすべてのサイトに対して設定することはできません。
アドビのロゴ

アカウントにログイン