apache-php-OpenCOBOL-perl-MySQL貫通ヽ(´ー`)ノ
とりあえずapache上のmod_php5から呼び出されたphpスクリプト中でphp_opencobol.so使ってOpenCOBOLで書いたプログラム(*.so形式)を呼び出してその中からcob_perl.so経由でperlスクリプト呼びだしてさらにDBI/DBD使ってMySQL呼ぶところまで完了。
ユーザー
|
(http)
|
apache
|
(mod_php5)
|
php
|
(php_opencobol.so)
|
OpenCOBOL
|
(cob_perl.so)
|
perl
|
(DBI/DBD)
|
MySQL
シカケは大がかりなんですが、コードは短いです(たいしたことやってないので)。現場の方ではさらにapacheとユーザの間にCurlというリッチクライアントが入ります。つまりコレ(;´Д`)CurlとPHPとCOBOLとperl(+SQL?)という多数の言語が入り交じってる環境です。ただし、COBOL部分に関してはレガシー資産のかなり部分を流用しますし、perl部分についてはこちらが用意したDB/ISAMの変換部分をほとんどそのまま利用して貰うことになってます。
モノ自体のコンセプトは昨年の10月頃には出来てて、基本部分も稼働してたんですが先ほどメモリリーク関連のバグが解決しましてヽ(´ー`)ノapache配下のmod_php5から繰り返し呼び出してもSIGSEGVでオチ無くなりました。CGI版の場合は繰り返しは呼び出さないので顕在化してなかったんですが、module版のphp5では数回呼び出すとオチるという苦しい状況でした。解決。
cob_perlつかって印刷イメージをPDFで吐くとかもやってます。またinitだけじゃなくて環境を再初期化しないpinitとかも実装中ヽ(´ー`)ノまだまだネタは尽きないようです。