Accessアプリケーションをターミナルサービスで動かす
更新日:2015年3月12日
さて、Accessユーザーの皆さんはターミナルサービスをご存知でしょうか?
あまりよく知らない、という方のために最初に少しおさらいを。
-
■ターミナルサービスとは
ターミナルサービスは、サーバー内にインストールしたプログラムをクライアントから利用させる
一つの方法のことで、サーバーの画面情報、マウス、キーボード情報だけをクライアント側
に送信して、クライアントからサーバーをリモートコントロールするサービスです。
このような考え方のソフトはNTサーバーの時代からあり、それらとしては
LAPLINKやpcAnywhereなどが有名です。
サーバーにインストールしたアプリケーションを、リモートコントロールという形で
複数のクライアントが同時利用できるわけですから画期的なこととなるわけですが、
残念ながらこれまでのリモートコントロールソフトウエアでは画面描画がどうしても
ワンテンポ遅れる印象があり、使いにくさを感じざるを得ませんでした。
【画面はターミナルサービスでAccess販売管理を使っているところ】
ではなぜ今またターミナルサービスなのか?
この疑問に応えるべく、まず最初にマイクロソフト社が提供する
『速報!ターミナルサービスガイドブック』から内容をかいつまんでご紹介しましょう。
ドキュメントによればターミナルサービスには次のような利点があるとのこと。
-
■現状の問題点とターミナルサービスの利点
-
現状の問題点
-
ターミナルサービスを使えばこうなる!
- クライアントPCへのアプリケーションインストール作業がたいへん
※台数が増えると深刻な問題となる
- サーバーに1度インストールするだけでよい
- 外出先から業務アプリケーションを使いたい
※出張中でも業務アプリをを使いたい
- ターミナルサービスはインターネットを利用して利用することも可能
- 性能の低いPCを有効活用したい
※古いPCはウイルス検索ソフトの影響で遅く感じる?
- クライアントPCにはアプリケーションをインストールしないので
クライアントCPUに負荷はかからない
- 各クライアントのセキュリティ状態が不安
- データがサーバー上に置かれるのでサーバーのセキュリティ確保を
行えば一応は安心
- 各クライアントのバージョン管理がたいへん
- バージョンアップ作業もサーバーに一度行うだけでよい
『アプリケーションのインストール作業が一度だけで済む』、このことはシステム担当者に
とって劇的な労力削減となります。
昨今、クライアントマシンにはたくさんのアプリケーションがインストールされていますが、
これらを管理するシステム担当者の苦労ははかり知れません。
というわけで、これだけをとっても導入を検討するに値するといえるでしょう。
また、従来のAccessMDBアプリケーションではデータベースのデータがネットワークを
通って目の前のクライアントまで一度はやってくることになり、その結果トラフィックに多大な
影響を与えていたわけですが、ターミナルサービスを利用した場合ではクライアントサーバーシステムと同じく
(プログラムファイルでさえサーバー側にあるのでそれ以上とも言えるか)、トラフィックに
ほとんど影響を与えない方式となります。このため、ターミナルサービスアプリケーションの操作性はこれまで
以上に軽快感を与えてくれることとなるわけです。
※ターミナルサービスでは画面情報などをサーバーからクライアントにリアルタイムに転送するので、
トラフィック変化がゼロということにはならない。
さらには、クライアントに性能が低いマシンを利用したとしても、データベース処理をサーバー
側ですべて行ってくれるので処理速度に不満は感じられないはずです。
サーバー側にアプリケーションやデータがあるということは、クライアントマシンはいつでも
気楽に初期化できるということ。すなわち、万が一のトラブル時にも対応しやすいということ。
クライアントの再セットアップも短時間でできるということになります。
-
■ターミナルサービスに必要なライセンス
ターミナルサービス上でAccessプログラムを動作させるには次のようなライセンスが必要です。
- ○Windows Server Device CAL
- ※Windows Server そのものを利用するための基本ライセンスです。
- ○Windows リモートデスクトップサービス Device CAL
- ※ターミナルサービスのクライアントとなるにはこのライセンスが必要です。
※オープンビジネス価格=1本約12000円(参考価格)で複数年利用可能
- ○利用するアプリケーション(AccessやOfficeなど)のボリュームライセンス
- ※たとえば、AccessやOfficeをターミナルサービスで利用するにはターミナルサービスクライアント 台数に見合うボリュームライセンスが必要となります。ただし、サーバー内でランタイム版を利用する場合は購入の必要はありません。
※Accessランタイムを利用する場合はボリュームライセンスは
必要ありません。
アプリケーションのボリュームライセンスには次の2通りがあります。
○ユーザーライセンス
○デバイスライセンス
たとえば、10台のコンピュータを5人で使う場合は5ユーザーライセンスを、逆に人数が10人で 5台のクライアントを利用する場合は5デバイスライセンスを購入すればよいということになり ます。利用状況に合わせてお得な方を選んでください。
-
■クライアント台数とサーバー必要メモリの関係
サーバーの必要メモリ容量は次の通りです。
※マイクロソフト発行:『Windows Server 2008 ターミナル サービスの性能検証と サイジング』より
※ターミナルサービスサーバーには最低でも4GB以上のメモリが必要です。
○1ユーザー当たりの必要メモリ 100~114MB
○システムメモリ 550~650MB
サーバーの必要メモリ合計=システムメモリ + (ユーザー数 × 1ユーザー当たりの
必要メモリ)
-
■ターミナルサービスを使ってみる
実際に、サーバーにAccess2010ランタイムとAccess2010販売管理システムを インストールし、ターミナルサービスで利用してみました。
※Accessランタイムのボリュームライセンスは不要となります。
運用手順は次の通り。
- Windows サーバー にターミナルサーバーソフトをインストールする。
※OSに付属
- サーバーに対して利用する人数分のCALをインストールする。
- サーバーマネージャで利用するユーザーを登録し、所属するグループに
[Remote Desktop Users]を登録する。
- accessランタイムと販売管理システムプログラムをサーバーにインストールする。
- ターミナルサービスRemoteappマネージャで利用するアプリケーションを登録する。
- クライアントのインターネットブラウザーで所定のアドレス
(http://serverアドレス/ts/ja-JP/Default.aspx)を開く。
※上記ページが表示される。
※ブラウザーを利用せずにターミナルサービスアプリケーションを起動する方法もあります。
※詳しくは以下の『ターミナルサービスサーバーへのログイン方法』を参照してください。
- 表示されたページでプログラムアイコンをクリックしてアプリケーションを起動する。
ターミナルサービスクライアントとなるにはクライアントOSがWindows XP SP2以降でなければなりません。
プリンターについては、サーバー内にインストールされたもの、クライアントにインストールされたものの両方を利用することができます。
-
■ターミナルサービスサーバーへのログイン方法
ターミナルサービスサーバーへの詳細なログイン方法は次の通りです。
ブラウザーを開いて、所定のアドレスを開く。
図のようなログイン画面が表示されたらユーザー名と
パスワードを入力して[OK]ボタンをクリックする。
※前もってサーバーにターミナルサービスユーザーを登録しておかねばならない。
しばらくすると次のような画面が表示される。
はじめてログインする場合は、ActiveXコントロールのアドオンを
許可する。
続けて、ActiveXコントロールのインストールを実行する。
途中、左図の警告ダイアログが表示されることがあるが、ここで
[接続]をクリックして処理を続ける。
『TS Web アクセス』画面が表示される。
画面にはあらかじめ利用可能なプログラムが登録されているので、
任意に選択して実行する。
※登録はターミナルサービスサーバー管理者の仕事となる。
アプリケーション起動時に、
『これらの証明書エラーを無視して接続しますか?』という画面が
表示されたら、[はい]をクリックして処理を続ける。
※サーバーに証明書がインストールされていない場合はこのような
警告画面が表示される。
アプリケーションが起動される。
-
■2通りのアプリケーション起動方法

リモートデスクトップ画面
ターミナルサービスでアプリケーションを起動するには大きくわけて『Remoteapp』と
『リモートデスクトップ接続』の2通りがあります。
前者の場合は、上記の『TS Web アクセス』画面に登録されているアイコンクリックして
ダイレクトに目的のアプリケーションを起動する方法。
後者の場合はいったん同画面『リモートデスクトップ』をクリックしてから再度接続先を
指定してターミナルサービスを呼び出す方法です。
後者の方法でターミナルサービスに接続されると左図のようなリモートデスクトップ画面が表示されます。
アプリケーションはメニューまたはアイコンを利用して起動されます。
このデスクトップ画面はは自分専用の画面となり、アイコンを追加したり背景色を
変更したりすることができます。
-
■学生服専門店販売管理システムをターミナルサービスで構築!(実例)
※2015-03-12更新
ターミナルサービスを利用して学生服専門店の販売管理システム(Access2013で作成されたシステム)を構築した実例がありますのでご紹介します。
場所は東京都内某所。店舗数は6店舗。クライアント台数は10台以上。各店舗はそれほど高速でもないVPNで接続されています。
※VPNのスループットは3~4MBPS程度
Access2013のJETエンジンを利用してこのような台数で同時利用するのは少々抵抗がありましたが、結論から言うと現在のところ問題なく稼働しています。
各店舗は生徒からの注文を随時受け付けそれを同時入力します。
それとは別に一定の時間がきたら発注担当者は仕入先に商品を発注します。発注数量は注文がきた分だけを発注するのではなく、過去の販売実績などを加味しながら最適な在庫データとなるよう、受注データ、発注データを確認しながら入学式までにすべての納品が終わるよう、最適な数量を順次発注していきます。
※注文がきた分だけ発注していたのでは生産が短期間(1月から3月)に集中してしまい処理しきれなくなるので、生産ラインの負荷を考慮して前年の夏ごろから発注が順次行われる。
サーバーはWindows Server 2012 R2。メインメモリーは16GBを搭載。Accessはランタイム版を利用。
各クライアント実際の処理速度としてはスタンドアロン利用したときに比べて2割ほど遅くなったと感じますが、それ以外の問題は起きていません。
お客様に言わせると、これまではSQL SERVERを利用した以前のシステム(他社が作成したもの)よりも入力時の処理速度はむしろ速いとの評価を受けています。
※ただし、これは以前のシステムの作り方に問題があったと思われますが。
※処理速度低下の度合いはサーバーのスペックにも左右されます。
Access2013ではADPでの開発、利用ができなくなりましたが、ターミナルサービスを利用したこういった使い方は一つの解決方法といえるかもしれません。
※もちろん、扱うデータ量が多すぎる場合(Accessでは最大ファイルサイズ2GBの制約がある)はこの方法は採れませんが。