Last modified: Wed Dec 28 17:44:45 JST 2005
MONTSUQIは現在開発中のLinux上のOLTPモニタです。仕様や考え方は富士 通の大型汎用機用トランザクションモニタである、AIMを参考にしています。
名称がpandaからMONTSUQIという名に変更になっています。これは、作者が「も うちょっとマジメな名前にしよう」と思ったからです。元々pandaの名前は「パ ンダはきっちり食った順番に消化する」という話から、「それはトランザクショ ンキューに似てるな」と思って付けたもので、いわばコードネームなのです。 何のacronymでもないし、理由が理由なんで、あまり大きな声では言えんのです。 で、まぁちゃんと納品するプログラムなんで、もうちょっとマシな名前というこ とで、MONTSUQI(MONitor of Transaction Service, Utitily and Queue Interface)なんつーこじつけのacronymを考えて、MONTSUQIという名前にしたの が、実は去年のことです。わかる人はわかると思いますが、「紋付」というの は、英語のtuxedo(タキシード)に対応した語で、つまりは同じOLTPモニタである TUXEDO に対抗しているわけです。同じ「対抗」ということなら、「ジーパンにT シャツ」な方向もあったのですが、やはりOLTPモニタですから、「きっちりと した正装」でないとと言うことで、国産でもあるので、「西洋の正装がTUXEDO なら、日本の正装はMONTSUQIだぜい」ということで、考えた名称です。
本システムは 日本医師会 殿による、 ORCAシステム のミドルウェアとして採用されています。つまり、現状既に数100サイト(もっ と?)で業務システムを動かしているソフトウェアです。また、 Laborシリーズでも使ってい ます。
ただし、現在公開のバージョンはトランザクション管理はしていることはして いますが、まだ私の考える仕様にはなっていません。一応使えることは確かな のですが、「まだこんなもんじゃないぜ」です。以前の版よりは、かなり強力 になりましたが。
MONTSUQIとしての言語対応は、 dotCOBOL と OpenCOBOL とCと Ruby の他、CGI類似のインターフェイスにより、perl等にも対応しています。ただ しCGI類似のインターフェイスでは、Javaのような起動に時間のかかる処理系 では現実的ではないので、常駐型のハンドラを開発中です。1つの業務内で複 数の言語ハンドラが使用出来ます。つまり、アプリケーション開発言語の混ぜ 書きが可能です。
データベースはPostgreSQLに対応していますが、それ以外のデータベースシス テムへの対応は、若干のコードを追加するだけでOKです。何種類かのデータベー スシステムを、組み合わせてトランザクション管理するということも可能になっ ています。たとえば、PostgreSQLの他に全文検索エンジンを絡めるとか、imap フォルダをデータベースとしてアクセスしてアプリケーションから使うという こともコード追加で可能になっています(そのような抽象化がされている)。
MONTSUQIのモジュールにはgltermというGUIをC/Sで実現するライブラリがあり、 MONTSUQIとは無関係に利用可能です。gladeで作った画面が処理出来ます。
同様にhtserveというwebアプリケーションを動かすためのライブラリもあり、 これもMONTSUQIと無関係に利用可能です。HTML + マクロで画面を定義するこ とが出来、アプリケーション作成とデザインを全く独立に行うことが出来ます。
gltermはMONTSUQIの一部のため、プログラムはMONTSUQIの アーカイブの中にあります。
アーカイブの中にあるサンプルのスクリーンショットです。
SmartDocで書いたドキュメントが、 MONTSUQI解説書にあります。このドキュメントを閲覧するのは、 EDoMaEを使っています。
MONTSUQIは以下のライブラリに依存しています。
なお、web機能だけ使う場合はgtk+pandaは不要ですが、その時にはconfigure のオプションとして、
--disable-client
を指定する必要があります。
質問等がありましたら、直接私ま で連絡下さい。既に実績のあるソフトウェアですから、業務システムに使うの には十分でしょう。
一緒に開発したい人を歓迎です。本格的に取り組みたい方は、 勤務先の採用情報 なんぞも 見てもらうと嬉しいかと。慢性的人手不足で公私共に苦しんでおります。
MONTSUQI(panda)を作るのに必要になったウィジェットです。現在は、
が入っています。つまりGTK+に不足している「業務システムを作るのに必要な ウィジェット」を強化したものです。
ただ、仕事の都合で全部が全部私の作品じゃないです。
gtk+pandaに対応したlibgladeもあります。同じく、 MONTSUQI.ORGから取って下さい。
MONTSUQIのデータ処理手続きをライブラリ化したものです。MONTSUQI内部での データ形式を介して、COBOL形式(2種類), CSV(4種類), CGI, RFC822, XML(2種 類)間での相互のデータ変換を可能にしています。同じく、 MONTSUQI.ORGから取って下さい。