Application Types or Tiers

Tier 1 application: An information system that is vital to the running of an organization.
Example: Software used to run Trains, Flights, Operation theaters…etc

Tier 2 application: This will cause interruption, but not critical.
Example: Ticketing software, Classroom software,…etc

Tier 3 application: Nonimportant. Without them, business operations will continue.
Example: knowledge search software, Homework software,…etc

The view will change based on ownership and need of business.
Based on the tier, the architecture will be defined for the following
1. High Availability
2. Scalability
3. Security


Business Tiers

DSL – Domain Specific Language – for business analysts

How to provide a tool for business analysts to write logic in simple English? So that it can be used by underlying software without any changes or rewriting.
Answer: DSL – Domain Specific Language

If required we need to develop DSL from scratch for a given domain.
So that BAs can write rules and that should be easy to integrate with code.

(Image from – Python as DSL

Optimization Algorithms

DROOLS Expert Page with DSL

Connection marked as broken because of SQLSTATE(08003)

Problem Statement: Customer is restarting PostgreSQL database every night. Long running jobs are failing from after DB restart.

Address this:
Just to save the trouble of scanning through the PostgreSQL driver release notes, the Connection.setNetworkTimeout() was released in version 42.2.0 of the driver (

Available properties

Check when database was restarted
To get the start time, execute the query below:
psql -c “SELECT pg_postmaster_start_time();”

To get the uptime, execute the query below:
psql -c “SELECT now() – pg_postmaster_start_time();”

Exception Handling for guaranteed write:

boolean writeStatus = false;
write to database;
writeStatus = true;
}catch (Exception ex)
print exception;
sleep for 30 seconds;
//Hope for db to recover.