2. We have seen examples on Mule Cache mechanism with Cache Scope. But this time
we will see implementing Cache for Mule Community Edition.
Mule Community Edition doesn’t have the Cache Scope as Mule Enterprise Edition,
so to implement Cache in Community Edition we require Custom Interceptor.
You can already refer https://github.com/ddossot/mule-in-action-
2e/blob/master/chapter12/src/main/java/com/prancingdonkey/interceptor/PayloadCache
Interceptor.java which shows implementing Cache in Community Edition by David
Dassot.
In my demonstration I have modified the code and implemented on the top of it with
additional Filter Expression
3.
4. To use Cache with Mule we have to construct our flow in following way :-
You can see the flow is divided into 2 parts and is connected by VM component. You
can see we have used Custom Interceptor to implement Cache in this
Community Edition
5. Our Mule config will be as follow:-
You can see we are using our Custom interceptor implemented and a spring
property filterExpression which will filter the expression we want to implement
.
7. In next step we will be running and testing the
application. This web service will interact with
database retrieve a row from the database and show
the row value in the SOAP response.
8. Here how we will test the web service :-
You can see that we have used SoapUI to test the web service.
Now when we hit the service, you can see in the SOAP request, it
takes id as input and then fetches all the data from the database
for that id.
9. Now, what we will do is manually deleting the entire
row from the database. In my case, I have used sql
server and deleted the row from the table using a SQL
query:-
10. With this in place, if we again hit the service, we will
get the same response as we got earlier:-
And that means our Cache is working and it’s responding from the Cache
and not hitting the actual Database !!! So our Custom interceptor is
implementing the Cache !!
11. So you can see that we have implemented the Cache for the Community
Edition which has the feature of filtering the expression like the Cache
scope of Enterprise Edition.
So, you can implement your own Cache using Custom Interceptor.
12. In my next slide I will bring some other techniques in Mule
implementation .
Hope you have enjoyed this simpler version.
Keep sharing your knowledge and let our Mule community grow