#InterSystems IRIS

1 フォロワー · 1.3K 投稿

InterSystems IRISは総合データプラットフォームです

    InterSystems IRISは、企業にとって最も価値のある資産(データ)の取得、共有、理解、そしてデータに基づく行動のために必要なすべてのものを提供します。

    完全なプラットフォームである InterSystems IRIS は、複数の開発技術を統合する必要がありません。より少ないコードで開発が可能で、そのアプリケーションは、システムリソース、メンテナンスなども少なくて済みます。

新着
記事 Hiroshi Sato · 56分 前 2m read

すっかりClaude Codeにはまってきてしまいました。

前回はIRISデベロッパーらしくObjectScriptプログラミングの話ですが、今回は、Pythonプログラミングです。

私は、個人会社を持っていまして、経理の細かいことは、当然税理士さんにお任せなのですが、とはいえ日々の経費の管理は自分でやる必要があります。

基本はエクセルに経費情報を入力するというオペレーションなのですが、入力を省力化するためにIRISデータベースを使用したPythonプログラムを作っていました。

その中で本当はやりたいのだけれども、非常に煩雑で面倒臭い処理(決して難しい処理ではないですが)を先延ばしにしてきました。

そこでこれはClaude Codeの格好の題材だと思い、依頼してみることにしました。

結果は、三回のやり取り(実際には、二回目の依頼の際に間違えて送信ボタンを押したので、実質的に二回)で10分もかからずに修正が終わり、期待した通りの結果を得ることができました。

もし自分でコーディングをした場合、おそらく半日仕事、下手をすれば1日仕事だったかもしれません。

この経験を通して感じたのは、既存プログラムの修正には非常に使えるということです。

多少依頼内容に曖昧な点があっても、既存のコードを非常に高速かつ完全、網羅的に理解してくれるので、そういう曖昧性をある意味埋めてくれます。

0
0 3
新着
記事 Toshihiko Minamoto · 2 hr 前 17m read

InterSystemsテクノロジーを本番環境にデプロイする際の推奨事項の1つは、高可用性を設定することです。 これらのInterSystemsテクノロジーにお勧めのAPI Managerは、InterSystems API Manager(IAM)です。 IAM(特にKong Gateway)には複数のデプロイトポロジーがあります。

高可用性を重視する場合は、以下を利用できます。

a) Kong Traditionalモード複数ノードクラスタ

b) Hybridモード

c) DB-lessモード

それぞれ詳しく説明する前に、最初にInterSystemsが提供するすぐに利用可能なデプロイを理解しましょう(IAMバージョン3.10のインストール)。

Kong Traditionalモード

Kong Traditionalモードは単一ノードクラスタです。 まだお読みでない場合は、@Guillaume Rongierによる素晴らしい記事、 IAM (InterSystems API Manager), Zero to Hero をお読みください。IAMの設定してInterSystems IRISで作業する方法についてついて非常に分かりやすく説明しています。 

現在、Kong Traditionalモードの単一ノードクラスタは、IKO経由でのIAMデプロイオプションでのみサポートされています。

0
0 4
新着
記事 Hiroshi Sato · 3月 4 13m read

最近話題のClaude Codeを使って、ObjectScriptプログラミングをトライしてみました。

もちろんClaude CodeにObjectScriptのコードを書かせるにはそれなりの指示が必要ですが、適切なプロンプトを与えると想像以上にちゃんとしたObjectScriptコードを書いてくれます。

今回試したのは、少し前に投稿したCSPの#server問題に対応するため、#serverをREST APIに書き換えるというものです。

元のソースは、

https://github.com/wolfman0719/shopdemo

これはCSPのデモアプリケーションですが、しっかりと#server機能を使用しています。


結論をいうと、%sessionがRESTとCSP間で共有できないという根本問題があって、実行成功までには至っていませんが面倒なコーディングをかなりカーバーしてくれることがわかります。

(REST APIをCSPクラスで実装することで%session共有の問題を回避でき、Claude Codeが生成したロジックの正しさは証明されました)

そして、Claude Codeは、 ObjectScriptのことかなり理解してくれています。

ObjectScriptプログラマーが少ない問題を大きく改善してくれる可能性があります。
 

それでは、私がどのようなことを行ったか説明します。

2
0 26
新着
記事 Toshihiko Minamoto · 3月 6 7m read

はじめに

あるお客さんから、ワークフローの待受画面での新着通知方法についてご相談がありました。

  • 単純なポーリングだと、通知の遅延や、サーバリソースを消費する
  • ロングポーリングは、待ち受け画面のためにIRISのライセンスを消費する
  • MQTTなどを使うと専用のサーバプロセスが必要

何か良い方法は無いでしょうか。 といった内容です。

この課題に対して調査したところ、以下の方式が見つかりました。

  • ブラウザからSSE(Server-Sent Event)方式を使い、nginx上にアクセス
  • IRIS側から通知が必要なクライアントのIDに対してnginxにメッセージをPOST
  • nginxがルーティングを行い、当該クライアントにメッセージを通知

今回は以下の点について手順や設定等解説していきたいと思います。

  • nginx のソースビルドと Web Gateway のインストール
  • nginx-push-stream-module を使った SSE (Server-Sent Events) 通知
  • ブラウザ受信 (/subscribe) とサーバ送信 (/publish) の最小実装

全体構成

まずは全体像です。データの流れをシンプルに分けることで、役割が明確になります。

0
0 10