• Post Reply Bookmark Topic Watch Topic
  • New Topic

Financial Software  RSS feed

 
Eddie Long
Ranch Hand
Posts: 69
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
financial software often deals with a high volume of data and i'm interested in any special techniques used when writing java programs to ensure that the application performance is reasonable. Websites,tutorials,personal experiences and examples are very much welcome.

thanks in advance
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Most importantly, for any type of software take the following advice at heart: http://faq.javaranch.com/view?WhenToOptimize

From my limited experience with financial software I'd say that the data *processing* typically is rather simply, with linear complexity. The bottleneck is more likely to be found in data *access* - in the database layer, for example.

For a good general site on performance, see http://www.javaperformancetuning.com/
 
Jeanne Boyarsky
author & internet detective
Marshal
Posts: 37181
515
Eclipse IDE Java VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Eddie,
I agree with Ilja that the database layer is the number one thing to watch out for. Normally, I would agree not to optimize until the end. However, you can write yourself into a corner if the architecture doesn't support scalibility extremely well. (A J2EE architecture helps you out here.)

Some notes from my experiences with developing financial software:
1) Carefully review the number of trips to the database. One query returning a million rows is better than a million queries returning one row.
2) Avoid returning unneeded data. If you need a sum of the data, let the database do it rather than returning all that data and adding in java.
3) Minimize the data crossing tiers. If you can do back-end processing in the data access (JDBC or EJB) tier, pass less data to the front end.
4) Think about what you are doing with the data. If the user is going to see the first 20 records out of 1000, you don't need to get all that data in one shot.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!