Performance and scalability: Where is the line between considering or not the performance

  1. Hi there...i am reading a lot on EJB, distributed application, etc.. In my case, i create some simple web application like a website for a sport team. My question now is when do i need to consider performance, distributed system...multiple servers to handle request...? It depends on the number of users acceding the website per day? I just need some advices on this...Because i read a lot and i see stuff like use JBoss , use Hibernate...but i am not sure if i really need those frameworks/application servers... Thank you
  2. question is what kind of usecase that you are targeting... guess is that it is for a sport team... lot of updates, scores, statistics, strategies, content search, retrieval and ofcourse the usual admin stuff like user management, authentication and content management. Yes. it sure depends on the number of users accessing the website per day..but also how much processing power that you need in terms of cpu, memory where the server is running, and the same case for database server. In other words, concentrating on system sizing is very important. back of the envelope calculation is to find how a single request translate to memory requirements across the different layers from a JSP/ASP to the database.... there is a constant/fixed numbers to be added like to run tomcat or weblogic... On the data side, concentrating on the different dimensions of the problem... simple questions to ask are if the queries need to be optimized....is the normalized schema the right answer for the queries...should i go for olap since the queries are more on aggregation on different dimensions...should we separate reporting from the transactions ?? excuse me for the long answer....good news is architecting is no longer an art but science -)) Bhagvan K http://www.jroller.com/page/bhagvank
  3. Thank you very much you bring some points that i did'nt tought about
  4. Hi Guillaume, I had posted a set of articles on <a "href="http://getitdone-simpler.blogspot.com/2006_08_01_archive.html"" rel="nofollow"> content management sizing and caching at http://getitdone-simpler.blogspot.com/2006_08_01_archive.html Essentially, for web sites, it is possible to get additional information by caching the output of these notorious queries and hence get more mileage for your money. Apart from performance, you may also need to consider multiple servers for Availability. So that if one server goes down, the second server is able to serve the requests and the entire site is not down. OR mapping like hibernate usually donot help performance. App servers give you advanced pooling and data caching abilities which might help performance in many cases - however your application design must consider what it needs. For simple, no interactive websites, the best way is to generate content from a CMS and publish as static HTML pages. you can look at OpenCMS for instance, or you can write a utility on your own which wakes up every 5 minutes, crawl your dynamic home page and saves it as a static page available to users. Regards Pranshu