Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Measurement Group, India 1 1 www.cmgindia.org Optimal Design Principles for better Performance of Next generation Systems Balachandar Gurusamy,

Similar presentations


Presentation on theme: "Computer Measurement Group, India 1 1 www.cmgindia.org Optimal Design Principles for better Performance of Next generation Systems Balachandar Gurusamy,"— Presentation transcript:

1 Computer Measurement Group, India 1 1 www.cmgindia.org Optimal Design Principles for better Performance of Next generation Systems Balachandar Gurusamy, Infosys Maheshgopinath Mariappan, Infosys Indranil Dharap, Infosys

2 Computer Measurement Group, India 2 Introduction Design is the key in Software Engineering Methodology Design errors are difficult to address and will be very expensive to fix at a later stage

3 Computer Measurement Group, India 3 Programming Language

4 Computer Measurement Group, India 4 Selection of Database Big Data/No SQL will not solve all the data problems Problems faced due to wrong DB selection - Querying becomes complex - Query execution time will be very high and it results in slow responses to the user Case study – Trouble ticket application RDBMS for systems having relation among data and involves frequent reads NoSql for voluminous data without relation and less reads O R A C L E

5 Computer Measurement Group, India 5 Replication strategies Synchronous Frequent updates Slow response Asynchronous Less updates Faster response

6 Computer Measurement Group, India 6 Caching Store only static data in the cache Implement proper cache eviction policies Use in-memory cache than secondary cache

7 Computer Measurement Group, India 7 Garbage collection Garbage collection is a way of doing automatic memory management Case study – Queuing application dropping requests - No issues in the system logs but application was dropping customer requests - Root cause analysis identified the issue related to bad garbage collection configuration

8 Computer Measurement Group, India 8 Session management Session management is more like managing a transaction Every session started should be closed properly Case study – Ecommerce site not able to handle transactions - Lot of unmanaged customer session in memory - Session data is huge and consuming lot of system resources - Optimized configurations like, closing sessions once client is disconnected, timeout the session based on the application requirement, move data to temporary journal helps to address this issue

9 Computer Measurement Group, India 9 Client side computing vs Server side computing Implemented using Javascript, Ajax, Flash Implemented using PHP, ASP.net, JSP, Python, Ruby on rails Interactive web applicationsQuick business rules computation Less Network bandwidthEfficient caching implementation Quicker initial load timeBetter data security Preferred for dynamic loading of content, animations Preferred for validating user preferences Data storage in local temporary storageTo develop structured web applications

10 Computer Measurement Group, India 10 Computer Measurement Group, India Retry Mechanism Retry mechanism is used to enhance user experience It will be employed through Database calls and third party calls to cover the failures Case study – Real time communication project - No sql database is used in the project - When the database went down due to system issues, all the Clients were retrying indefinitely and brought down the entire infrastructure - By configuring optimum number of retries the application works without issues keeping the infrastructure issues away 1 st Attempt- No response 2 nd Attempt- No response 3 rd Attempt- No response No further attempts unless the protocol is followed

11 Computer Measurement Group, India 11 Computer Measurement Group, India Choice of Design patterns Currently more than 200 design patterns exist in the market Design pattern Intent ontology is one of the method to identify the suitable design pattern. Design pattern wizard tool helps to select the appropriate design pattern

12 Computer Measurement Group, India 12 Computer Measurement Group, India Parallelism 1 2 3 4 Identify the tasks that can be executed independently Break down large transaction into smaller tasks High throughput & better performance Map Reduce is the best example

13 Computer Measurement Group, India 13 Computer Measurement Group, India Choice of data structures Used by computers to store and retrieve data internallyCommonly used data types - List, Map, Set and QueueList to retrieve items in the input orderMap for retrieving items based on the keySet to store only unique set of data itemsQueue to implement worker thread modelIf possible override the default size of the data structure

14 Computer Measurement Group, India 14 Computer Measurement Group, India Async transactions Determine the transactions that can be done in asynchronous manner Helps to reuse expensive resources effectively Items that can be done asynchronously Database read or write IO intensive operations Calls to third party systems Enable NIO connections in the application servers

15 Computer Measurement Group, India 15 Computer Measurement Group, India Avoid lot of hops X

16 Computer Measurement Group, India 16 Computer Measurement Group, India Thank You


Download ppt "Computer Measurement Group, India 1 1 www.cmgindia.org Optimal Design Principles for better Performance of Next generation Systems Balachandar Gurusamy,"

Similar presentations


Ads by Google