Author |
Message
|
mqjeff |
Posted: Fri Apr 15, 2016 10:11 am Post subject: Global Cache |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
This is an undirected random query.
Are you using Global Cache?
Are you using it in a single EG?
Are you using it in a single Broker?
Are you using it across multiple brokers?
Are you using something to preload/reload the cache?
Are you using a standalone EG to hold a copy of the cache, to make sure that application failures don't wipe out cache data?
Etc. Etc. Etc.
Are you using it, and how? _________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
Gralgrathor |
Posted: Sat Apr 16, 2016 1:49 pm Post subject: |
|
|
Master
Joined: 23 Jul 2009 Posts: 297
|
No, but I'm considering it. My current assignment requires an HA setup using two active nodes processing synchronous soap requests, and I am thinking of using the global cache to store correlation data. One objection is the integrity of correlation data in case of failover. Using a separate EG to handle the cache would prevent dataloss in case of failure in the EG processing the request, but not in case of host failure. Barring the use of the eXtreme Scale product, are there ways to prevent such loss? _________________ A measure of wheat for a penny, and three measures of barley for a penny; and see thou hurt not the oil and the wine. |
|
Back to top |
|
 |
smdavies99 |
Posted: Sat Apr 16, 2016 9:37 pm Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
I did a POC for it and we didn't take it up.
The ability to easily get data from the cache is IMHO very poor (in the broker version) when compared to memory resident DB's.
Just too much faffing about especially in a MSCS cluster to give us any advantage.
My personal opinion is that it is a nice idea but I'd rather have a proper Memory resident DB to share the data. Make it SQL/ODBC/JDBC compliant and moving to it would just be a configuration change. No coding needed. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Apr 18, 2016 4:15 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Gralgrathor wrote: |
Barring the use of the eXtreme Scale product, are there ways to prevent such loss? |
Maybe I'm forgetting, but since GlobalCache can do broker->broker, can't you just set up another broker? _________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
timber |
Posted: Mon Apr 18, 2016 5:50 am Post subject: |
|
|
 Grand Master
Joined: 25 Aug 2015 Posts: 1292
|
I think it's quite widely used. I've seen it used in a couple of places.
For me, the main issues are:
- in my opinion, it's best deployed on a dedicated integration server ( EG ). But there's no way to configure EG-level properties using a cache policy file. Looks as if IBM development simply ran out of time to implement that.
- If you need zero data loss ( or as close as can be achieved ) then you need to ensure that the GC does not put all the copies of your data onto a single machine. As far as I'm aware, the only way to do that is to define exactly 2 catalog servers, and ensure that they are on different machines. This is not documented.
- Diagnostics are not very good. It's fiddly to set up, and hard to diagnose what you've done wrong because the error messages don't help much. And there is little in the way of support via the web UI or other tooling. |
|
Back to top |
|
 |
stoney |
Posted: Mon Apr 18, 2016 6:54 am Post subject: |
|
|
Centurion
Joined: 03 Apr 2013 Posts: 140
|
Quote: |
- If you need zero data loss ( or as close as can be achieved ) then you need to ensure that the GC does not put all the copies of your data onto a single machine. As far as I'm aware, the only way to do that is to define exactly 2 catalog servers, and ensure that they are on different machines. This is not documented. |
Just to clarify this point - if you want to ensure that data is replicated across different hosts, then you need to have configured two or more catalog servers where at least two of them are hosted on separate hosts.
If you only have one host in your configuration that is hosting catalog servers then we treat it as if there is only one host involved - even though you may have configured container servers on other hosts.
We have this "single host" test because we need to enable eXtreme Scale's "development" mode which permits it to store replica shards across different container servers on the same host. Normally it doesn't want to do this (for hopefully obvious reasons!). If we didn't do this then there would be no replicas of your data in a single host configuration and you would be susceptible to losing data if a container server EG goes down.
We could improve the single host test to detect cache policies with all the catalog servers on one host but with container servers on other hosts - but I wouldn't see it as a priority.
That configuration doesn't protect against the loss of the host of the catalog servers, in which case you would have a dead cache, and so I wouldn't recommend it! |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Apr 18, 2016 7:01 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
stoney wrote: |
If you only have one host in your configuration that is hosting catalog servers then we treat it as if there is only one host involved - even though you may have configured container servers on other hosts. |
This configuration is sort of what I meant by "using a standalone EG" - a broker on a separate server/host that only hosts a catalog server, and doesn't run any application flows. _________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
timber |
Posted: Mon Apr 18, 2016 7:28 am Post subject: |
|
|
 Grand Master
Joined: 25 Aug 2015 Posts: 1292
|
Quote: |
if you want to ensure that data is replicated across different hosts, then you need to have configured two or more catalog servers where at least two of them are hosted on separate hosts. |
Interesting...that's not exactly as it was described to me, but it makes sense.
This is a pretty important rule. Is it documented anywhere ( DeveloperWorks article or Knowledge Center? ). If not, I think I'll add a comment to the Knowledge Center and request clarification. |
|
Back to top |
|
 |
|