If several application servers are connected using ECP, and one of them create many locks, so many that lock table became full :

Should we expect only that application server to be impacted ? (usually, when lock table is full the system became instable). Or, are other application servers going to be impacted the same way ? (because that lock table is synchronized and maintained in sync across all servers)

0 3
0 60
Question
· Oct 15, 2023
embedded Python over ECP

With ECP we have the option to have a collection of Frontend instances
All Frontend servers typically have a common Master in the background
Concentrating data on the Master server is the primary goal.

As a side effect, this applies also to Classes, Routines, .. anything stored in Globals.
This is probably not the most efficient setup. But rather common anyhow.

Is embedded Python code also stored in Globals?

What is the recommended solution for a similar installation?

1 2
0 158

Hello,

I need to ensure that the task created/scheduled, by system user, is created in the routine database and not remotely in the ECP to which it is connected. How can I guarantee the creation/scheduling of this task?

Here is a suggestion for creating the routine in both environments:

https://openexchange.intersystems.com/package/Background-Jobs-ECP

Is there another option?

0 2
0 190

Hey Community,

We're excited to announce that Community webinars are back!

Let us invite you all to @Ron Sweeney's webinar on Scaling InterSystems FHIR Server on Amazon Web Services with ECP.

Join this webinar to make a technical deep dive, see a demonstration, and benchmark horizontal scaling InterSystems FHIR Server on Amazon Web Services with Enterprise Cache Protocol (ECP).

Date & Time: Thursday, August 18, 8 AM ET | 2:00 PM CEST
👨‍🏫 Speaker: @Ron Sweeney, Full Stack Architect at Integration Required

https://www.youtube.com/embed/DBGvt0jd4yI
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

3 8
0 724

For those that, at some point, need to test what means that of ECP for horizontal escalability (computing power and/or users and processes concurrency), but they're lazy o have no much time to build the environment, configure the server nodes, etc..., I've just published in Open Exchange the app/sample OPNEx-ECP Deployment .

0 0
0 265
Article
· Mar 27, 2021 3m read
IRIS easy ECP workbench

Testing ECP-based applications often take quite some effort for setup and preparation.
I have created a Docker-based workbench that allows you to have it quick at hands.
And if you crash it? You just give your containers a fresh start.
The whole setup runs code-based during the start-up of your instance.
In that sense, it is also a portable coding example using ZPM and the objectscript-docker-template

see Video

4 3
0 527

Hi Community,

Please welcome the new video recorded by @Robert Cemper on InterSystems Developers YouTube:

IRIS easy ECP workbench

https://www.youtube.com/embed/1TsQCUNjLu4
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

4 0
0 245
Article
· Mar 5, 2021 3m read
Using ECP across IRIS and Caché

Migration from Caché to IRIS can be quite a challenge if your code is grown over many years
and probably not so clean structured as you may like it. So you face the need to check your
migrated code against some reference data. A few samples might not be a problem,
but some hundred GB of data for testing might be.

A possible step could be to have your fresh code in IRIS but leave your huge datastore on Caché and connect both environments over ECP. I have created a demo project that gives you the opportunity to try this based on 2 Docker images with IRIS and with Caché connected over ECP.

12 2
0 731

I was able to define ECP connection in Installer class that I run when I build docker image for my Docker IRIS application. Now I start to use Amazon ECS and Autoscaling. When a new instance is created and it runs the IRIS container, I want it to "register" as an Application server on the remote database server. What code can I execute to add an ip address as an Application Server?

1 2
0 426

Hello,

I work on deploying IRIS inside Docker container. I really like %Installer class can automate many steps. I want to establish an ECP connection to a mirror database and then define a remote database on the application server. I have already seen we can create local database and namespace in %Installer. What code is needed to establish ECP connection?

0 6
0 601
Question
· Jan 12, 2020
Timeout for $zf

In one of the projects, when we have ECP with 10 ECP application servers, from time to time we faced the issue when our journals fail to purge, due to open transactions. While we have about 100-150 GB journal files per day, it quite quickly became a big issue, and with mirroring a very big issue. Mostly we just rebooted our ECP Data server, so it searches rollbacks any transactions, but such process is too long, may steal a few hours. I did not find any way, how to get the list of the open transactions from one place from ECP Data Server. We just migrated our Data server to 2018.1.

3 4
0 913
Question
· Feb 20, 2020
ECP status via $system.ECP

Hi,

I'm trying to get the ECP status of 2 servers using $system.ECP.GetProperty("ServerStats") and $system.ECP.GetProperty("ClientStats"), but I'm not able to find the documentation of the values returned:

For example, on the server side I execute this:

0 3
0 326

Some readers of my previous article, Caché eXTreme for .NET - direct access to globals from C#, wondered if you could access information not just from the same instance in which you’re working, but also from another instance on the same computer, or from an instance located on another computer in the same local network. Some theorized, correctly, that this would be possible using the Enterprise Cache Protocol (ECP). In this article I’m going to show how it can be done.

1 0
0 757
Article
· May 30, 2019 2m read
BackgroundJobs over ECP

Running a Background Job using the JOB command is a well-known feature.
Using ECP to distribute databases to several servers is also well-known.
But using the combination of both to run a process on a different server
seems to be a rare case.

Sure there are enough other ways to start a remote job, but the special
combination with ECP where the application server starts a process on a
data server without additional networking is worth to be remembered.

13 0
1 626

Suppose we need to store millions of values temporarily, that means, we don't care about them if we lose them but our application use them to get realtime information. Should I use Cachetemp or whatever other DB without journaling enabled? If answer is Cachetemp, shouldn't be a problem if we decide to scale using App Server + ECP? I'm not sure what would happen with the app logic in such architecture as I guess I couldn't map and share cachetemp...

Any idea/suggestion?

0 5
0 936

Last week, we announced the InterSystems IRIS Data Platform, our new and comprehensive platform for all your data endeavours, whether transactional, analytics or both. We've included many of the features our customers know and loved from Caché and Ensemble, but in this article we'll shed a little more light on one of the new capabilities of the platform: SQL Sharding, a powerful new feature in our scalability story.

13 11
1 1.6K
Question
· Jan 16, 2018
ECP Connectivity

Hi All,

Background: I have my data in Globals on a Cache instance A and I SQL projected(Added SQL Storage) all my globals as Classes to do SQL Operation.

I am about to start writing my application code in Ensemble(Planning to use Business Service, process and Operation) , Now I wanted to do ECP connection between Ensemble instance and Cache instance to get data from Cache.

Questions

How to do ECP connection between two instances?

Does SQL projection of classes is really required or I can use the globals from Cache server.

0 1
0 824

Hi all,

I have a database with 140 million records containing financial transactions. When I do a query to calculate the sum of those records spanning a number of months it takes around 4 seconds on my database server which seems reasonable. However if I run the same query on an application server it takes around 40 seconds to do the same query.

In just this instance I would like to run that piece of code on the database server instead of the application server. It's a query that is only run a few times a day so I would prefer to have a fast result and don't mind putting a bit more stress on my database server for that.

0 4
0 762

Hello,

I have a DB server (ser-app-db) where cache is installed as server.

I have a Web server (ser-app-w) where cache is installed as web server and configured as CSP gateway.

I followed the configuration guide (https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...) and ser-app-w perfectly display the CSP and CLS pages.

But that's not working for my REST service, for exemple with the REST sample:

0 9
0 1.3K
Question
· Jul 25, 2017
[Fixed]Error with ECP

Hello,

I try to create an ECP between to CACHE server.

The ECP is working, the remote DB is created and the namespace is created and linked on the remote DB.

The table appears on the server but when I try to access I get this message:

ERREUR #5540: SQLCODE : Message 400 : Process 4076 failed to compile Cached Query Class %sqlcq.###.cls6 with these errors: ERREUR #5002: Erreur Cache: <COLLATION NOT SUPPORTED>getdependencyclasses+54^%occDepend SQLTEXT: SELECT ...

0 3
0 878

Hi,

I want to attach one local namespace on instance A to the database on instance B.

How could I use ECP to achieve my goal?

Should I config instance B as ECP data server? If so, how could I explicitly specify which database on instance B could be exposed ?

Thanks for your help.

0 4
0 512

One of the great availability and scaling features of Caché is Enterprise Cache Protocol (ECP). With consideration during application development distributed processing using ECP allows a scale out architecture for Caché applications. Application processing can scale to very high rates from a single application server to the processing power of up to 255 application servers with no application changes.

9 6
2 3.2K