Discussion


Pegasystems Inc.
JP
Last activity: 7 Dec 2016 13:06 EST
Is it true that "whenever Cache Hit is returned, the system does not invoke the database"?
Architecture > PRPC Caches > Quiz
The last quiz of the lesson like below, and the correct answer is the first one.
When Cache Miss is returned, the system always queries from the database
So my question is why the second option is incorrect?
Whenever Cache Hit is returned, the system does not invoke the database
I couldn't figure it out from the coures contents.
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!


Pegasystems Inc.
US
The key is the word "Whenever", if there is a change in the rule the system marks a dirty flag and even if the rule is in the cache, this dirty flag lets the system query the database. This is covered in the system pulse part of the lesson. Hope this helps.


Pegasystems Inc.
JP
Hi Rama,
Thanks for your reply. I can see below descriptions in the Systeme pulse part of the lesson.
So does system still return "Cache Hit" after the system marks a rule's cache content dirty?
Every 60 seconds, the pulse (which is part of the standard PegaRULES agent) on each node wakes up (independently) and queries the pr_sys_updatescache table. The query retrieves records which are “not from this node” (which this node did not create), and which have a timestamp which falls within the window of time starting with the last pulse (or system startup) and now. In this way, all of the changes originating on other nodes are selected, and the appropriate cache entries on this node are invalidated by marking them as dirty. The next time one of the rules which has been invalidated is called, it is not found in the cache, and the updated version of the rule is read from the database and is eligible again for caching.


Ibm
US
HI,
Does system pulse need to run in single node environment?
Thanks,
Rushikesh


Pegasystems Inc.
US
Hi R.,
No, the Pega Pulse can run in a Multi-Node as well as in a Single Node Environment.
Regards,
Henry
Pega Academy


Ibm
US
Thanks Henry for reply. My question rather is - Is it needed to run system pulse in single node environment? Because the rule changes are applicable to only single node. If any rule is changed the node should have the latest updates available.
Thanks,
Rushikesh


Ibm
US
Thanks Henry for reply. My question rather is - Is it needed to run system pulse in single node environment? Because the rule changes are applicable to only single node. If any rule is changed the node should have the latest updates available.
Thanks,
Rushikesh


Pegasystems Inc.
US
Hi R.,
Rule Instance (Record) changes are persisted in the PegaRules schema of the Pega Database Repository and are picked up by all the nodes in the Cluster of the environment where the Rule Instance was changed a Rule Instance Change is not localized to only one node.
Regards,
Henry
Pega Academy


Capgemini
IN
Suppose there are 2 node for an env, say X and Y. So a rule has been modified in X and system pulse wakes up and runs on Y, so the rule in Y is marked as dirty? and when this rule is invoked in node Y , then its latest version is pulled from the DB?


Pegasystems Inc.
US
Hi A.,
That is a generally good explanation of how it works!
Regards,
Henry
Pega Academy


Ibm
US
Ok. So the system pulse is actually required only in cluster/multi node environment
In Single node environment the system pulse is not required. Is this the fair statement?
Regards,
Rushikesh


Pegasystems Inc.
GB
System Pulse does more than just cache invalidation when rules change. So it is required in ALL systems irrespective of the number of nodes.


Ibm
US
Thanks Mike for your reply. Can you please list all the functionalities performed by system pulse apart from cache invalidations?
Best,
Rushikesh


Pegasystems Inc.
US
Did we find exact solution yet ?, seems like still there is some ambiguity