Find

Article
· Feb 13, 2022 2m read

IRISが使用するワーキングセット(メモリ)について

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

各プロセスが消費しているメモリの内容は、Windowsリソースモニタの項目のワーキングセット、共有可能、プライベートで確認できます。

これらの内容は以下になります。

ワーキングセット プロセスが使用する物理メモリです。
         ワーキングセット(プライベート)とワーキングセット(共有可能)との合計です。 

共有可能               プロセスが使用する物理メモリ内で他のプロセスと共有可能なメモリです。

プライベート       プロセスが使用する物理メモリ内で他のプロセスと共有不可能なメモリです。


例えば、以下のようにメモリを使用しているプロセスがある場合、ほとんどは共有メモリになっているといえます。

ワーキングセット 5,341,472 = 共有可能 5,328,664 + プライベート12,808 (kb)


プロセスがアクセスする共有メモリは、データベースキャッシュおよびルーチンキャッシュで使用されているメモリ領域になります。

プロセスが大量にグローバルへのアクセスを行うと、データベースキャッシュへのアクセス量も多くなり、メモリ使用量の共有可能の数値が大きくなります。
(最大でデータベースキャッシュサイズまで大きくなります)

各プロセスのメモリ使用量のワーキングセットが多くても共有可能の数値が多い場合は特に問題はありません。

共有メモリ領域にマップしてる為にワーキングセットの数値が大きくなっているだけで、別途メモリを使用している状況ではありません。


WRTDMN や GARCOL などのシステムコアプロセスのワーキングセット(メモリ)が肥大化している場合、いずれのプロセスもデータベースキャッシュを大量にアクセスするため、データベースキャッシュのサイズが程度までの数値であれば妥当な値となります。


コアプロセスについては、以下のドキュメントをご覧ください。
 コアプロセスについて


あわせて、以下の関連記事も是非ご覧ください。
 InterSystems製品のプロセスが使用するメモリ量について
 管理ポータルのメモリ関連設定項目について
 System routine buffer (# KB) shortage is detected.... のメッセージの意味と対処方法
 データベースキャッシュおよびルーチンキャッシュの最適値の設定方法
 Windows上での共有メモリの割り当てについて
 

Discussion (0)0
Log in or sign up to continue
Question
· Jan 31, 2022

Getting SQL Table Name For a Given Class

Hi folks!

Consider I have a class "X.Y.Z"

What is the SQL table name for it? How can I obtain it via ObjectScript? 

A quick search doesn't show any methods and properties. Documentation is a bit "wrong" here saying that the SQL table name is the same. It will be at least 'x_y.z'.

Any help is very appreciated!)

15 Comments
Discussion (15)2
Log in or sign up to continue
Article
· Jan 26, 2022 2m read

在 InterSystems IRIS 中使用网页版本的命令行工具 - Web Terminal

 

许多使用InterSystems IRIS的用户在调试代码的时候习惯使用命令行的方式,比如运行一个函数查看输出或者查看代码运行过程中保存在global中的数据等等。

对于将 InterSystems IRIS 安装在 Windows 操作系统的用户,只需要点击右下角图标选择Terminal 就可以很方便的使用。

但是对于将其安装到 Linux 或者Docker 容器中的用户,要使用命令行却不那么方便,下面我将会介绍在我们 Openexchange 中的一个应用 -- Web Terminal。

也就是说可以在网页中直接执行Terminal中的命令。

2016-09-18_212035

或者查看SQL执行结果:

2016-09-18_212244

可以在其中输入 /help ,获取更多帮助信息

2016-09-18_212325

安装

1. 点击进入项目下载页面,选择下载最新的版本。

2. 在任意的命名空间下导入下载的xml文件。

 

 

注意在这里选择导入文件的同时也要勾选上 “编译导入的项”

3. 之后会出现下面提示导入成功的提示

 

如果出现类似于下面的错误提示:

请将下载的 WebTerminal-v4.9.3.xml 文件编辑做下面修改

1 . 第1611行:修改为 

set requiredRole = "%DB_IRISSYS"

2. 第1730行:修改为

set dbPrefix = "IRIS"

重新导入就可以了。

使用

安装上面步骤安装完后,只需要在浏览器中输入网址:http://[host]:[port]/terminal/ (注意最后的 / 符号必须有)(比如:http://localhost:52777/terminal/

输入访问的用户名密码后,就可以进入网页版本的terminal了

在Openexchange中详细介绍的地址在这里,更详细的文档可以点击这里

3 Comments
Discussion (3)2
Log in or sign up to continue
Announcement
· Jan 19, 2022

[Video] IKO: The InterSystems Kubernetes Operator (Version 3.0)

Hey Developers,

Watch as the presenter uses IKO to deploy the WebGateway, SAM, and InterSystems API Manager with the latest version of the InterSystems Kubernetes Operator: 

⏯ IKO: The InterSystems Kubernetes Operator (Version 3.0)


🗣 Presenter: @Steve Lubars, Software Developer, InterSystems

Subscribe to the InterSystems Developers YouTube channel and stay tuned!

Discussion (0)0
Log in or sign up to continue
Question
· Jan 4, 2022

How to make HL7 ORM message wait in Iris until an acknowledgement is received from the EMR system?

We will receive an ORM message in Business Service in Iris. From that ORM, an ADT^A31 message will be generated and sent out to the EMR before the ORM message is sent out. The ORM message has to wait until Iris receives an acknowledgement from the EMR indicating the ADT message was received. Then, the ORM message will be sent to the EMR. What do I need to set up to hold the ORM message until the acknowledgement is received? 

Thank you!

Patty Aguirre-Romero

11 Comments
Discussion (11)5
Log in or sign up to continue