#Caché

30 Followers · 4.5K Posts

  

InterSystems Caché is a multi-model DBMS and application server. See more details here.

Documentation.

Edit
Article Alexey Maslov · Nov 12, 2016 14m read

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

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); note that we are referring to “cache”, not “Caché”, here. ECP provides a host of possibilities for horizontal scaling of an application, ensuring high performance and fault-tolerance, 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… The text below is about how I managed to cope with this problem.

0
0 0
Edit
Question Ferran Olle · Nov 23, 2016

Hello,

Our Intersystems Cache database is running in a Windows 2008 R2, and is installed and configured as "UNICODE" .

We are using Apache+PHP with  ODBC to get data but we have some problems with character encoding.

We also have two configurations:

  • Ubuntu 16.04 LTS + Apache2 + PHP 5.6 + UnixODBC
    • using isql command everything works fine, data returned is OK   (all special characters  in Spanish displayed ok).
    • using PHP with  PDO function to connect the database and libcacheodbcu35.so driver
      • with  default_charset=""  in  php.ini
      • Special characters in spanish not displaying   (  like   ü , é , ó , à , .
2
0 63
Edit
Question sansa stark · Nov 29, 2016

Hi all,

    i need one help regrading telnet.In cache 5.02 while we take telnet it open some program(By using ^login Global in %Sys nameSpace).But i could not create same process in cache 2016.

example:

telnet 127.0.0.1 it open some routine in "TRAIN" namespace.

Thanks,

Sansa.

2
0 24
Edit
Article Chris Stewart · May 6, 2017 2m read

In our last lesson, we added a form to Edit our existing Widgets, and save them back to the server.  However, our Form was not well strcutured and our Save button had no intelligence, and was not fully visible.  So today, we will apply some Material components and Angular style to make the form more useful

Let's open EditWidget.csp, and make some changes.  First, we want to change the component from an md-card to an md-dialog.

0
0 0
Edit
Article Gevorg Arutiunian · Jul 13, 2018 1m read

This code snippet uses GZIP to compress and decompress a file in the file system. Change default file paths to customize code to compress/decompress your files:

Class objectscript.GZIP Extends %RegisteredObject
{
	classmethod test() {
		//Export Global(s) uncompressed
		set filename="C:\Temp\myglobal.xml"
		do $System.OBJ.Export("^oddEXTR.gbl",filename)
		//Open exported Globals
		set uncompressed = ##class(%FileBinaryStream).%New()
		set uncompressed.Filename=filename
		Set compressed = "C:\temp\mycomglobal.xml"
		//Open File Device over Gzip and Copy Uncompressed information to it
		Open compressed:("WUNK":::/GZIP=1:/NOXY=1:/OBUFSIZE=32768):0
		Use compressed
		do uncompressed.OutputToDevice()
		close compressed
		//Create New File  
		set out = ##class(%FileBinaryStream).%New()
		set out.Filename= "C:\Temp\decomp.xml"
		//Open compressed File and save information uncompressed over gzip
		Set file=##class(%File).%New(compressed)
		Do file.Open("RUK:::/GZIP=1:/NOXY=1")
		while ' file.AtEnd
		{
		    set line = file.ReadLine()
		    do out.Write(line)
		}
		do out.%Save()
	}
}

GitHub: https://github.com/intersystems-community/code-snippets/blob/master/src/cls/objectscript/GZIP.cls

0
0 0
Edit
Question sansa stark · Dec 8, 2016

Hi All, I am taking a namespace and routines from one table for particular user.if the user have name space and routine means it execute well but after executed the routine it is automatically quit and close the session.I need to keep the same namespace after executing the routine. Please help to proceed further anyone.

2
0 16