Abstract:
Modern software systems are working as a Distributed Systems with Multi tenancy, Cloud support and Application Program Interface (API) integration to facilitate their services. Scalability is the key requirement and asynchronous programing, Big data, Resource optimization and Performance enhancements play major role to support large scale software projects. It is one of the key challenges to enhance the performance of without impacting the consistency and stability of the system. Serialization is the key concept behind resource communication and enhancement to the system serialization communication can impact to the performance enhancement significantly.
Serialization is a process of converting an object into a stream of data so that it can be easily transmittable over the network or can be continued in a persistent storage location. This storage location can be a physical file, database or Network Stream. There are number of performant serialization techniques are available such as JDK, Kryo, Protocol buffers, Thrift, Apache Avro and etc. Serialization Techniques can perform object minimization decreasing the actual object size which has direct impact of performance improvements with low latency network traffic and save significant storage space with minified version of actual object, resource utilization with less Input/output (I/O) communication. It is important to identify effective serialization mechanism to enhance the performance. Major drawback of identifying performance serialization technique is lack of tools and framework to identify proper technique. The main purpose of this research is to introduce serialization techniques optimization framework