Saturday, November 19, 2011

What comes to my mind when I think of Performance, Scalability, Availability ?

When I think of performance what comes to my mind.

1) Parallel vs Serial
2) Cache vs disk access
3) Less clicks vs more clicks
4) Synchronous vs Asynchronous design
5) Compression
6) Archive
7) Concurrency
8) Contention
9) Stateful vs Stateless system design
10) Design to scale up vs scale out

Friday, November 18, 2011

Categories of objects in JVM heap

Objects created and stored on the heap generally fall into three categories:

1) Short-lived objects - life-cycle of these is bound to a http request

2) Medium-lived objects - usually represent cache entries with shorter TTL (time to live)

3) Long-lived objects - represent cache entries with big TTL, settings and infrastructure objects (plugin framework, rendering engine, etc), cache entries taking most of the space.

Wednesday, November 2, 2011

Considerations for deciding between native and Web mobile apps

What should we use a Mobile web or Native apps and for what type of applications? This question popped in my head whilst reviewing a mobile solution that we plan to launch.

After some reading I learnt -various factors that one needs to bear in mind before deciding either way, they are -

1) Market/User segmentation
2) Development and maintenance cost
3) Distribution and channel support
4) User experience and expectations
5) Off-line operation
6) Time to market
7) Development skills and capabilities
8) Data security
9) Technical product management
10) Usage analytics

Personally I believe that in short term Native Apps may steal the show but it may fade in long run as its difficult to manage apps version for various devices and it requires various skills sets to develop.

I am tending more towards the Web apps using some cross-platform frameworks as many other media touch points would increase (tablets, web connected TV, etc). HTML5 would be a parallel work so that in future which ever path takes center stage .. am atleast using that technology

Disable hot deployment in production

A colleague of mine shared this blog link which may help if you are using Weblogic Application server. It talks about disabling hot deployment in Weblogic server especially for Production environment.

http://jojovedder.blogspot.com/2009/05/slow-weblogic-response-jsp-and-servlet.html