ECP

Syndicate content 7 

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?

Last reply 2 September 2020
0   0 4
88

views

0

rating

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?

Last reply 18 August 2020
0   0 3
136

views

0

rating

Those of you that worked already with ECP might know that it operates not only across
operating systems, processor technologies (big-little-endian), but also -with limits- across versions in C/E.
This cross-version feature also includes IRIS (verified for 2020.1)  and C/E (2018.3)

Last reply 16 August 2020
+ 4   1 2
92

views

+ 4

rating

I have a Read-Only Reporting Async with a Remote Database defined to a non-mirrored database on the primary failover member. I would like to update the non-mirrored database on the primary from the async; so far all my attempts fail with *protect* errors.

I found this page 

https://community.intersystems.com/post/execute-method-failover-member-m...

Last reply 12 August 2020
0   0 2
47

views

0

rating

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.

Last reply 11 March 2020
+ 3   0 4
299

views

+ 3

rating

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 1
0

replies

222

views

+ 1

rating

This is a coding example working on Caché 2018.1.3 and IRIS 2020.2 
It will not be kept in sync with new versions 
It is also NOT serviced by InterSystems Support !

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

+ 9   1 0
0

replies

339

views

+ 9

rating

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?

Last reply 13 February 2019
0   0 3
296

views

0

rating

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.

Last reply 31 January 2018
+ 13   1 8
1,119

views

+ 13

rating

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.

Last reply 18 December 2017
0   0 1
433

views

0

rating

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:

Last reply 14 August 2017
0   0 2
811

views

0

rating

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   0 1
494

views

0

rating

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.

Last reply 8 December 2016
+ 9   1 5
1,655

views

+ 9

rating

The technology of load balancing between several servers with relatively low capacity has been a standard feature of Caché for quite a while. It is based on the distributed cache technology called ECP (Enterprise Cache Protocol). ECP provides a host of possibilities for horizontal scaling of an application, and yet keeping the project budget fairly low. Another apparent advantage of ECP network is the possibility to conceal its architecture in the depths of Caché configuration so that applications developed for the traditional (vertical) architecture can be fairly easily migrated to a horizontal ECP environment. The ease of this process is so mesmerizing, that you start wishing it was always this way. For instance, everybody is used to having a possibility to control Caché processes: the $Job system variable and associated classes/functions work magic in skilful hands. Stop, but now processes can end up being on different Caché servers…

This article is about how to gain as much transparency in controlling processes in ECP environment as in traditional (non ECP) one.

Last reply 18 November 2016
+ 4   0 5
1,052

views

+ 4

rating

I saw someone recently refer to ECP as magic. It certainly seems so, and there is a lot of very clever engineering to make it work. But the following sequence of diagrams is a simple view of how data is retrieved and used across a distributed architecture.

For more more on ECP including capacity planning follow this link: Data Platforms and Performance - Part 7 ECP for performance, scalability and availability

+ 9   0 4
0

replies

690

views

+ 9

rating

Let assume you have a infinitely scaling algorithm implemented in your application, using replication, ECP, or any other means of horizontal scaling, and let assume you know how to run your system under any volume of requests, the trick is to deploy required number of computing nodes in the cluster. If we are talking about cluster of 2-4 nodes your administrator (or as they call it today "devops engineer") will install anything manually. Probably he will easily handle 5 nodes configuration in the cluster.

Last reply 17 June 2016
+ 2   0 4
460

views

+ 2

rating