Skip to main content

Posts

Singleton pattern revisited in Java

Lets look at one the simple implementation of Singleton pattern in Java public class A { public static A a; private A () {} public static A getInstance() { if ( a == null ) { a = new A(); } return a; } } I'm arguing there is a major flaw in the implementation of getInstance() method, most of the old authors have simply translated all pattern implementation into Java from C++, remember Java Class-loaders work differently from C++. The above class is never loaded until we call A.getInstance() once, so what is the point of writing that thread safe, or validation code its all waste and we are simply introducing rubbish, simple implement Singleton pattern this way public class A { public static A a = new A(); private A () {} public static A getInstance() { return a; } }

Does IE6 has any benefits?

I don't like Microsoft like any other open source lover. Though my question is on greatest nightmare IE6, does it have any benefits? I was lucky enough to think one IE6 creates more jobs (i.e UI developer & QA). hahhahah...... Please comment if you know any other IE6 benefit so i can update this post.

Pros and Cons of using DOJO

DOJO is one of the leading JavaScript framework, and few of its competitors are JQuery and YUI. There are few reasons why anyone would want to use a JavaScript framework like DOJO.  Since these toolkits provides lot of features out of the box example:       Rich html components (i.e. Tables, Menus, Textboxes, buttons, Tooltip, Dialog box etc)       Event handling (ie onclick, onhover etc)       AJAX As we all know the issues(i.e browser incompatibility and many more) we encounter if we write all of these things in regular JavaScript, HTML and CSS. So using any JavaScript library makes a better choice. Let me summarize my experience using DOJO. First the good things DOJO has all the components you would most likely use (i.e Calendar, Menus, Trees, Validation, Grids, Event Propagations, Layouts etc) DOJO supports different themes (i.e Tundra, Soria etc). Also you can write your own look and feel and customize accordingly DOJO executes fastest on the browser DOJO is more mature than i...

Load Balancing and Clustering Liferay

There are two ways of Clustering Liferay on Tomcat 1. Sticky Session User request will always goes to same Liferay instance 2. Session Replication User request can go to any tomcat in cluster and his session is copied on entire cluster Lets get started for Sticky Session based clustering and load balancing. Use-Case Setting up two tomcat Liferay along with apache on same windows machine. Pre-requirements 1. install Apche 2.x 2. download Liferay5.x and make an extra copy Steps 1. open httpd.conf from apache_home/conf/ and add these lines at the end <Proxy balancer://mycluster> BalancerMember ajp://localhost:8009/ route=tomcatA smax=15 max=50 loadfactor=20 BalancerMember ajp://localhost:8010/ route=tomcatB smax=15 max=50 loadfactor=20 </Proxy> <Location / > ProxyPass balancer://mycluster/ stickysession=JSESSIONID </Location> <Location /balancer-manager> SetHandler balancer-manager Order Deny,Allow Deny from all Allow from l...

Load Balancing and Clustering Tomcat

There are two ways of Clustering applications on Tomcat 1. Sticky Session User request will always goes to same tomcat instance 2. Session Replication User request can go to any tomcat in cluster and his session is copied on entire cluster There are pros and cons of both approach, however i'll update this blog later on those. Lets get started for Sticky Session based clustering and load balancing. Use-Case Setting up two tomcat along with apache on same windows machine. Pre-requirements 1. install Apche 2.x 2. download tomcat 5.x /6.x and make an extra copy Steps 1. open httpd.conf from apache_home/conf/ and add these lines at the end BalancerMember ajp://localhost:8009/ route=tomcatA BalancerMember ajp://localhost:8010/ route=tomcatB ProxyPass balancer://mycluster/ stickysession=JSESSIONID SetHandler balancer-manager Order Deny,Allow Deny from all Allow from localhost Step 2. uncomment the following four lines LoadModule proxy_module...

Pros and Cons of Portal technology

Portal Technology came with lot of promises. Many companies started migrating from normal web based application to portal technologies in no time within last couple of years. Why there was so much like for Commercial and Open Source Portals? Few Services the Portals where providing out of the box Displaying large amount of information in a single page Information can be fragmented into simple small windows which can be placed anywhere on the page A particular window has two modes View and Edit. View is the default for displaying information and edit is used to for editing the information. Developers in a team can work on any particular portlet ( window) without interfering with other developers work Portals provide security, look and feel out of the box and everything is dynamically updatable. Couple of Big drawbacks of Portal Technlogy Reason: Bandwidth: this is one big drawback all the portals which are available in the market rendering, refreshing, every request to server yields to...