Developer Application Updates - Latency in Propagation/Synchronization

skarlovic
Participant II

Hello,

We are new to Apigee Edge... but we have noticed that when changes are made to a developer app, for example, access to a product, updates to custom attributes etc. these changes take effect within a few seconds on one instance and a few minutes in some cases on another. Eventually all sync up, My question is, can something be done to make these changes immediate if so what is the impact to performance if any, are there any other trade-offs to consider when consider the solution?

Thanks.

0 2 221
2 REPLIES 2

First, can you clarify what you mean by "these changes take effect". Just provide some additional detail so we know what you're looking for.

I can guess that you're talking about credentials (keys) or tokens derived from same, when they used and verified at runtime.

The Apigee Edge gateways use a token cache which can last up to 3 minutes.

There is nothing you can do to explicitly reset the cache, today.

We are examining the possibility to reduce the cache lifetime to 30 seconds, or something smaller.

This is tracked internally at Apigee under ticket number CORESERV-657 .

How often do you expect to make changes in normal activity?

I understand that it's a hassle to make the changes and then not see the effects. But do you expect to do that in normal operations? Often people will be fiddling with product and app mappings in a development scenario, but then in production, the configuration is mostly static. I'd like to understand specifically what you are doing and depending on your requirements, maybe we can find a way to work around the caching issue.

Thanks for your response Dino and clarifying. For example if I change a custom attribute, I don't see this value come through immediately in the trace while developing. If I change the attribute, turn on trace, invoke the API, look for the variable, I don't the new value I entered. I have seen the same issue for changes to credentials when I change access to products in the credentials section.

When I say "these changes take effect" I mean the changes I make to the app config don't seem to propagate to all instances / servers running Edge / proxies for some time. If you try to change something in the app config then execute the API repeatedly, like once or twice per second you may see that some requests will honor the changes you've made and other will not, at least that was my experience. If this information (tokens, attributes, status) is cached, then that makes sense as to why this is happening. Perhaps there would be a way to evict the cached data on app config updates.

I don't see this happening regularly in production, but for development it would be useful. However, there may be cases in production where we want to change an attribute or access to an application at runtime, if there is lag or sporadic behavior may present confusion for those maintaining the developer app config.