Here’s another pill of our fantastic Summer Release 2020. We’ve talked about the brand-new Imagicle ApplicationSuite as a Service, the introduction of Microsoft Enterprise Calendar into the Attendant Console, the new API to lock/unlock company phones, and the special offer to replace Cisco Mediasense going EOS with an even upgraded Imagicle Call Recording. Now it’s time for another tasty news for Imagicle Call Recording fans: greater scalability for our Call Recording app, using all the hardware space with the same performance level.
Why do more and more companies have a Call Recording solution?
Businesses in wide-ranging industries can benefit from Call Recording to monitor service quality, improve employee performance, reduce fraud, and resolve disputes.
Governmental, educational or administrative institutions – just to name a few – need to record conversations with their customers and staff for legal, security or compliance reasons.
That is why, over time, Imagicle Call Recording has evolved to respond to increasingly specific needs of each sector, allowing you to safely record and store incoming and outgoing calls from any telephone systems integrated with the Imagicle ApplicationSuite, simplifying the management of simultaneous calls and ensuring security, reliability and scalability.
I am Cristian Delù, a member of the Unified Communications R&D team. Today I will tell you how we improved the scalability of our Call Recording solution and increased the number of calls that can be recorded at the same time, thus using the whole hardware available while preserving the quality.
General aspects that influence performance, reliability and scalability.
Ready guys? Fasten your seat belts. Let’s take a short excursion into the technical aspects of call recording.
There are several aspects that can affect the proper functioning and quality of a recording service.
The main ones are:
architecture(32 bit VS 64 bit)
the consumption of RAM
the use of the DISC
the intensity of the NETWORK traffic
The 64bit architecture allows addressing quantities of RAM(I’m talking about Tera Bytes); moreover, execution is more efficient and faster, ensuring higher performance and reliability. By loosening the RAM usage limit, scalability is guaranteed.
The number of cores determines the load power that must be sized to the tasks to be performed. To be able to use it to the best, it’s also necessary to design the applications to exploit the parallelism while avoiding excessive use that would cause slowdowns and general inefficiencies with consequent reliability issues.
An adequate amount of memory guarantees good system performance in terms of responsiveness and reliability and allows in-memory caching, which speeds up the loading of data and programs. Furthermore, there are no slowdowns due to the memory swap process that occurs when the latter is not sufficient.
A disk with high access and writing speed, combined with an adequate amount of RAM for caching, guarantees good system performance, avoiding bottlenecks that slow down processes and cause additional CPU load. But to guarantee performance and reliability, it’s also necessary to design applications inorder to minimize disk access and optimize procedures(so as to load data into memory only once and then write it at the end).
A properly configured network card that guarantees high data transfers avoids slowdowns or pack failures(especially UDP packets, which are ones used by RTP media streams) which would compromise their performance and reliability when numerous connections are active(hundreds) and especially when a process is called to wait for a high amount of packs.
Scalability and performance of Imagicle Call Recording.
With the Summer Release 2020, several optimizations have been made on the CPU and disk usage in order to ensure scalability and better performance with the same hardware. The result is the possibility of increasing the number of simultaneous calls that can be managed on the same hardware while reducing the number of nodes.
The operational phases related to recording are essentially two:
the one relating to the recording of the conversation in real-time – the most delicate for reliability, as it deals with the reception and storage of the audio stream in real-time. The loss of data would affect its reliability and recording quality;
the one called„post-processing“, at the end of a conversation, which deals with processing the stored audio streams in order to archive a recording in a compressed and encrypted format. Any overload at this stage may interfere with the former.
The result of this intense work was to:
support 500 conversations simultaneously compared to the previous 180 on the same hardware, reducing the number of nodes required.
With the same workload, obtain a reduction of about 40% in CPU use compared to the same call load on the x86 platform.
Be able to estimate that to double the number of supported conversations, it is enough to double the sizing of the hardware thanks to the work done on scalability.
Well, guys, I hope you enjoyed this new piece of Summer Release 2020.
As we said at the beginning, Call Recording is an increasingly necessary tool for business for several reasons, including capturing details you might have missed or forgotten, coach teams more effectively, get to know customers, and comply with legal, industry, and service-level compliance guidelines.
That’s why, with this new feature, we’ve made it even more flexible and efficient. Hope you’re ready to enjoy it!
Stay tuned to find out our next steps to make your communications faster, smarter, easier.
Ps. Have you heard of our offer to replace Cisco Mediasense going EOS with Imagicle Call Recording?