BizTalk 2013 r2 memory leak issue

451 views Asked by At

We have installed BizTalk 2013 R2 and deployed a simple solution.

What we observed is the memory consumed by BizTalk service keeps on growing.

It does not come down even after it has completed the processing.

Please find the details of the tests done.

BizTalk Solution (contains 2 schemas, 1 map and 1 orchestration).

scenario 1

Test File Size: 2 KB No of files:250 Start memory : 12MB END memory :122 MB

scenario 2

Test File Size: 2 KB

250 files processed 3 times one after other

start memory 13.2 MB end memory 160 MB

scenario 3

Test File Size: 2 KB

250 files processed 6 times one after other

start memory 13.2 MB end memory 215 MB

2

There are 2 answers

0
Dijkgraaf On

BizTalk will actually "cache" the assemblies in memory for a while.

This actually means that the next time the process runs it will have less of a start-up time as it is already in memory.

If the process is not called for a while it will unload it from memory, unless you've configured it to stay in memory permanently which is also possible.

That is also the reason you have to restart the BizTalk hosts if you update the assembly in the GAC. This forces it to unload the assembly from memory and will load it only if the process that needs it runs.

So what you need to do is monitor your BizTalk server for a longer period while it is not processing those files, and eventually you will see it release the memory again.

A tool to do this monitoring and detect memory leakage and other issues is Performance Analysis of Logs (PAL) Tool, this will help you log the data from the Performance Counters and then analyse the results against thresholds to detect issues.

0
Anwar Husain On

Also did you try running any other applications/services just after you performed this test? .Net framework will activate GC if there is memory in demand by other processes and you could probably see it coming down.