文章 Weiwei Gu · 九月 14, 2023 2m read

InterSystems 还发布了容器化部署的IRIS。这篇文章旨在演示 InterSystems IRIS 和依赖 IRIS 后端的应用程序如何打包到镜像中并在容器中的其他计算机中运行,以及这样做有多么简单。

容器运行包含所有必需的可执行文件、二进制代码、库和配置文件的镜像。镜像可以从一台机器移动到另一台机器,像 Docker Hub 这样的镜像存储库可以简化这个过程。

我在本演示中使用了 Open Exchange 的应用程序。

演示视频:https://www.loom.com/share/93f9a760b5f54c0a8811b7a212387b9d

IRIS 数据平台社区版的镜像(image)可以在 InterSystems 容器注册表中找到:

https: //containers.intersystems.com/contents

为了在主机中使用 IRIS 的容器化实例,应在运行时拉取它。

为此,Dockerfile 需要具有以下命令,如下所示:

Dockerfile:

Dockerfile

0
0 154
文章 Weiwei Gu · 九月 14, 2023 1m read

昨天,我在一个客户网站提供从 Studio 迁移到 VS Code 的定制咨询时,就遇到了这种情况。

该站点的服务器已配置为使用delegated authentication,但尚未针对 /api/atelier Web 应用程序设置“delegated”复选框,而 InterSystems ObjectScript 扩展包的成员正是使用该复选框进行连接的。

一旦我们的应用程序设置了其复选框并单击了服务器管理器刷新按钮,就可以在服务器上枚举命名空间。

0
0 126
文章 Weiwei Gu · 九月 13, 2023 1m read

我们最近发布了 IRIS 2023.2版本。 此版本从此类“HS.HC.Util.Installer”中删除了“InstallFoundation”。 这是一个没有记录在官方文档中的私有的方法,但它被社区广泛用来安装 FHIR 服务器。 所以如果你遇到这个错误:<METHOD DOES NOT EXIST> *InstallFoundation,HS.HC.Util.Installer 在构建我们自己的 FHIR 服务器的演示时,您可以通过替换此行来修复它: 把do ##class(HS.HC.Util.Installer).InstallFoundation (namespace) 替换成 Do ##class(HS.Util.Installer.Foundation).Install(namespace) `

0
0 74
文章 Weiwei Gu · 八月 14, 2023 2m read

在提交的 WRC case中(Intersystems 全球技术支持响应中心),我们经常看到客户提出有关新 Web 网关设置的问题,其中管理门户加载一半,但不显示图像。本文将解释为什么会出现此错误,以及如何修复它。本说明主要针对服务 InterSystems IRIS 实例的 Web 网关,但相同的说明也应适用于服务 Caché 实例的 CSP 网关。

问题:

您刚刚在独立的 Web 服务器上安装了 Web Gateway。当你去加载管理门户时,你发现它无法显示或加载图像,如下所示:

为什么会发生这种情况:

问题是,为了完整加载管理门户,InterSystems IRIS 必须加载许多 .js、.css 和 .png 文件(静态文件)。如果您看到像上面这样的管理门户页面,请随时打开浏览器的开发人员工具小程序,导航到“网络”选项卡,并确认未提供各种 .js、.css 和 .png 组件:

最初安装 Web Gateway 时,我们仅为以下扩展设置映射:

.csp .cls .zen .cxw

这些是客户在自己的自定义应用程序中最常使用的文件扩展名类型,以及用于为 Web Gateway 管理门户提供服务的 .cxw 扩展名。如果您想要加载其他管理门户组件,则必须注册其他文件类型以由 Web 网关提供服务。

如何解决该问题:

0
0 121
文章 Weiwei Gu · 八月 7, 2023 1m read

InterSystems 常见问题解答标题

您可以为以下 Web Gateway 错误消息/系统响应设置单独的错误页面:

  • 服务器错误
  • 服务器繁忙
  • 服务器无法使用
  • 服务器超时
  • 连接关闭

在 Web Gateway 管理界面上进行设置([Management Portal] > [System Administration] > [Configuration] > [Web Gateway Management] > [Configuration] > [Default Parameters])。

在“默认参数”(Default Parameters  )菜单的“错误页面”部分中,设置要显示的 html 页面的文件名或发生错误时要重定向到的 URL。

 

0
0 128
文章 Weiwei Gu · 八月 4, 2023 3m read

InterSystems IRIS 目前将类限制为 999 个属性。

但是,如果您需要为每个对象存储更多数据该怎么办?

本文将回答这个问题(附加了社区 Python 网关的客串以及如何将广泛的数据集传输到 Python 中)。

答案其实很简单 - InterSystems IRIS 目前将类限制为 999 个属性,但不限制 999 个基元(primitives)。 InterSystems IRIS 中的属性可以是具有 999 个属性的对象等等 - 该限制很容易被忽略。

0
0 141
文章 Weiwei Gu · 六月 28, 2023 5m read

1. 区块链

当我写这篇文章时,比特币的价格还不到其成功顶峰时期的五分之一。因此,当我开始向某人讲述我的区块链经历时,我听到的第一句话是毫不掩饰的怀疑:“现在谁需要这个区块链东西?”

没错,区块链炒作已经减弱。然而,它所基于的技术将继续存在并将继续在特定领域使用。互联网通常提供大量描述这些技术的一般用法的材料

0
0 125
文章 Weiwei Gu · 五月 4, 2023 11m read

我们客户的一个共同需求是配置 HealthShare HealthConnect 和 IRIS的高可用性模式。

市场上的其他集成引擎通常被宣传为具有“高可用性”配置,但事实并非如此。通常,这些解决方案与外部数据库一起使用,因此,如果这些数据库未配置为高可用性,当发生数据库崩溃或与它的连接丢失时,整个集成工具将变得不可用。

对于 InterSystems 解决方案,这个问题不存在,因为数据库是工具本身的一部分和核心。 InterSystems 如何解决高可用性问题?深奥的配置会把我们拖入异化和疯狂的漩涡?不!在 InterSystems,我们倾听并处理了您的投诉(正如我们一直努力做的那样 ;)),并且我们已将镜像功能提供给所有用户和开发人员。

镜像

镜像如何工作?这个概念本身非常简单。如您所知,IRIS 和 HealthShare 都使用一个日志系统,该系统记录每个实例的数据库上的所有更新操作。这个日志系统是后来帮助我们在崩溃后恢复实例而不会丢失数据的系统。好吧,这些日志文件在镜像中配置的实例之间发送,允许并保持镜像中配置的实例永久更新。

架构

让我们简要解释一下在 Mirror 中配置的系统架构是什么样的:

0
0 369
文章 Weiwei Gu · 十二月 1, 2022 3m read

InterSystems 是一家已经深耕数据库平台领域达44年的公司,成立于1978年,现在已经在全球的80多个国家开展相关业务,每天有超过10亿患者的电子病历数据都跑在以我们的数据库平台构建的应用系统之上。

我们的客户遍布国内外,国内的大几百家三甲医院客户,中国复旦排行榜上超过1/3的顶级医院都在使用我们产品(包括北京协和医院,华西医院,湘雅等等),我们的技术合作伙伴,如东华医为,嘉和,和仁等也都是国内医疗信息领域的著名厂商。

   而在国外,我们也有非常多的顶级客户,仅仅以美国举例,美国最顶级的排名前20的所有医院,无一例外全部都是使用的interSystems公司的数据库平台产品。

 美国排名前20的所有顶级医院

2020-2021《美国新闻与世界报道》(U.S. News & World Report)最顶级医院名单(前20家医疗机构)均应用InterSystems公司的数据库平台:

0
0 440
文章 Weiwei Gu · 九月 28, 2022 3m read

Hi Developers,

嗨,各位开发者们:

各位都知道,Python是一个庞大而强大的生态系统,包含了成千上万的库和包,特别是在数据科学方面。

因此,我想首次尝试使用IRIS最近的一项功能--嵌入式Python,简单地导入一个名为datetime的Python库,生成带有时间戳成分的数据,并在InterSystems IRIS for Health Data Platform中持久化。同样的方法在IRIS数据平台上也可以使用。

1
0 149
文章 Weiwei Gu · 六月 27, 2022 6m read

Globals,这些存储数据的魔剑,已经存在了一段时间,但是没有多少人能够有效地使用它们,也没有多少人知道这个超级武器。

如果你把Globals的东西用在它们真正能发挥作用的地方,其结果可能是惊人的,要么是性能的提高,要么是整体解决方案的大幅简化 (1, 2).

Globals提供了一种特殊的存储和处理数据的方式,它与SQL表完全不同。它们在1966年首次出现在 M(UMPS)编程语言中, 该语言最初用于医学数据库。现在它仍然以同样的方式被使用,但也被其他一些以可靠性和高性能为首要任务的行业所采用:金融、交易等。

后来M(UMPS)演变为 Caché ObjectScript (COS). COS是由InterSystems公司开发的,作为M的一个超集. 其原始语言仍然被开发者社区所接受,并在一些实现中保持活力。在网络上有几个活跃的网址,比如:MUMPS Google group, Mumps User's group), effective ISO Standard等等

现代基于Globals的数据库支持交易、日志、复制、分区等。这意味着它们可以被用来构建现代的、可靠的、快速的分布式系统。

1
0 281
文章 Weiwei Gu · 三月 14, 2022 3m read

大家好!

InterSystems IRIS有一个叫做互操作性Interoperability的菜单。

它提供了轻松创建系统集成的机制(适配器、记录图、BPM、数据转换等),因此不同的系统可以轻松地连接起来。

在数据中继过程中可以包括各种操作,比如:为了连接那些通常不连接的系统,可以根据目的系统的规格要求来接收(或发送)数据。另外,在发送数据之前,可以从另一个系统获取和添加信息。以及,信息可以从数据库(IRIS或其他)获取和更新。

为此,我们会撰写一系列的文章,将讨论以下主题,同时看一下示例代码,以帮助你了解它是如何工作的,以及在用互操作性整合系统时需要什么样的开发。

* How it works 它是如何工作的
* What a Production is 什么是Production ?
* Message 消息
* Component Creation 组件的创建

* 1)Business Operations  业务操作

*2)Business Processes 业务流程
*3) Business Services 业务服务


  首先,介绍一下我们在这个系列中要使用的案例。

1
0 289
文章 Weiwei Gu · 二月 24, 2022 7m read

@Ming Zhou 在 https://community.intersystems.com/post/how-get-all-properties-defined-c 上问了一个很好的问题......而这个答案正好总结了为什么ObjectScript 是我最喜欢的语言。

当我第一次向别人介绍ObjectScript或IRIS时,我总是解释说,你可以写一个类,编译它,得到一个表,并从对象或关系的角度来处理你的数据--这是一种最自然的方式。

但无论哪种方式,它都只是一个薄薄的包装,包裹着被称为Globals的超级快速的内部数据结构,当你真的需要更快的速度时,你可以使用这些结构。

当我和比较爱较真的技术人员沟通时,我会告诉他们:ObjectScript允许各种炫酷的元编程,因为你可以用完全相同的方式与你刚刚写的类进行交互--从对象或关系的角度。或者在你需要额外的速度时直接使用超快的底层数据结构。

你可以在对这个问题的回答中看到答案: "我怎样才能得到一个类中的所有属性,包括继承的属性?"

这里有三种不同的方式来获得相同的答案。

1
0 262
文章 Weiwei Gu · 十一月 29, 2021 3m read

不是所有的多模型数据库都是相同的

作者:David Menninger

今天,许多现代应用程序需要的数据库管理能力往往不能通过一种方式就能实现。例如,当我建立一个支持旅游推荐和预订业务的应用程序时,我可能需要使用一些不同类型的数据库,包括用于用户会话的键值存储,用于产品目录的文档数据库,用于推荐的图形数据库,以及用于财务数据的关系数据库。

0
0 124