TMS Software

TMS Softwareで見るTMS Sparkleのサーバー開発と運用の一体化

TMS SoftwareのTMS Sparkleの次バージョンでは、開発中のコンソール実行、ウィンドウズで常駐実行するサービス、Linuxで常駐実行するデーモンを、一つのプロジェクトと実行ファイルで扱うホスティング層が示されています。



導入前にそろえたい開発と運用の形

サーバーアプリケーションは、開発中に動くだけでなく、本番環境で継続して動かす段階まで考える必要があります。Delphiのサーバープロジェクトでは、本番化の段階で複雑さが出やすいとされています。TMS Sparkleの次バージョンでは、開発中のコンソールアプリケーション、ウィンドウズで常駐実行するサービス、Linuxで常駐実行するデーモンを、一つのプロジェクトと一つの実行ファイルで扱うためのホスティング層が追加されます。TMS XData、TMS RemoteDB、TMS Sphinxなどの土台にも関係するため、これらの製品で作るサーバー構成を検討する際の前提になります。


一つのプロジェクトで複数の実行形態に対応

同じ実行ファイルは、開発時のコンソールアプリケーション、ウィンドウズのService Control Managerに登録されるウィンドウズサービス、Linuxのサービス管理で使われるsystemdデーモンとして動作します。実行形態はコマンドラインで選ばれるため、ビルド、デバッグ、バージョン管理、配置の対象となるプロジェクトは一つにまとめられます。

この構成では、デバッグしたものと配置するものが同じになります。開発用と本番用を別々に扱う前提ではなく、一つのプロジェクトを中心に確認と配置を進められる点が、導入時に確認したいポイントです。


ウィザードから始める作業の流れ

統合開発環境であるIDEから新規作成を行う場合、TMS BIZカテゴリにTMS BIZ関連のウィザードがまとめられています。その中には、すぐに実行できるホスト型サーバーを作成するTMS Sparkle Server、TMS XData Server、TMS RemoteDB Serverの三つが含まれます。選択すると、Win32、Win64、Linux64を対象にしたコンソールプロジェクトが作成され、構成は二つのファイルで始まります。


開発中の確認と停止の流れ

開発中は、サーバーを起動した後に表示されたアドレスをブラウザーで開き、動作を確認できます。停止する場合はCtrl+Cを使い、その時点で処理中のリクエストは完了し、サーバーは正常に停止してIDEへ戻ります。動作確認と停止の手順が明確であることは、検証作業を進めるうえで扱いやすい確認項目です。


ウィンドウズとLinuxでの運用

ウィンドウズでは、直前までデバッグしていた実行ファイルが自分自身をインストールします。インストール後はウィンドウズサービスとなり、起動時に自動で開始する設定になり、通常のサービスとして管理できます。実行ファイルにヘルプ表示を求めると受け付ける内容が一覧され、ServiceOptionsでは、インストール時に付くサービス名、表示名、説明を指定します。

Linuxでは、実行ファイルがsystemd用のユニットファイルを出力します。構成としては、Apacheなどの別のWebサーバーを前段に置くのではなく、配置するバイナリをそのまま扱います。systemctl stopによる停止ではSIGTERMが送られ、Ctrl+Cと同じ正常停止として処理され、ログはjournalに送られます。


構成を見直す観点

運用設計を見直す際は、実行形態ごとに別の成果物を用意するのではなく、一つの実行ファイルをどのモードで動かすかを整理する考え方になります。ビルド、デバッグ、バージョン管理、配置の単位が一つであり、配置対象がデバッグ済みのものと同じであるため、確認すべき範囲をプロジェクト単位で追いやすくなります。


まとめ・お問い合わせ

TMS Sparkleの次バージョンは、サーバーを開発用のコンソール、本番用のウィンドウズサービス、Linuxデーモンとして同じプロジェクトと実行ファイルで扱う方向を示しています。TMS XData、TMS RemoteDB、TMS Sphinxなどで構築するものも基盤としてはSparkleサーバーに当たるため、これらを使うサーバー開発では、開発から配置、運用までの流れを同じ前提で確認できます。

商品の詳細とお問い合わせはこちらから↓↓
 TMS Software製品ページ

-TMS Software
-, ,