はじめに (および本記事を書いた動機)

ObjectScript コードのユニット (ClassMethod など) を実行する場合、そのスコープ外にあるシステムの諸部分と対話するときに適切なクリーンアップを行えないことが原因で、様々な予期せぬ副作用が発生することがあります。 以下にその一部を紹介します。

0 0
0 231
記事
· 2021年4月5日 11m read
WebSocketのチュートリアル

はじめに

Webで行われるサーバーとクライアント間のほとんどの通信は、リクエストとレスポンスの構造に基づいており、 クライアントがサーバーにリクエストを送信すると、サーバーがそのリクエストに対するレスポンスを送信します。 WebSocketプロトコルは、サーバーとクライアント間の双方向通信チャンネルを提供するプロトコルで、サーバーがリクエストを受信しなくても、クライアントにメッセージを送信することができます。 WebSocketプロトコルと、InterSystems IRISでの実装についての詳細は、以下のリンクをご覧ください。

0 0
0 3.2K
これはIRIS 2020.2で動作するコーディングの例です 
最新バージョンとは同期していません。
また、InterSystemsのサポートによるサービスはありません

動作中のデモを確認できるデモビデオを以下で公開しています。https://youtu.be/dSV-0RJ5Olg

皆さんこんにちは
完全に新しいIRISイメージとたった4行のDockerコマンドを使って実行するイメージを使ってマイクロサービスのデモを行いましょう。
2020年6月1日 - rcc

すべてのパーツを1つのコンテナイメージにまとめたコンパクトなオールインワンバージョンが公開されました。
詳細はこちら: IRIS-NativeAPI-Nodejs-compact
2020年5月24日 - rcc

Dockerを使った簡易インストールを追加しました。コンテキストを参照
2020年5月25日 - rcc

Linux & Windowsに最適な検証済みの強化スクリプトはこちら
https://github.com/rcemper/WSockClientMicroSV/blob/master/READMEwindows.MD
2020年5月26日 - rcc

このデモは、Caché用にすでに存在するNode.jsに基づくWebSocketクライアントを再設計したものです。 主に以下のような変更点があります。

  • 新しいIRIS Native API for Node.jsの使用。特にグローバル配列を操作する場合
  • 直接トリガーされたクライアントからサーバー設計への変更
  • マイクロサービス/マイクロサーバーの例として、結果を別のdockerイメージに配置
  • マイクロサービスの実行を制御するための単純なインターフェースをIRISに追加
0 0
0 223

これは InterSystems FAQ サイトの記事です。

TRYブロック内で任意のカスタムエラーを発生させたい場合、以下のように throw で例外を渡すことが可能です。

以下のサンプルでは、Stcount が 1 より小さい場合にカスタムエラーを発生させています。

0 0
0 202

これは InterSystems FAQ サイトの記事です。

ターミナルでルーチンやクラスのコンパイルを行う際、コンパイル結果が画面に表示されるのでエラーが発生した場合でも確認しやすいですが、一括コンパイルの場合は、大量のコンパイル結果の中にエラー情報が含まれてしまうためエラー情報だけを取得したい場合には少し工夫が必要です。

以下、ルーチン/クラスの一括コンパイル時の結果からエラー情報を取得する方法をご紹介します。

0 0
0 139

これは InterSystems FAQ サイト の記事です。

以下のサンプルでは、画像ファイルをクラスプロパティにBase64文字列にエンコードして保存し、再びそれをBase64でデコードし、別のファイルに復元しています。


【使用クラス】

Class User.test Extends %Persistent
{
Property pics As %GlobalBinaryStream;
}


【取込み時】

0 0
0 1.1K
記事
· 2022年2月9日 2m read
IRIS-NativeAPI-Nodejs-compact (jp)

これは、前回の「DockerマイクロサーバーとしてのIRIS Native APIを使用するWebSocketクライアントJS」のフォローアップです。

すべてのピースが1つのDockerイメージにまとめられたため、インストールがはるかに簡単になりました。
作業が楽になります。 ただしもちろん、マイクロサービスの原則はわかりにくくなくなっています。
オールインワンのバンドルパッケージであるため、 コンパクトになっています。

0 0
0 215

タイムトラベルとはパリを訪ねるようなもの。 ガイドを読むだけじゃなく、そこに足を踏み入れなければならない。 ご飯を食べて、動詞の使い方を間違えたり、2 倍の料金を請求されたり、見ず知らずの人とキスするものさ。

ドクター

これから時空を超えた旅をしましょう。未来と過去の日付を見て、様々なフォーマットで計算する方法を説明します。 ターディスは待ちません。コントロールに就いてしっかりつかまりましょう。

ターディスでの旅

0 0
0 99

これはInterSystems FAQ サイトの記事です。

$ZHorologを使用します。

$ZHorologシステム変数はInterSystems製品を起動してからの経過時間(秒)を保持しています。

2点間の$ZHorolog値の差を取るだけで正確な経過時間を取得する事が出来ます。

詳しくは以下、ドキュメントをご参照ください。


$ZHorologについて【IRIS】


$ZHorologについて

この他、秒の小数部を含む時間の日付と時間の取得には $NOW, $ZTimeStamp が使用できます。

1 0
0 136

これは InterSystems FAQ サイトの記事です。


^%GSIZE ユーティリティでは、グローバルのサイズを算出することができます。

このユーティリティで出力される各項目の意味について説明します。

例えば、USERネームスペースのグローバルについて do ^%GSIZE を実行し、以下のように出力結果を得られたとします。

2 0
0 379

これは、InterSystems FAQサイトの記事です。

$ZTIMESTAMPはUTC形式で日付時刻を返すため、ローカルのタイムゾーンに変更するためには以下システムオブジェクトを利用します。

$SYSTEM.Util.UTCtoLocalWithZTIMEZONE($ZTIMESTAMP)


上記出力結果は ddddd,sssss.fff の形式で出力されます。

ddddd:$HOROLOGの日付と同じ形式
 sssss:現在の日付の午前 0 時からの経過秒数を示す整数
 fff :秒の小数部を示す可変桁数

※ $HOROLOGに似ていますが、$HOROLOGには秒の小数部分は含まれません。

1 0
0 213

あるメソッドやルーチンを実行してエラーとなった場合、エラー発生個所はエラーメッセージより取得することができますが、処理の呼び出し履歴(スタックトレース)はエラーメッセージのみではわかりません。
また、.Net や Python など IRIS 外からの呼び出しの場合に、エラー情報の詳細がクライアントに返らない場合などもあるかと思います。

2 0
0 84