Optimizing the Performance of J2EE Applications
received this invitation to an webinar that will interest many of you
Topics to be Covered:
- Deep transaction breakdown from end-user to backend system
- Identifying bottlenecks
- Spotting synchronization and deadlock issues
- Isolating slow methods
- Solving memory leaks
Date:
Wednesday, November 12, 2003
Time:
10:00 a.m. - 11:00 a.m. (EDT)
in this webinar, please RSVP to Kimberly Buzzell at
(770) 677-1048
Hello,
I think the author I already mentioned used this: http://grinder.sourceforge.net/
It is for free.
We have been writing our own tool. The tool was actually not difficult. Problematic was the interpretation of the results. I can only advise you to keep a good protocol about what you have been meassuring an how you did this. Otherwise people will come up with strange ideas about the results of your loadtest.
You have to keep an eye on system ressources: The memory of the boxes involved, but also silly things like available connections. By opening and closing socket connections, we managed to run out of ressources on a SUN pretty fast...
Please be also aware that a loadtest, ..well produces load. Since we were testing a system where the middletier called up to the mainframe for data, we had to pick late hours for our test. At one evening we took 50% of the capacity of the mainframe... Don't underestimate the time it needs for negotiating and scheduling such meassurements!
good luck,
einar
Similar Messages
-
Performance of J2ee Application running in Portal Server
Hi,
We have developed the J2ee Application using JSPDynPage and the performance of this Application is going down day by day.
It is taking arround 30 sec to load the page.Sometimes I am getting iView Timed out error if the Load is Very high.
This is all happening in Production server.Can any one please help me to increase the Performance of the Portal.
Thanks in Advance
Ajay> Thanks for the response.
>
> There is no problem in the application as i know the
> code in this application is perfectly fine.
>
> There will be huge load on monday that too between
> 9-11 AM as too many people will be doing the the
> Database transactions at that point of time (adding
> the data in to the DB extracting huge amount of data
> from DB) the CPU usage in the porduction server will
> reach 90 % to 99 % and it will never come down
> ...this will again come to the normal situation when
> we restart the portal database.
>
> But every monday i cannot restart the server as this
> is in production.
>
> Can anyone please give some tips to increase the
> performance of the portal.
Have you checked your Garbage Collector log file ?
I posted some hints about how to do that in the thread "Server Performance Issue" in this forum.
I could be that you are running out of memory after the heavy load and then everything will be slow afterwards, because full GC's might be triggered frequently.
Regards,
Markus
>
> Thanks
> Ajay -
What are the main things to do when optimizing the performance of Java App
what are the main things to do when optimizing the performance of Java App
what are the main things to do when optimizing the performance of Java App
-
How to increase the performance of an Application
Hi,
I am using jdeveloper11.1.1.2.0 and weblogic server10.3.2.I have lot of txn in the database.when click the txn menu then page landing is very slow.My Txn data is 24thousands records.
My RAM is 8GB and 64bit machine .So how to fast my application?Is any idea then Please help me.
Thanks
AnupHi Frank,
I have follow the below link but there is no performance effect of my application.
http://www.gebs.ro/blog/oracle/adf-view-object-performance-tuning-analysis/
On VO level ,In Tuning
I have modified In batch Of 26 ,As needed ,and Query Optimizer hints FIRST_ROWS_26
AND ON the page level ,Table Column Property,Fetch size i have modified 26 and page definition level ExchangeTradedPlacementHeadVOIterator default range size is 25.
So i have above change but there is no effect on the performance of my application.
Please give me the Solution what will i do to increase the performance of an application.
Thanks
Anup -
How to improve the performance of Swing Application?
My project is a Swing based application which uses java 1.2.1 API.
The problem is my application is very slow and gets hung many times, inspite of the system configuration being good ( 256 Mb RAM, 733MHz processor).
Do give me some suggestions to improve the performance.
Regards,
sudhakarThe system configuration is more than enough to run java applications.
You are probalbly doing time-consuming operations in the event thread. Which blocks the event thread and the gui seems not to be responding. If you you have a very bad design.
Use a thread for time consuming operations. -
Regarding the performance comparision of application/web servers
i want the details of performance comparision of application/web servers and which is the best, efficient and easy to use.
Try google.
However for the most part the performance is not related to the application/web server that you use.
It more depends on
- the machine you are running it on
- what code you are running on it.
With regards to "best", you can debate that forever.
Tomcat is widely used, mainly because it is free. But it is solid. -
Test the performance of JSP application
is there any trusted tools to test the performance of jsp web applciation with JDBC code ?
i need to test the performnce wth huge number of users ,
thanksHello,
I think the author I already mentioned used this: http://grinder.sourceforge.net/
It is for free.
We have been writing our own tool. The tool was actually not difficult. Problematic was the interpretation of the results. I can only advise you to keep a good protocol about what you have been meassuring an how you did this. Otherwise people will come up with strange ideas about the results of your loadtest.
You have to keep an eye on system ressources: The memory of the boxes involved, but also silly things like available connections. By opening and closing socket connections, we managed to run out of ressources on a SUN pretty fast...
Please be also aware that a loadtest, ..well produces load. Since we were testing a system where the middletier called up to the mainframe for data, we had to pick late hours for our test. At one evening we took 50% of the capacity of the mainframe... Don't underestimate the time it needs for negotiating and scheduling such meassurements!
good luck,
einar -
Number of elements in the FP affecting the performance of my application ?
I developed a simple application which consists of aquiring a signal through a channel of a PXI 5102 module and commanding some relays of a SCXI 1161 module.
This application has the following features :
-The user can, at any time, change the configuration of the PXI 5102 module.
-The signal acquired can be saved to a file whenever the user wants.
-Instead of showing the signal acquired through the PXI 5102 channel, the user can load a given file which contains a saved signal.
-The user can increase or decrease the pressure on a line through a VI that commands SCXI 1161 relays.
As you can see, it is a fairly simple application but the problem is that it have been running for a time the fron
t panel crashes. Is it because the high number of elements I have in the front panel ?
To give you more information I tell you that the processes of saving, loading, decreasing and increasing the pressure on the line are event cases of an event structure.
The front panel consists of a tab structure, 20 controls and indicators and a cluster consisting of 9 controls.No error take place. By crashing I mean that after a period of time the frontpanel control´s response to inputs of the user become so slow that after a short time there´s no response at all.
The problem is that I´ve been dealing with this problem in this aplication for quite a while and although I´ve optimized, I think, its execution time and the way it deals with memory usage this problem persists.
Since most of the operations performed by it depends on inputs by the user I´ve decided to use an event structure to manage them and decided to load the VIs related to them dynamically into memory to somewoh optimize memory usage.
In order to make things more clear to you I´m sending you a zipped file containing pics that completely describe the frontpane
l ad the block diagram of the appliction.
Any help you can give will be deeply appreciated.
PS : I´ve tried to sent the zipped file but awindow appeared notifying me that Developer Exchange is down for maintenance. If you need any more information to clarify what I mean please let me know.
Sincerely,
Giovani Marcelino Nesi
DRV Desenvolvimento e Representação Virtual Ltda. -
How to find out the error in J2EE application without debugging
Hi all,
I am trying JCO example for Sales order in Netweaver Development Studio 2.0.3 and JCO 2.1.4.
I am using Java class as a object and calling the class in servlet.
I am checking one by one method ie systeminfo for getting connection and Salesorder method to get the detail.
I am using Printwrite class in Srvlet and getting the error in browser. but inside the method how I can get the error. the same way i can use the OUT.println in class also.
Thanks in advance.
Regards,
ramYou can check the log in the LogViewer service of your J2EE server
-
How to improve the performance of applications in Oracle Application Server 9i ?
I have my applications deployed to Oracle 8.1.7 database using OSE in Oracle Application Server 9i. My machine has 256 MB RAM. It has both Oracle Application Server and Oracle 8i database server installed on it. When I try running my applications I find they are very slow. Can I get some guidelines using which I can better the performance of my Application? It can be in the form of code, memory ,disk space etc.
Thanks in advance,
Regards,
krithika.
nullThe system configuration is more than enough to run java applications.
You are probalbly doing time-consuming operations in the event thread. Which blocks the event thread and the gui seems not to be responding. If you you have a very bad design.
Use a thread for time consuming operations. -
Users for the j2ee application
hi friends,
i want to create the users for J2EE applications.
can i create the users only for j2ee engine ?
how can i create these users?
if i want to implement the sap
is it necessary to buy the licence for j2ee users?
thanks®ards,
srinivas.Hi
To create the users in J2EE applications is not an issue, but the licensing is always applicable as it is applicable for ABAP applications.
There are two ways depends on configurations:
1. If the UME store is ABAP, then you can create the users at ABAP side using SU01 and at java side using http://<hostname>:5<Systemnumber>00/useradmin
2. If the UME store is JAVA, then you can only create using http://<hostname>:5<Systemnumber>00/useradmin
The licensing for JAVA applications depends as ABAP is having, if you use it as production you have to pay the charges. Please contact your local SAP representative for further details -
Can't find the J2EE Application JDBC Module Datasource in Weblogic
Hello,
I am trying to locate the JDBC Module J2EE application Datasource details in weblogic but I cant find it.
Can someone help me where I can find any Mbean in Weblogic which will specify all the details about the DataSource.
You can see in the image that under deployment I have an application which has Data source(saasreporef).
I have already discovered this target in one of my agent and I want to locate some Mbean which can give me details about this Datasource in Weblogic.I've solved it myself. It changed to NWDS from the Visual Administrator. It can be undepolyed using undepoly view in the NWDS.
I can find the answer using keword 'Deploying and Running the Application from NWDS' in the help portal. -
How to optimize Database Calls to improve performance of an application
Hi,
I have a performance issue with my applications. It takes a lot of time to load, as it is making several calls to the database. And, moreover, the resultset has more than 2000 records that are returned. I need to know what is the better way to improve the performance
1. What is the solution to optimize the database calls so that I can improve the performance of my application and also improve on the trun around time to load the web pages.
2. Stored procedures are a good way to get the data from the result set iteratively. How can I implement this solution in Java?
This is very important, and any help is greatly appreciated.
Thanks in Advance,
Sailathalatha_kaps wrote:
I have a performance issue with my applications. It takes a lot of time to load, as it is making several calls to the database. And, moreover, the resultset has more than 2000 records that are returned. I need to know what is the better way to improve the performance
1. What is the solution to optimize the database calls so that I can improve the performance of my application and also improve on the trun around time to load the web pages.
2. Stored procedures are a good way to get the data from the result set iteratively. How can I implement this solution in Java?
This is very important, and any help is greatly appreciated.1. 2000 records inside a resultset are not a big number.
2. Which RDBMS you use?
Concerning the answer to 2. you have different possibilities. The best thing is always to handle as many transactions as possible inside the database. Therefore a stored procedure is the best approach imho.
Below there is an example for an Oracle RDBMS.
Assumption #1 you have created an object (demo_obj) in your Oracle database:
create type demo_obj as object( val1 number, val2 number, val3 number);
create type demo_array as table of demo_obj;
/Assumption #2 you've created a stored function to get the values of the array in your database:
create or replace function f_demo ( p_num number )
return demo_array
as
l_array demo_array := demo_array();
begin
select demo_obj(round(dbms_random.value(1,2000)),round(dbms_random.value(2000,3000)),round(dbms_random.value(3000,4000)))
bulk collect into l_array
from all_objects
where rownum <= p_num;
return l_array;
end;
/For getting the data out of database use the following Java program (please watch the comments):
import java.sql.*;
import java.io.*;
import oracle.sql.*;
import oracle.jdbc.*;
public class VarrayDemo {
public static void main(String args[]) throws IOException, SQLException {
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
Connection conn = DriverManager.getConnection(
"jdbc:oracle:oci:@TNS_ENTRY_OF_YOUR_DB", "scott", "tiger"); // I am using OCI driver here, but one can use thin driver as well
conn.setAutoCommit(false);
Integer numRows = new Integer(args[0]); // variable to accept the number of rows to return (passed at runtime)
Object attributes[] = new Object[3]; // "attributes" of the "demo_obj" in the database
// the object demo_obj in the db has 3 fields, all numeric
// create an array of objects which has 3 attributes
// we are building a template of that db object
// the values i pass below are just generic numbers, 1,2,3 mean nothing really
attributes[0] = new Integer(1);
attributes[1] = new Integer(2);
attributes[2] = new Integer(3);
// this will represent the data type DEMO_OBJ in the database
Object demo_obj[] = new Object[1];
// make the connection between oracle <-> jdbc type
demo_obj[0] = new oracle.sql.STRUCT(new oracle.sql.StructDescriptor(
"DEMO_OBJ", conn), conn, attributes);
// the function returns an array (collection) of the demo_obj
// make the connection between that array(demo_array) and a jdbc array
oracle.sql.ARRAY demo_array = new oracle.sql.ARRAY(
new oracle.sql.ArrayDescriptor("DEMO_ARRAY", conn), conn,
demo_obj);
// call the plsql function
OracleCallableStatement cs =
(OracleCallableStatement) conn.prepareCall("BEGIN ? := F_DEMO(?);END;");
// bind variables
cs.registerOutParameter(1, OracleTypes.ARRAY, "DEMO_ARRAY");
cs.setInt(2, numRows.intValue());
cs.execute();
// get the results of the oracle array into a local jdbc array
oracle.sql.ARRAY results = (oracle.sql.ARRAY) cs.getArray(1);
// flip it into a result set
ResultSet rs = results.getResultSet();
// process the result set
while (rs.next()) {
// since it's an array of objects, get and display the value of the underlying object
oracle.sql.STRUCT obj = (STRUCT) rs.getObject(2);
Object vals[] = obj.getAttributes();
System.out.println(vals[0] + " " + vals[1] + " " + vals[2]);
// cleanup
cs.close();
conn.close();
}For selecting 20.000 records it takes only a few seconds.
Hth -
How was performance of JavaFX Application
Hi all,
I read one forum about JavaFX performance related information.. they mentioned like this..
The first thing you’ll notice is that it’s very slow. The demo takes a very long time to load and start, and real time performance is disappointing. Here is how it compares:
JavaFX — 14 fps
Firefox + Silverlight (JavaScript) — 56 fps
Firefox + Flex — 62 fps
Adobe AIR — 62 fps
Firefox + Silverlight (CLR) — 99 202 fps (update: 202 fps after fixing main timer’s latency)
(All tests were performed on Pentium M 1.7 machine under Windows XP SP2)
It is 4.4x slower than Flash and 7x 14x slower than Silverlight (CLR-based variant).
On a positive side, development with JavaFX is fun, the language is very compact and efficient for building complex dynamic layouts. There is a great converter to JavaFX from SVG format and JavaFXPad is done nicely too.
I want to know that how was the performance of JavaFX application.??
It seems that very slow while running on WebBrowser.. ???
Thanks
R Prabulol
work with more memory h�h�....
no serious make sure that your garbagecollector is run very often you can make your own if you want...
work with servlets...
hope i helped you out -
J2EE application after new start in "prepared" status
Hi all,
we have the problem with J2EE applications. After new start of WLS the application get "prepared" status.
How can I find the reason of the issue?
Regards,
MohIs this application ever came to active state?
when you deployed this application intial there might be errors so it never went to active state
when ever you did a restart the application is in prepared state.
try to bring into active and see if your geeting any exceptions.
Maybe you are looking for
-
Help with a report/how to repeat a value in same report
Hi, I am creating a report where I filter how many members I had who joined in the last month, in the last 2 months, 3 months etc, compared to the total members in the last two years. In the chart report, I would like a bar showing the members count
-
Question. I am running 10.6.8. on my macbook and wrongly/inadvertently downloaded Lion Safari rather than an update to my trusty browser system. How do I uninstall Lion which seems to have overwritten. 'scrubbed' my faithful friend leaving me bereft
-
Unable to use Hyper Draw on some projects
I might be doing something wrong, but all of a sudden in one of the current projects I'm working on I can't use Hyper Draw in the Piano roll view. I can't see any current automation or draw any new modulation, sustain, volume etc. I have had to rever
-
Index on Publisher Table ( CDC Setup)
We have Aync Auto Log CDC setup in place on Oracle 11.1.0.7. Everything is working fine but had a question on performance of select on the tables owned by publisher. As per my understanding, changes are captured in tables owned by Publisher and Subsc
-
IPhone gives an error 2005 ?
when i try to restore my iphone 3GS to iOS 5, it gives an error 2005 in itunes, i even can`t turn on the phone, it is in DFU mode and when i exit DFU, it goes to recovery mode ! i tried many articles given on google website, but none of it worked My