全部时间
文章
· 十月 19, 2022 阅读大约需 7 分钟
CORS请求Request携带Cookie失败占用License解决方案

CORS请求Request携带Cookie失败占用License解决方案

起因

  1. 因为是前后端分离的项目,前端使用的vue2,后端iris。需要获取cooikesessionid,每次请求时携带cookie,防止每次请求都占用一个license

  2. 登录认证,保持会话期间全局变量,超时退出。

现象

下图是如果不携带cookie每次请求都会新建一个session并且占用一个license

image

6 0
0 406
InterSystems 开发者社区汇聚了 24,198 位出色的开发者
InterSystems IRIS 程序员可以在这里学习、分享、了解最新动态、成长,以及收获快乐!
文章
· 四月 29, 2021 阅读大约需 3 分钟
WebGateway系列(4): 配置HTTPS访问IRIS的Web服务

经常被问到有关IRIS如何支持SSL,HTTPS的问题,有必要写个东西介绍一下。

HTTPS的原理

简单的说,https实现两个目的:一是访问网站加密,2是确认被访问的网站是真的。

首先,被访问的网站要申请一个证书,这个证书必须是权威机构发放的,比如google, VeriSign等等,所有的浏览器里有预装了这些组织的公钥(Public Key),因此能确认你提供的证书真是这些组织给出的,而这个证书可以证明你的网站的身份。注意证书证明的是提供服务的组织和服务的真实性,和用什么设备没关系,也就是说,IRIS不管证书的事儿。

接下去,被访问的服务器可以生成公钥和私钥,和客户端交换key,生成整个世界只有两者知道的security code,用来两者之间数据的交换。详细的过程和消息交互可以在网上找到很多很好的文章和视频,比如这个: How does HTTPS work? What's a CA? What's a self-signed Certificate?

0 0
0 406

InterSystems流程自动化与工作流引擎

InterSystems工作流程引擎的主要功能 2

使用InterSystems工作流程引擎 3

场景描述 3

环境配置与测试 5

任务管理 15

任务API和自定义任务用户界面 16

展望 17

15

集成平台除了集成业务系统,打通数据与业务流程外,另一个核心的功能就是流程自动化(BPA)。

流程自动化涉及几个重要的特性:

  1. 流程建模
  2. 流程协同
  3. 决策自动化
  4. 低代码工作流程自动化
  5. 任务协同与任务管理

其中第4和5点都是和工作流程相关的。

什么是工作流程(Workflow)?它和业务流程(Business Process)有何区别?为何集成平台要涉及对工作流程的管理?

2 0
2 405
文章
· 一月 8, 2021 阅读大约需 9 分钟
InterSystems IRIS 和 Caché 中的多模型数据并行处理

众所周知,InterSystems IRIS 提供了很多的工具来提升应用系统可伸缩性。尤其在提升数据并行处理能力方面,InterSystems 做了很多努力,例如在 SQL 查询中使用并行处理,以及在 IRIS中引入最具吸引力的特征:分片(sharding)。然而,许多成熟的开发成果最初是在 Caché中完成的,而且已经迁移到 IRIS 中。这些成熟的开发成果大都使用 DBMS(数据库管理系统)的多模型功能,实现在单独的数据库中共存不同的数据模型。例如, HIS qMS 数据库同时包含语义关系(电子病历)、传统关系(与 PACS 的交互)和层次数据模型(实验室数据以及与其他系统的集成)。这些数据模型大多是通过 SP.ARM 的 qWORD 工具(一种直接访问 Global的小型数据库管理系统)实现的。遗憾的是,由于查询未使用 IRIS SQL,无法利用并行查询处理的新功能进行扩展。

而且,随着数据库规模的不断增长,大型关系型数据库所固有的大多数问题开始出现在非关系型数据库中。这就是我们关注可用于扩展的并行数据处理技术的一个主要原因。

在本文中,我将围绕多年来在解决任务时用到的并行数据处理展开多方位讨论,而这些是我在大数据问题探讨中很少提到的。我将重点讨论数据库的技术改造,或者更确切地说,是数据库转换技术。

0 0
0 402
文章
· 九月 21, 2022 阅读大约需 6 分钟
医疗行业数字化转型 —谈谈微服务架构

在数字化转型成为国家战略和国内外科技大厂的成功经验、强大的宣传攻势和推广能力联合左右下,微服务架构(Microservices Architecture,MSA)毫无疑问已经成为当今基础架构的主流话题,短短几年间席卷全行业,仿佛成了每个行业数字化转型的必由之路。

0 0
0 400
文章
· 三月 26, 2021 阅读大约需 4 分钟
使用 IRIS 和 Python 创建聊天机器人

图片

使用 IRIS 和 Python 创建聊天机器人

本文将展示如何把 InterSystems IRIS 数据库与 Python 集成,以服务于自然语言处理 (NLP) 的机器学习模型。

为什么选择 Python?

随着在世界范围内的广泛采用和使用,Python 拥有了出色的社区,以及许多加速器 | 库用于部署任何类型的应用。 如果您感兴趣,请访问 https://www.python.org/about/apps/

Iris Globals

我接触到 ^globals 后很快就熟悉了,它们可以用作快速获取现成数据模型中数据的方法。 因此,首先,我将使用 ^globals 存储训练数据和对话以记录聊天机器人的行为。

0 0
0 399
文章
· 五月 31, 2021 阅读大约需 6 分钟
精华文章---HealthConnect中创建HTTP服务

HealthConnect中创建HTTP服务端

这里我说说怎么在HealthConnect上开发HTTP服务。

作为消息引擎,HealthConnect会需要从一个接口接收HTTP请求发送到另一个接口,中间做消息转换,路由等等,目的的接口可能是HTTP,或者SOAP,REST等等。这里只介绍HTTP服务的内容,也就是最简单的两种实现:

第一种:实现客户定制的HTTP服务业务服务组件(Business Servie)

创建Business Service类,继承EnsLib.HTTP.Service, 如下面的示例:

0 0
1 395
文章
· 八月 18, 2022 阅读大约需 2 分钟
使用csvgen从文件或URL地址中以编程方式导入CSV

Hi 社区的朋友们,大家好!

有时我们需要以编程方式自动将CSV数据从文件或者UR网址L导入到InterSystems IRIS。我们希望创建具有适当数据类型的类并导入数据。

我在Open Exchange上发布了一个模块csvgen,它正是这样做的。

如果你只需要将CSV文件导入IRIS,你可以这么做:

USER>do ##class(community.csvgen).Generate("/usr/data/titanic.csv",,"Data.Titanic")

Class name: Data.Titanic
Header: PassengerId INTEGER,Survived INTEGER,Pclass INTEGER,Name VARCHAR(250),Sex VARCHAR(250),Age INTEGER,SibSp INTEGER,Parch INTEGER,Ticket VARCHAR(250),Fare MONEY,Cabin VARCHAR(250),Embarked VARCHAR(250)
Records imported: 891
USER>

或者你的CSV文件在互联网上, 例如GitHub上面的新冠疫情数据 你可以这样获得数据:

USER>d ##class(community.csvgen).GenerateFromURL("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/05-29-2020.csv",",","Data.Covid19")

Class name: Data.Covid19
Header: FIPS INTEGER,Admin2 VARCHAR(250),Province_State VARCHAR(250),Country_Region VARCHAR(250),Last_Update DATE,Lat MONEY,Long_ DOUBLE,Confirmed INTEGER,Deaths INTEGER,Recovered INTEGER,Active INTEGER,Combined_Key VARCHAR(250),Incidence_Rate DOUBLE,Case-Fatality_Ratio DOUBLE
Records imported: 3522
USER>

0 0
0 392
文章
· 八月 15, 2022 阅读大约需 4 分钟
第二章 使用管理门户(二)

第二章 使用管理门户(二)

管理门户概述

本节介绍管理门户页面的一些常见布局元素。

注意:在管理门户中的任何位置,将光标移到菜单项上都会显示该项目的描述。

管理门户主页

管理门户主页的标题是 Welcome, <user>。在标题旁边,功能区包含以下选项:
- 两个视图按钮,可让指定如何在菜单列中显示链接。
- 搜索栏,位于功能区的右侧。当指定一个词并按 Enter 键时,将显示包含该词的所有页面的列表;然后,可以单击要显示的目标页面,而无需浏览子菜单。

以下部分描述了主页的区域:

管理门户菜单栏

位于主页左边缘的菜单栏是导航门户的主要方法。

0 0
0 392
文章
· 五月 4, 2023 阅读大约需 11 分钟
在 Docker 中配置镜像

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

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

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

镜像

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

架构

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

1 0
0 389

国际互联互通的需求是在不断增长,这跟咱们国内的情况是非常类似的。这些年美国在互联互通领域的政策跟实践还是不少的,比如大家可能听到过包括“有意义的使用(Meaningful Use)”,“21世纪治愈法案(21st Century Cures Act)”,还有更多的政策上的驱动。这里先介绍一下“有意义的使用(Meaningful Use)”。

0 0
0 389

北京协和医院现公开招聘信息类技术岗位。有关事项公告如下:
岗位1:运维工程师
任职要求:
1.年龄30岁以下,本科及以上学历,计算机相关专业;
2.熟悉计算机软硬件技术,熟练排除各种软硬件的故障;有基本的网络知识,了解DNS、DHCP原理,熟练使用Ping、tracert等简单命令;
3.有2年以上桌面运维工作经验者优先。

岗位2:数据库管理员
任职要求:
1. 本科及以上学历,计算机相关专业;
2. 精通InterSystems Caché数据库,精通MySQL,SQL Server,熟悉Oracle,精通SQL脚本编写;有丰富数据库管理、运维调优经验;
3. 5年以上数据库运维管理经验;
4. 有医疗行业经验优先。

0 0
0 388
文章
· 一月 18, 2021 阅读大约需 4 分钟
活用数据库审计日志跟踪数据操作

在最近的项目里,多方同时连接同一个数据库并执行增删改查等各项数据操作。研发人员不时发现一些数据在不合规的情况下被新增甚至删除。因此,在实际工作中会有监控数据操作以便识别和处理异常操作的需求。本文将以监控和识别删除操作为例,介绍如何通过IRIS的审计功能实现对数据操作的监控和查询。

0 0
0 387
文章
· 十二月 19, 2021 阅读大约需 3 分钟
我们和Oracle、AWS、SAP数据库做了开源速度对比测试

如果您经常阅读我们的博客,您可能记得去年夏天我们进行了 InterSystems 速度测试,该测试由 ESG 验证,旨在测试数据库可以同时摄取和查询的数据量,以及这表现出的具体的影响。从那以后,我们 GitHub 页面的许多访问者一直在根据自己的想法重复验证这个测试

0 3
0 325
文章
· 十月 18, 2022 阅读大约需 3 分钟
四则优秀案例分享:医疗数据大规模集成

在美国各地,当需要实现大规模的应用集成时,医疗行业的领导者会使用InterSystems HealthShare Health Connect®。无论是为了连接电子病历,还是为了提升床边护理决策能力,无论是为了创新远程医疗和远程护理,还是为了业务增长,亦或是为未来做准备,InterSystems和Health Connect随时准备好帮助您和您的组织实现目标。我们在此提供几个InterSystems医疗行业的集成实例以作示范。

0 0
0 384
文章
· 九月 17, 2022 阅读大约需 7 分钟
IRIS的镜像配置(1)

因为篇幅太长, 我把它分为3篇贴在社区

配置前的准备

配置Mirror前要准备三件事儿:

  1. 规划网络连接。
  2. 在所有的服务器中启动ISCAgent服务。
  3. 准备服务器的SSL/TLS证书。可选, 但非常推荐。

我假设您在动手前一定已经对Mirror的原理和架构已经不陌生了,对镜像成员,DR(灾备)成员, Arbiter, ISCAgent等术语已经自动切换的概念有大概的认识。如果不是这样,请先阅读在线文档,或者这篇文章。

规划网络连接

Mirror应该配置两个网段:一个用于IRIS和外部的通信;另一个用于两个Mirror成员间的内部通信,也就是数据的同步。 尽管不是必须的,但Mirror作为一个高可用方案,为了保证服务器之间的内部通信不受和外部连接的干扰,把内部通信放在单独的网段是通常的做法,尤其是在生产环境。

0 0
0 384
文章
· 九月 17, 2022 阅读大约需 8 分钟
IRIS的镜像配置(2)

Mirror的配置

这里详细介绍了主成员(Primary)和备用成员(Backup)的设置过程。 虽然也包括了异步成员配置的章节,其实我没有真的操作,我认为应该没有特别需要注意的。

配置Mirror应该有这么几步:

1. 启动Mirror服务

进入系统管理界面,选择系统管理>配置>镜像设置>启动镜像服务,勾选服务已启动, 保存退出。这是可以看到菜单栏的创建镜像条目已经从灰色变成正常的白色,表示您已经可以创建镜像。

仅仅是打开服务,并没有修改Journal文件

2. 创建镜像,添加主成员

在管理界面进入“系统>配置>镜像设置>创建镜像”,从这里开始镜像的创建工作。创建镜像的同时,这一步还包括把本机做为第一个镜像成员加入到镜像。第一个镜像成员被加入后会成为主镜像成员, 菜单里的英文是“Primary Failover Member"。

0 0
0 382
文章
· 一月 15, 2021 阅读大约需 5 分钟
IAM实践指南——OAuth 2.0下的API保卫战(第三部分)

在这个由三个部分组成的系列文章中,介绍了如何在OAuth 2.0标准下使用IAM简单地为IRIS中的未经验证的服务添加安全性。

第一部分介绍了一些OAuth 2.0背景知识,以及IRIS和IAM的一些初始定义和配置,以帮助读者理解确保服务安全的整个过程。

0 0
0 381
文章
· 十月 23, 2023 阅读大约需 12 分钟
FHIR Profile - FHIR扩展与再约束

FHIR标准提供灵活的扩展与再约束机制 - Profile。到底Profile机制如何工作?什么样的扩展需要用到Profile?怎么建立Profile?


FHIR核心资源模型 - FHIR Core

FHIR发布的资源模型是按80/20原则设计的 - 最常用那80%的用例中需要的数据会被涵盖在FHIR核心资源模型中,这些数据需求可能只是所有用例需要数据的20%;通过对核心资源的扩展和再约束,可以让它们适用于不常见的20%用例和未被涵盖的80%的数据需求。

FHIR发布的资源模型是FHIR核心资源模型(FHIR Core),它们有如下特点:

1. 对象模型 - 有继承关系。所有资源都继承自DomainResource

2. 为了保证最大的适用度,资源中的绝大多数属性的最小基数都是0,意味着它们都可以为空

3. 资源的属性可以通过code(值集)、coding、CodeableConcept(术语)进行取值范围约束

4. 为了防止医疗错误,所有的属性都没有且不能有默认值

当需要对核心资源模型进行扩展和再约束时,FHIR提供了profile机制对所做的扩展和再约束进行画像(描述),这就是profile的意思。

1 0
0 380
文章
· 一月 20, 2021 阅读大约需 6 分钟
InterSystems IRIS医疗版2020.1 HL7基准测试

简介

最近完成了针对IRIS医疗版2020.1版本的性能及可扩展性基准测试,重点关注HL7v2的互操作性。本文介绍了在各种工作负载下观察到的吞吐量,并提供了IRIS医疗版用作HL7v2消息传输互操作性引擎时的系统常规配置和调整准则。

基准测试模拟了与实际环境接近的工作负载(详细信息请参见“工作负载说明和方法”部分)。本次测试的工作负载包括HL7v2患者管理(ADT)和生命体征结果(ORU)数据,并包含数据内容转换和路由。

IRIS医疗版2020.1版本可以表明,采用第二代Intel®Xeon®可扩展处理器和Intel®Optane™SSD DC P4800X系列SSD存储的商用服务器,每天的持续消息吞吐量超过23亿条(入站和出站总量),与此前的Ensemble 2017.1 HL7v2吞吐量基准测试相比,扩展性提高了一倍多。

1 2
0 339

研究Healthshare2018在已经安装完成使用的情况下,部署IIS,并代理平台。之前看到可以通过单独的CSP Gateway安装包进行处理这种问题,该文主要是获取不到该安装包的时候可以如何实现IIS的处理。

第一步:首先按照网上教程部署IIS服务。安装完成之后会在C盘创建一个名叫intepub的包。

第二步:在inetpub包下面直接插入CSPGateway 。这个包是在其他先安装IIS下,后安装Healthshare的CSP网关服务的时候在inetpub下面自动插入的包,直接找一个复制过来。

第三步:打开IIS,创建一个叫csp的网站,按照下图配置。

第四步:在点击模块进行CSPms模块的添加。

11 1
0 357