liferay running slow - tomcat6

I have installed Liferay-Tomcat 6.0.6 on one of my Linux machine having 4GB of RAM and it uses MySQL installed on a different machine.
The liferay runs really slow even for 10 concurrent users.
I have attached the screen shot taken from the AppDynamics which shows EhCache and C3PO both are responding slow at times.
Are there any special config required for EhCache or C3PO??
I am currently running with default configurations.

can you tell me the methodology for deriving those stats? In most cases, this behavior comes down to poor code implementation in a custom portlet or a JVM configuration issue and more likely the latter. Take a look at the Ehcache Garbage Collection Tuning Documentation. When you run jstat, how do the garbage collection times look?

Related

Appium GUI-test for WPF, how to get it working on Azure?

I have 2 simple GUI-test on a WPF application. They work alright from VisualStudio.
Now I am trying to also do that in my Azure pipeline. Ik keep on bumping against the same error right at the start:
"OpenQA.Selenium.WebDriverException: An element could not be located on the page using the given search parameters"
Basically I am working along this line: WinAppDriver in CI with Azure Pipelines. One difference with the example is that I have put my tests in my build pipeline instead of my release pipeline. As far as I can determine that should not be the cause of my problem, using the same Windows-2019 agent.
This is how the pipeline looks like, up to the tests:
In the past I have had problems from VisualStudio similar to those decribed here, but I have left those behind. FindElementByName - Element couldn't be located
Nevertheless I have tried to improve on these aspects by using DefaultWait. It works fine from VisualStudio but has not helped me on Azure.
I read a couple of times about an 'interactive mode' for the agent. But I don't see anything about that in the guideline, and it seems to apply to self hosted agents. I also don't see any configuration option on the standard agent. So I am confused about that.
I am lost here.
Could someone tell me what I am missing?
It would be much appreciated, I have been spending quite some time on this already.
This took me a while to find the necessary information and piece together the solution, which turned out to work.
The key thing is using an interactive agent, which has to be self hosted. Key instruction for me was following Self-hosted Windows agents. This resulted in installing an environment on my own hardware, and to be pretty simple and straight forward.
This implies one has to startup this environment with Powershell, and probably guard the graphical test as it executes. For an one man team as mine that is no problem, for a larger team this may be an issue.
An additional advantage is that the entire building and execution environment is now under one's own control for overview and inspection.
It's funny to push a commit and see the pipeline progress on Azure, plus starting up the graphical test on my own hardware.

Garbage Collection Setting Solr, sloe performance

We use a very old solr 4.2.0 system on OpenJDK6. I am battling a sloooowness issue on our system First I thought it was database, so we tuned all the queries. It did not help. Finally I tracked down to the Solr system performance that is causing the issue. It happens everyday exactly at the same time 8:58am CST, I see a spike in CPU usage and users feel slowness which is significant. And that happens to be the peak usage time with most of the surgeons on the system. I am in the process of migrating our system to a newer platform with Elasticsearch. In the meantime I need to keep this system going. I thought this is related to the GC on Solr. I know this is an age old topic discussed at length. What I see running on the system is the following command, with that what is my heap size, it has two switches Xmx128M and Xmx12500m, which take precedence? My machine has 32GB memory, I can bump this up if necessary. I am not sure where this 12500m is getting set. i looked at the /etc/init.d/tomcat6 script, it is set to 128M there. Not sure where this other setting is getting picked up from? We are on a Ubuntu system in AWS. Thanks for any help.
tomcat6 24483 17.3 44.7 19723020 13805172 ? Sl Apr13 3597:31 /usr/lib/jvm/java-6-openjdk/bin/java -Djava.util.logging.config.file=/var/lib/tomcat6/conf/logging.properties -Djava.awt.headless=true -Xmx128M -XX:+UseConcMarkSweepGC -Xms10000m -Xmx12500m -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/share/tomcat6/endorsed -classpath /usr/share/tomcat6/bin/bootstrap.jar -Dcatalina.base=/var/lib/tomcat6 -Dcatalina.home=/usr/share/tomcat6 -Djava.io.tmpdir=/tmp/tomcat6-tmp org.apache.catalina.startup.Bootstrap start

Selenium script breaks when doing other activities

I am using selenium to automate my application.. My applicaton works on IE only.. I dont have much scope for other browser..
but when my scripts are running if i do other activities like reading mails, or update QC in another window.. Those are breaking my scripts (no such element or no such window..) once in a while (mostly out of 10, 2 to 3 times i am facing this issue). But can not make system idle till my scripts are run as i do have other activities after started the script. How to stabilize this?? Any one facing these kind of issues??
Running Selenium tests locally using your one and only IE browser does come at the cost of having to not touch your mouse or keyboard during test executions. A way to get around this is to create one or more virtual machines. VirtualBox from Oracle is a popular choice but there are others. You need to install an operating system on your new virtual machine and odds are that your existing Windows license is single use. You can request an additional Microsoft Windows OS license from your IT department or simply buy one yourself for, what? $190? I have done that when the paper work at my client was unmanageable. My time is worth more than that.
Another alternative is to take advantage of 90 day free licenses from Microsoft.
Start your test on the virtual machine then change focus back to your desktop to do other work. I have even added code to the end of test logic to beep when the test completes so that I know when to expand my virtual machine.
Update
You should add an antivirus to that virtual machine. Safety first. :-)
Selenium does not support and non web-based applications, it only supports web based applications.
So if you are doing activities like reading mails and update QC in other window, you will not able to find the elements through selenium.
If you are facing some challenges with IE browser. Please refer this link:https://code.google.com/p/selenium/wiki/InternetExplorerDriver
There are following limitations are given below:
Some limitations of Selenium Automation tool are as follows:
It does not support and non web-based applications, it only supports web based applications.
Its and open source tool so in case of any technical issues you need to rely on the selenium community forums to get your issue resolved.
You need to know at least one of the supported language very well in order to automate your application successfully.
No inbuilt reporting capability so you need plugins like JUnit and TestNG for test reports.
Lot of challenges with IE browser.

How to "explore" group of servers?

I need to check a group of servers (Unix, Linux) to know what kind of services, software (also version) are running there (check it once for a while and store it in database).
The idea is to have always fresh info about whole environment - its constantly changing. Perhaps you can suggest some solution that is already there?
Currently i am thinking about using Nagios or Cacti + plugins but I am not sure if this solution will be optimal.
Nagios is a very powerful monitoring solution (the best for me) : Open source, Compatible with both linux & windows, reporting & notifications via emails/SMS, Nice interface, Many many plugins...etc I've already worked with & I was very satisfied.
Check Nico Largo's Forum for Install. If you are not familiar to linux command search for FAN : Fully Automated Nagios which is a .iso where nagios is already in.
If you have any trouble during install or configuration post your questions there : https://serverfault.com/
Given that you want to poll for information on the system that can change dynamically, I would look at Check_MK.
It originally started as a plugin for Nagios that would poll a server for running services and generate the necessary configs for monitoring anything it discovered. Since then, it has evolved into a complete monitoring solution that provides its own complete ui (still based on nagios core), so you are safe in running this if you are familiar with nagios already.
See the website: http://mathias-kettner.com/checkmk_monitoring_system.html
You may need to select that you wish to view the "English" perspective of the site on first visit.

Upgrading Solr VM - could this cause problems?

I have a Solr installation running on JVM 1.6.0_18 and I would like to migrate into a much more powerful machine where it will share a 1.6.0_21 JVM with another application (Solr and the other application won't share the same Tomcat instance btw).
Will this pose any problems? Are the JVM requirements documented anywhere?
I think you will be fine. But if someone wants to upgrade it above 1.6.0_21, maybe you should go to 1.6.0_29 and not look back.
Because after _21 until _29, the code that lucene uses to read variable-length integers (used all the time in search!) is sometimes wrongly compiled by hotspot... we tried to add a hack/workaround (manually unroll it to dodge the bugs) but in general I would just avoid these versions, see https://issues.apache.org/jira/browse/LUCENE-2975
In response to your questions about "JVM requirements", lucene doesn't have "special" JVM requirements, only that we have lots of tests that actually execute things more than 10,000 times, and have found bugs in particular versions you should avoid, thats all.
As of posting this comment, I only know of minor issues with 1.6.0_29 and 1.7.0_01. So I would really recommend these as some major bugs previously affecting lucene are fixed there.

Resources