Performance of WLS as a web server
Hi,
I post this on the clustering list since I'm interested in finding out the
likelyhood of people using WLS as a web server (as well as servlet engine/EJB
container).
What do you prefer: WLS or Apache/IIS/NES with the plug-in?
Why?
Do you prefer using a front-end cluster that serves static content and load
balances dynamic requests to a back-end cluster of WLS instances?
Do you prefer using WLS (Express) on the front-end cluster or Apache/IIS/NES?
If using a front-end cluster, do you use DNS RR or an external HW load balancer?
What load balancer do you use if a cluster of WLS instances serves both static
and dynamic content? (With possibly a separate back-end cluster for EJBs.)
The performance of WLS as a web-server may cause some people to prefer a front-
end Apache/IIS/NES cluster, is that right?
Regards,
Frank Olsen
Stonesoft
The main reason that 5.1 is 25% slower than NES or Apache on serving static html
is that NES/Apache do a lot of native I/O and caching ( their code base is C/C++).
6.1 fixed that problem, BEA use native I/O to retrieve static html and img files,
and caching them in memory. Benchmark data shows that they are in par with NES/Apache's
performance. It's pretty safe for you to use 6.1 to host your static contents
and use it as web container at the same time.
My 2 cents.
Jim Zhou.
[email protected] (Morten Hindsholm) wrote:
Hi,
we are currently using Netscape Enterprise Server 3.6 as our web
server and WLS 5.1 as web container, both running on AIX 4.3.3.
We want to get rid of the NES (it is buggy and unsupported) but we are
unsure if need to replace it with another web server (e.g. Apache or
iPlanet), or just use WLS 6.1 as both web server and web container.
So the question is: do you have any experience regarding the
performance of the WLS 6.1 web server compared to a standard web
server?
TIA
/\/\orten Hindsholm
Similar Messages
-
Hi,
we are currently using Netscape Enterprise Server 3.6 as our web
server and WLS 5.1 as web container, both running on AIX 4.3.3.
We want to get rid of the NES (it is buggy and unsupported) but we are
unsure if need to replace it with another web server (e.g. Apache or
iPlanet), or just use WLS 6.1 as both web server and web container.
So the question is: do you have any experience regarding the
performance of the WLS 6.1 web server compared to a standard web
server?
TIA
/\/\orten HindsholmThe main reason that 5.1 is 25% slower than NES or Apache on serving static html
is that NES/Apache do a lot of native I/O and caching ( their code base is C/C++).
6.1 fixed that problem, BEA use native I/O to retrieve static html and img files,
and caching them in memory. Benchmark data shows that they are in par with NES/Apache's
performance. It's pretty safe for you to use 6.1 to host your static contents
and use it as web container at the same time.
My 2 cents.
Jim Zhou.
[email protected] (Morten Hindsholm) wrote:
Hi,
we are currently using Netscape Enterprise Server 3.6 as our web
server and WLS 5.1 as web container, both running on AIX 4.3.3.
We want to get rid of the NES (it is buggy and unsupported) but we are
unsure if need to replace it with another web server (e.g. Apache or
iPlanet), or just use WLS 6.1 as both web server and web container.
So the question is: do you have any experience regarding the
performance of the WLS 6.1 web server compared to a standard web
server?
TIA
/\/\orten Hindsholm -
Using Weblogic as a front end web server
Hi all, recently there has been a push for us to investigate moving our Iplanet
web servers to Weblogic. So our architecture would be WLS web instances on the
front and passing back to WLS app servers on the back end. We would need to run
SSL and none SSL and handle certificates and multiple applications on each web
server as well as serve up static content. Has anybody had any experience with
going to this set up, and if so would you recomend it ? It looks way harder then
setting up a Apache or Iplanet web server."Mark Griffith" <[email protected]> wrote:
You should check out 8.1, SSL configuration is simpler there.
I would say in general that the main weakness of WLS as a web server
is on
the administration side of things.
Cheers
mbg
"Eric Sundberg" <[email protected]> wrote in message
news:3ebfce80$[email protected]..
Hi all, recently there has been a push for us to investigate movingour
Iplanet
web servers to Weblogic. So our architecture would be WLS web instanceson the
front and passing back to WLS app servers on the back end. We wouldneed
to run
SSL and none SSL and handle certificates and multiple applicationson each
web
server as well as serve up static content. Has anybody had any experiencewith
going to this set up, and if so would you recomend it ? It looks wayharder then
setting up a Apache or Iplanet web server.
thanks for the heads up -
Webi Server Performance Tuning
We have Webi Server in a clustered environment.
Our environment doesn't have much reports for Webi server to handle..
But, webi server goes down often and i have to restart the physical server to get webi running.
Is there a way to tune webi performance or find the root cause where the problem is ?Yes, there are.
In CMC got o servers and view properties for Webi report server, Admin guide will have details on those parameters and possible tunigs...
Also, applying latest Service Packs and Fix PAcks helps a lot.
Improving report design helps tremendously.
To troubleshoot issues - you need to enable tracing, review log files. -
Poor Performance of Sun One Web Server 6.0 SP6
We are running on an E450 with 2GB of memory, Solaris 8 2/02 with Recommended and Security Patch Cluster from 31 Jul 03, Sun One Web Server 6.0 SP6, Macromedia ColdFusion 5, JDK 1.4.1_02. We are seeing intermittent (three or four times a day) performance problems, extremely poor response time.
A vanilla, �test� iPlanet web server was put up on port 2443 with https turned on and off. Repeated control tests on file operations (�copy link as�) showed similar results as those described in High Impact above. Changes to add KeepAlive parameters (in magnus.conf) showed no noticeable improvement.
Tests were conducted -- on the test server -- accessing the same file from two clients, one a thin client (TC), the other a Unix workstation (UW).
Results:
1) Sometimes process TC was started first and continued normally while process UW hung up; when this happened, only one httpd process was building cpu time;
2) Sometimes process UW was started first and continued normally while process TC hung up; when this happened, only one httpd process was building cpu time;
3) Sometimes both process TC and process UW continued normally regardless of which was started first; when this happened, two different httpd processes were building cpu time together;
Speculation on Process Management - speculation is that, in the case of the 3rd bullet above, iPlanet assigned different httpd processes to the two requests. In the case of the first two bullets, however, the belief is that iPlanet actually assigned the second request to the same process it had previously assigned the first request. In this case, the second request was left to wait. It appears that most of the work done by httpd children is performed by only two or three children, even when there are 10 available.
Questions;
Why are the other httpd children are not more fully utilized?
What about changing the number of Acceptor Threads?
Could turning on Native Polling help (UseNativePoll in magnus.conf)?
Any other thoughts about what is going on or how to fix the issue?
Thanks for any assistance
Excerpt from /etc/system
* Web Server and ColdFusion Setting
set shmsys: shminfo_shmmax = 2147483647
set shmsys: shminfo_shmmin = 1
set shmsys: shminfo_shmmni = 100
set shmsys: shminfo_shmseg = 50
set semsys: seminfo_semmns = 1750
set semsys: seminfo_semmni = 70
set msgsys:msginfo_msgmax = 65535
set msgsys:msginfo_msgmnb = 65535
set msgsys:msginfo_msgseg = 8192
set msgsys:msginfo_msgssz = 16
* Default is 512, which handles several thousand connections
*set tcp:tcp_conn_hash_size=262144
* Do not set to 0 in solaris 8 on Production Systems
*set sq_max_size=0
set rlim_fd_max=8192
set rlim_fd_cur=8192
* END of Web / ColdFusion Settings
Excerpt from /etc/rc2.d/S69inet
## Web Server and ColdFusion Settings
# Comment out tcp_slow_start_initial, because default is 4
#ndd -set /dev/tcp tcp_slow_start_initial 2
ndd -set /dev/tcp tcp_xmit_hiwat 32768
ndd -set /dev/tcp tcp_recv_hiwat 32768
ndd -set /dev/tcp tcp_conn_req_max_q 1024
ndd -set /dev/tcp tcp_conn_req_max_q0 4096
ndd -set /dev/tcp tcp_time_wait_interval 60000
ndd -set /dev/tcp tcp_keepalive_interval 900000
# Comment out next 4 to accept default
# - change only if tcp longer than 10 seconds expected
#ndd -set /dev/tcp tcp_ip_abort_interval 60000
#ndd -set /dev/tcp tcp_rexmit_interval_max 10000
#ndd -set /dev/tcp tcp_rexmit_interval_initial 3000
#ndd -set /dev/tcp tcp_rexmit_interval_min 3000
# Left out changing ephemeral (short lived) port
#ndd -set /dev/tcp tcp_smallest_anon_port 1024
# Keep default of 1480576
#ndd -set /dev/tcp tcp_cwnd_max 65535
## End of Web / ColdFusion Settings
Excerpt from magnus.conf
RqThrottle 1
MaxProcs 10
StackSize 131072
## Added for lightly loaded systems
KeepAliveQueryMeanTime 1
KeepAliveQueryMaxSleepTime 0Because the security context is set as a process context, the NSAPI thread locks the process prior to setting the security context. The older NASPI plugin that we are using is not reentrant, it will not work with the mulitthreading model. Under multithreading each thread would have access to the security context of each thread.
-
How is performance of Appache Web Server + Tomcat?
I am wondering how the performance of Appache web server + Tomcat => Java enabled web server is ?
such as handling multiple users, heavy web traffic, JSP-JavaBean performance...in a real industrial setting?
If "Appache web server + Tomcat" is an excellent choice, why companies still spend big bucks on things like WebLogic, JRun, etc?
Thanks in advance for any light thrown on this topic.
--TimThanks for your reply. I think that I did not make myself clear. I meant that if a small company just wants to build a web application for internal/intranet use (which only utilizes JSP/JavaBean and Servlet features). No EJB, no JMS, etc. Will Appache web server + Tomcat suffice, say for scores of users to access this application concurrently?
Thanks again.
--Tim -
Using SSL from EJB to non-WLS web server
I have a need for an EJB that I am writing (for WLS 6.0) to communicate with
another web server via SSL. The other web server requires that I pass a Client
Certificate to authenticate myself. The remote web server is NOT a WebLogic
server. I see no references in the Bea documentation to how to achieve this.
I have tried to create a new URL with "https://...". I call openConnection() on
the URL instance, and my EJB gets back an instance of
weblogic.net.http.HttpsURLConnection. This class doesn't appear to be
documented. Does anybody have any ideas how I can use this class to pass my
Client key and Cert chain?
When I tried to use the URLConnection class returned, it threw an exception when
I tried to open a stream. The stack trace shows lots of classes that lead me to
believe that support exists for this functionality. Here is a snippet from the
stack dump:
java.net.SocketException: Connection aborted by peer: socket write error
at java.net.SocketOutputStream.socketWrite(Native Method)
at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
at
java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:72)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:130)
at weblogic.security.SSL.SSLSocket.sendRecord(SSLSocket.java:964)
at
weblogic.security.SSL.SSLSocket.sendChangeCipherSpec(SSLSocket.java:926)
at weblogic.security.SSL.SSLSocket.clientInit(SSLSocket.java:477)
at weblogic.security.SSL.SSLSocket.initialize(SSLSocket.java:245)
at weblogic.security.SSL.SSLSocket.<init>(SSLSocket.java:194)
at weblogic.net.http.HttpsClient.openServer(HttpsClient.java:45)
at weblogic.net.http.HttpsClient.openServer(HttpsClient.java:156)
at weblogic.net.http.HttpClient.<init>(HttpClient.java:85)
at weblogic.net.http.HttpsClient.<init>(HttpsClient.java:34)
at weblogic.net.http.HttpClient.New(HttpClient.java:119)
at
weblogic.net.http.HttpURLConnection.connect(HttpURLConnection.java:99)
at
weblogic.net.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:146)
The only documentation I have found is under the 5.1 docs, referencing how you
can use the JNDI Environment to establish a connection to a remote WLS JNDI
tree. If URLs are a resource that can be pooled by WLS, I would like to take
advantage of that functionality. Otherwise, I will have to fall back to the
primitives and roll my own SSLSocket classes. I would expect that there is
support buried somewhere in the product, it is just a question of figuring out
how to use it.
Thanks for any and all suggestions!
JoeJoe,
Apparently weblogic.net.http.HttpsURLConnection isn't documented although 6.0SP2 has a new example called examples/security/sslclient that shows how to use it.
Paul
On Fri, 27 Jul 2001 00:47:17 GMT, [email protected] (Joe Rider) wrote:
I have a need for an EJB that I am writing (for WLS 6.0) to communicate with
another web server via SSL. The other web server requires that I pass a Client
Certificate to authenticate myself. The remote web server is NOT a WebLogic
server. I see no references in the Bea documentation to how to achieve this.
I have tried to create a new URL with "https://...". I call openConnection() on
the URL instance, and my EJB gets back an instance of
weblogic.net.http.HttpsURLConnection. This class doesn't appear to be
documented. Does anybody have any ideas how I can use this class to pass my
Client key and Cert chain?
When I tried to use the URLConnection class returned, it threw an exception when
I tried to open a stream. The stack trace shows lots of classes that lead me to
believe that support exists for this functionality. Here is a snippet from the
stack dump:
java.net.SocketException: Connection aborted by peer: socket write error
at java.net.SocketOutputStream.socketWrite(Native Method)
at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
at
java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:72)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:130)
at weblogic.security.SSL.SSLSocket.sendRecord(SSLSocket.java:964)
at
weblogic.security.SSL.SSLSocket.sendChangeCipherSpec(SSLSocket.java:926)
at weblogic.security.SSL.SSLSocket.clientInit(SSLSocket.java:477)
at weblogic.security.SSL.SSLSocket.initialize(SSLSocket.java:245)
at weblogic.security.SSL.SSLSocket.<init>(SSLSocket.java:194)
at weblogic.net.http.HttpsClient.openServer(HttpsClient.java:45)
at weblogic.net.http.HttpsClient.openServer(HttpsClient.java:156)
at weblogic.net.http.HttpClient.<init>(HttpClient.java:85)
at weblogic.net.http.HttpsClient.<init>(HttpsClient.java:34)
at weblogic.net.http.HttpClient.New(HttpClient.java:119)
at
weblogic.net.http.HttpURLConnection.connect(HttpURLConnection.java:99)
at
weblogic.net.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:146)
The only documentation I have found is under the 5.1 docs, referencing how you
can use the JNDI Environment to establish a connection to a remote WLS JNDI
tree. If URLs are a resource that can be pooled by WLS, I would like to take
advantage of that functionality. Otherwise, I will have to fall back to the
primitives and roll my own SSLSocket classes. I would expect that there is
support buried somewhere in the product, it is just a question of figuring out
how to use it.
Thanks for any and all suggestions!
Joe -
Is a web server plug-in required between Apache 2.2 and WLS 10.3.5
I am using Fusion Middleware 11g PS4 (11.1.1.5) at a new client and they currently are using Apache 2.2 for their web clients. The detailed question that I cannot answer is... Why do I need the web server plug-in mod_wl_22.so to be installed? I've read the docs that state how to install and configure and I have done this before without question. But, is this module really needed to send requests to weblogic server?
Does anyone know the detailed answer to this? What is the mod_wl_22.so really doing?
My client is very web savvy and is wondering if the web server can be set up to front-end weblogic server without this.
The environment is a 2 node cluster with SOA suite as the main component. I have a soa_cluster, bam_cluster, wsp-pm_cluster and Admin Server installed on both of these nodes.
Any help is appreciated.
Thanks,I found this link to a .pdf that I believe explains the difference between OHS and Apache and what the web server plug-ins do. See this link:
http://www.oracle.com/technetwork/middleware/ias/ohs11gr1-131852.pdf -
Best Practice for serving static files (gif, css, js) from front web server
I am working on optimization of portal performance by moving static files (gif, css, js) to my front web server (apache) for WLP 10 portal application. I end up with moving whole "framework" folder of the portal WebContent to file system served by apache web server (the one which hosts WLS plugin pointing to my WLP cluster). I use <LocationMatch> directives for that:
Alias /portalapp/framework "/somewhere/servedbyapache/docs/framework"
<Directory "/somewhere/servedbyapache/docs/framework">
<FilesMatch "\.(jsp|jspx|layout|shell|theme|xml)$">
Order allow,deny
Deny from all
</FilesMatch>
</Directory>
<LocationMatch "/partalapp(?!/framework)">
SetHandler weblogic-handler
WLCookieName MYPORTAL
</LocationMatch>
So, now browser gets all static files from apache insted of the app server. However, there are several files from bighorn L&F, which are located in the WLP shared lib: skins/bighorn/ window.css, wsrp.css, menu.css, general.css, colors.css; skins/bighorn/borderless/window.css; skeletons/bighorn/js/ util.js, buttons.js; skeleton/bighorn/css/layout.css
I have to merge these files into the project and physically move them into apache served file system to make mentioned above apache configuration works.
However, this approach makes me exposed bunch of framework resources, which I do not to intend to change and they should not be change (only custom.css is the place to make custom changes to the bighorn skin). Which is obviously not very elegant solution. The other approach would be intend to create more elaborate expression for LocationMatch (I am not sure it's entirely possible giving location of these shared resources). More radical move - stop using bighorn and create totally custom L&F (skin, skeleton) - which is quire a lot of work (plus - bighorn is working just fine for us).
I am wondering what is the "Best Practice Approach" approach recommended by Oracle/BEA - giving the fact that I want to serve all static files from my front end apache server instead fo WLS app server.
Thanks,
Oleg.Oleg,
you might want to have a look at the official WLP performance support pattern (Metalink DocID 761001.1 ) , which contains a section about "Configuring a Fronting Web Server Serving WebLogic Portal 8.1 Static Artifacts ".
It was written for WLP 8.1, but most of the settings / recommendations should also to WLP 10.
--Stefan -
Would like to hear about pros/cons of using a separate Web Server (such as
NES) vs the bundled WLS 5.1 seb server in a Solaris environment, to serve
static content. The site we are building will have a significant amount of
static content.
Some possible issues might be:
PROS for separate web server:
- web server optimized for efficient handling of static content, reduces
load on WLS
- allows for possibility of scaling out the web server on a separate box
from WLS
- web server can be configured/managed in a more granular way?
CONS for separate web server:
- cost of task/context switching when requesting dynamic content from app
server? ( Maybe there is already context switch overhead in a integratedWLS
configuration - who knows?)
- problems with configuring web applications (URLs?) - references from JSPs
to static content can't be relative URLs?
- one-stop solution is easier to manage
I'd like to hear about any experiences with this issue. We need to recommend
a configuration to a client.Either way, to scale WL into a cluster, you need to front-end it with
Apache, IIS, or NES (afaik). But that "front end" doesn't have to be
serving static content ... it could just be there to support the clusterand
you could have a separate trunk handling (and specialized for) static
content.FYI, the notion of having to front end WLS with anything will soon go away.
Currently, we have a requirement that proxies be intelligent and have some
level of knowledge about in memory replication. If the primary's
unavailable, they need to know where to send the session for the secondary.
We are changing the product to remove this requirement.
In addition, we're currently working with hardware vendors (such as alteon)
and software solutions (such as resonate) that will obviate the need for any
Web server proxies or using WebLogic server as the proxy. This will provide
you with in memory replication and all of the features of our clustering
while simplifying things greatly and improving performance.
Thanks,
Michael
Michael Girdley
Product Manager, WebLogic Server & Express
BEA Systems Inc
"Cameron Purdy" <[email protected]> wrote in message
news:[email protected]...
How much static content do you have on your site? Is your site driven by
static content or driven by dynamic content? For example, if most of your
pages, including your home page, are JSPs, but you do have some staticpages
that get linked to (plus the obvious gif/jpg files that are static) thenyou
may want to consider WL as your primary web server and have Apache (etc.)
there just to serve up images and static html. If the bulk of your siteis
static and portions are dynamic, then you might want to have Apache
front-end your site with just specific parts being farmed out to WL.
Either way, to scale WL into a cluster, you need to front-end it with
Apache, IIS, or NES (afaik). But that "front end" doesn't have to be
serving static content ... it could just be there to support the clusterand
you could have a separate trunk handling (and specialized for) static
content.
Cameron Purdy
"Steve Vago" <[email protected]> wrote in message
news:[email protected]...
Would like to hear about pros/cons of using a separate Web Server (such
as
NES) vs the bundled WLS 5.1 seb server in a Solaris environment, toserve
static content. The site we are building will have a significant amountof
static content.
Some possible issues might be:
PROS for separate web server:
- web server optimized for efficient handling of static content, reduces
load on WLS
- allows for possibility of scaling out the web server on a separate box
from WLS
- web server can be configured/managed in a more granular way?
CONS for separate web server:
- cost of task/context switching when requesting dynamic content fromapp
server? ( Maybe there is already context switch overhead in aintegratedWLS
configuration - who knows?)
- problems with configuring web applications (URLs?) - references fromJSPs
to static content can't be relative URLs?
- one-stop solution is easier to manage
I'd like to hear about any experiences with this issue. We need torecommend
a configuration to a client. -
Poor performance of WLS 6.1
We have converted our application from WLS 5.1 to WLS 6.1. There is no real
code changes except the changes required for the deployment model in WLS 6.1
(WAR and EAR).
And we put the WLS 6.1 for the performance testing using the Load Runner and
found that
the WLS 6.1 runs 25 to 30 times slower than the WLS 5.1. It is totally
un-expectable and we are hosed.
The application architecture used for the both weblogic server is the same.
JDBC + EJB + JSP/Servlet. All the EJBs are stateless session beans.
OS: Windows 2000, with JDK 131. WebLogic 6.1 Server with SP 1
Anybody have any idea, how the performance can be matched with the WLS 5.1
Server.
Thanks
/selvan
Captura Software, Inctry using the ibm jvm 1.3, it handles linux threads better than sun jvm.
"Stefan Hrafnkelsson" <[email protected]> wrote in message
news:[email protected]...
We have a problem that seems to be similar. In our profiling the
Application Server BEA Weblogic was taking most of the CPU time and
further research showed that a simple call to an EJB (returned ritght
away) from a web server to an application server took 4ms in CPU time
of the Application Server (this means 250 calls/second for a 1GHz
processor or 4.000.000 clock cycles per call).
We are running WLS 6.1 on RedHat Linux 7.1 and feel we are getting
much lower performance than 18 months ago when we were doing the
performance measurment on 5.1 on Windows. Everything seems to perform
fine except this network call to EJB functions.
Any suggestion?
Regards,
Stefan Hrafnkelsson
[email protected] or [email protected]
Betware
"Tamilselvan Ramasamy" <[email protected]> wrote in message
news:<[email protected]>...
I used the OptmizeIt profile and found that the EJB home interface lookup
from JNDI causing the performance problem.
Over 70% time spent on the JNDI look ups for the home interface.
I knew that the weblogic 6.1 server now serializes all the look up andbind
from the JNDI but i didn't think
that this will be really this bad. I am trying to cache the homeinterfaces
using a Singleton Factory class and it requires
a lot of code changes.
Is there any hidden option in the server to make the JNDI notserailizing
everything?
Thanks
/selvan
Captura Software, Inc
"Bakul Mukherjee" <[email protected]> wrote in message
news:3BF98690.6D8F8E7@trebor_nelloow.moc...
The most likely culprit is that you are using call by value where you
were
previously using call by reference in WLS 5.1. In WLS 6.1, you willonly
receive call by reference if you are calling EJBs within the sameapplication
(normally an EAR file.)
If you're still seeing slow performance, you'll need to do some
analysis.
25-30x slower means that something is very wrong. I would start bydeterming
where you are spending so much time. You could do this by profiling
the
server
or even by inserting some timestamps in your code.
If you can provide some more info, we'd be better able to help you
out.
>>>
-- Rob
Tamilselvan Ramasamy wrote:
We have converted our application from WLS 5.1 to WLS 6.1. There is
no
real
code changes except the changes required for the deployment model in
WLS
6.1
(WAR and EAR).
And we put the WLS 6.1 for the performance testing using the Load
Runner
and
found that
the WLS 6.1 runs 25 to 30 times slower than the WLS 5.1. It is
totally
un-expectable and we are hosed.
The application architecture used for the both weblogic server isthe
same.
JDBC + EJB + JSP/Servlet. All the EJBs are stateless session beans.
OS: Windows 2000, with JDK 131. WebLogic 6.1 Server with SP 1
Anybody have any idea, how the performance can be matched with the
WLS
5.1
Server.
Thanks
/selvan
Captura Software, Inc -
Setting Up a Java Web Server on Linux
Greetings,
After a lot of reading, I've decided to learn Java server-side technologies (I already know Java (desktop)
but with little experience) in order to develop my database driven dynamic website projects.
However, I'm completed lost between the hundreds of acronyms related to Java and the "thousands" of technologies involved.
Google hadn't help me understand what they really are and how they relate with each other.
Even though is easy to find what they stand for and some faqs/descriptions, it hasn't been enought to clear my mind.
I want my webserver application to do, among other things, the following:
Retrieve Data from a database, do generate dynamic html files.
Story Data on the database, from html forms.
Send automaticly emails for multiple users. (newsletter for example)
E-Commerce.
Html graber/parser (I don't know if this is the right word, I mean a program that for example, goes to a URL with an html
table, and stores that information in a database table, as long as the format didn't change).
Real Time Chat feature.
Database connection pooling, caching, and other important optimizations.
I'm not asking for how to develop or configure this features nor what components and programs, must be installed.
At the moment, I only want to know how to set up a Java solution that will support them when they are needed.
*** Linux ***
I want to set up my webserver on a linux distribution.
In that respect, I don't know if I should choose RedHat or Fedora Core.
I've heard that fedora is better for a webserver (having in mind that Red Hat Enterprise AS/ES aren't free).
But I've read in several sun turorials/webpages references to RedHat (on a J2EE context).
So I'm wondering if is better to go for Fedora or RedHat. Are there pros & cons? They equally support Java?
*** Technologies ***
Then in starts the acronyms problem.
What do I need to install, in what order, for what?
Some aconyms and technologies, I have read about but don't fully understand are the following:
Apache
J2EE
J2EE 1.4 SDK
SUN Java System Application Server Platform Edition 8
J2SE 1.4.2 SDK
SUN Java Enterprise System
Tomcat
Struts
Cocoon
JBoss
I already know J2EE is only a specification. What implements that specification? Sun Java System Application Server?
J2SE SDK? or Tomcat?
What is the role of each technology, namely Apache, Tomcat, Sun Application Server?
What is the Sun Java Enterprise System?
How do Struts, Cocoon, JBoss relate to Java?
Which of these technologies are mutually exclusive (analogous)?
*** Doubts ***
Then, I have some doubts that are keeping me from starting to study seriously the important techonologies, because I don't
want to lose lot's of time and effort learning them to after a dillusion start everything again with PHP (the language
which make me think and read a lot before going for Java). To keep this from happening, I would like to know the following:
I want to use Java for developing websites with commercial/profitable use for my company, in some throught e-commerce,
and in other by banners. I want to do everything by the book, with required licenses.
------ Java is Free?
Is Java Completely Free or it might be possible that at a certain point, when I need some component or library,
multi-machine webserver, performance or security for high-traffic I will see "buy now" instead of "download now"?
For what they may "ask for money"? and what are the disavantages if I can't buy?
For example, "Java System Application Server Standard Edition 8.1 2005Q1" and
"Java System Application Server Enterprise Edition 8.1 2005Q1" cost $2.000 and $10.000 respectively. That is money.
(http://www.sun.com/software/products/appsrvr/index.xml). What are the disavantages if stick to the free edition?
Features like (from sun site)
Standard Edition:
Extends the capabilities of the Platform Edition to provide secure, remote, multi-instance, multi-machine management.
It is aimed at high-volume applications and Web services.
Enterprise Edition:
Further extends the capabilities of the Standard Edition to provide continuous availablity for applications and
Web services. It is aimed at business critical, high value applications and Web services.
Suppose I achive lots of traffic and I keep the free platform edition.
I won't be able to have a multi-machine webserver set up correctly?
What are the drawbacks? How big are the performance penalties?
------ Technologies Availability
Finnaly, I have the idea (I don't know if it's accurate) that there are Sun versions and Open-Source Free versions
of doing or supporting the same Java related thing.
Despite the way I choose to set up a Java webserver, I will always have all J2EE techonolies like:
Java API for XML-Based RPC (JAX-RPC), JavaServer Pages, Java Servlets, Enterprise JavaBeans components,
J2EE Connector Architecture, J2EE Management Model, J2EE Deployment API, Java Management Extensions (JMX),
J2EE Authorization Contract for Containers, Java API for XML Registries (JAXR), Java Message Service (JMS),
Java Naming and Directory Interface (JNDI), Java Transaction API (JTA), CORBA, and JDBC data access API.
I really appreciate some help. I could learn the basics of all this "stuff" before asking. But the point why I'm asking
is precisely not starting to learn something I may won't use. Obviously, I will have to make a lot of reading during maybe
months before writing the first line of code of my projects, but being certain that it will fit my needs.
I will be very thankful if you can enlightme in my fedora/redhat, setup, free/cost and technologies avaibility issues.
Thanks Beforehand,
Pedro VazApache is a free Web-server.
Tomcat is a servlet (and JSP) container. It can be stand-alone or can be used together with a Web server (like Apache).
J2EE's scope is much wider than the servlet stuff, but a standalone Tomcat is a good starting point to servlets and JSP.
One of our "real-world" applications is run by a standalone Tomcat using POI and Velocity. I did not regret this architectural decision. -
FLV File does not play when published to my web server
Hi. I have created a short video in VC3 and selected the FLV option to create a web page. When I uploaded the entire file content to my web server (windows 2003 server hosted at Network Solutions) the FLV file will not play. Now... if I do the same with a WMV tile, the video plays.
You can view the file at
http://www.airforcehomeseller.com/videos/va_education/VATutorials/index.htm
We have another video published in WMV format, although the video vs audio sync is out of wack at the moment, at
http://www.airforcehomeseller.com/videos/Energy%20Pricing%20101/index.htm
What am I doing wrong?
Any help would be greatly appreciated.
G-IIHi again
You should probably double-check to ensure the standard.js file was also copied in when the HTML page was imported. It should be there but it never hurts to double check.
You might also perform a double-check to ensure things ended up in the correct folder (if you are organizing your project into folders). It could be that you moved the HTML page into a different folder and orphaned the JavaScript file.
Cheers... Rick
Helpful and Handy Links
Captivate Wish Form/Bug Reporting Form
Adobe Certified Captivate Training
SorcerStone Blog
Captivate eBooks -
Sun Java System Web Server 7.0 available
I am delighted to announce that Sun Java System Web Server 7.0 is now available for download, purchase, deployment, and more.
This release builds on the highly scalable and stable heritage of Web Server. It features an entirely re-designed Administration interface designed around clusters, easy access to frequently performed tasks, simplification of frequently performed tasks., and a fully scriptable command line interface featuring functional parity with the browser-based interface.
In addition to the administration changes this release features:
o Full 64-bit support for Solaris SPARC and Solaris AMD64 platforms
o Regular expression pattern matching for URL re-writing and mass hosting
o If/Then/Else constructs within request processing
o Advanced sed based input and output filters
o Dynamic loading of Certificate Revocation Lists (CRLs) without requiring daemon restart
o Elliptic Curve Cryptography (ECC)
o Built in request mapping for protection against abnormal load patterns and Denial of Service protection
o WebDAV ACL support
o Out-of-box Java support for Servlets 2.4, JSP 2.0, JSF 1.1, JSTL 1.1, JWSDP 2.0 based web services
o Java session failover and recovery within a cluster of peers
o Integrated HTTP reverse proxy User-Agent
o Bundled FastCGI client for use with third party scripting environments such as Perl, PHP, Ruby on Rails, etc
o Enhancement of perfdump, stats-xml, and SNMP as well as more ability to monitor the Java container and the ACL system
o Much more
The software can be downloaded from:
http://www.sun.com/download/products.xml?id=45ad781d
The documentation is available at:
http://docs.sun.com/app/docs/coll/1308.3If 7.0 was released, how come http://www.sun.com/webserver still only talks about 6.1?
-
Reverse Proxy with Sun Web Server 7 update 4
Hi All,
I've just migrating to Sun Java System Web Server 7.0U4 B12/02/2008 from Sun Java System Web Server 7.0-Technology-Preview-3 B09/13/2006. I've have the two web servers running side by side on separate machines. Both have a VS configured as a reverse proxy pointing to the same apache tomcat web server.
The Tech Preview 3 server works fine and has been doing since it was installed. However the Update 4 server doesn't. I can access the tomcat app via the U4 server in a browser, but not with the app on my mobile (sync ML). Snooping the traffic show me that the U4 server is sending a different response that the Tech Preview server. I'm thinking it may have to do with Transfer Encoding: chunked. I've looked around the web to see if I can turn this off in the U4 server, as I seem to recall having to do so at some point in my life, though I can't remember when and with what.
Does anybody have any clues they can throw at me?? Or anybody know what has change in the reverse proxy part of the web server from Tech Preview 3 to U4??
Both VS reverse proxies are congfigured exactly the same.
Thanks,
Stuart.well, technology preview is what the name says .. i am surprised that u decided to stick with a technology preview release all these days.. in any case, there should not have any feature change between technology preview build and U4. but , there has been lot of bug fixes - so, unless we know the exact problem - we can't easily narrow down the change between tp3 build with U4 and find out how it is affecting u.
here is a related article on how to use chunked encoding within web server 7
http://developers.sun.com/webtier/reference/techart/chunked_req.html
now, to help you more appropriately, you need to provide us with errors (probably with log level set to finest within server.xml) and let us know with the error reported by web server when it is unable to send those requests to back end tomcat
you can set log level to finest by running the following command
/sun/webserver7/bin/wadm set-config-prop -user=admin --config=<hostname> log-level=finest
/sun/webserver7/bin/wadm deploy-config --user=admin <hostname>
http://docs.sun.com/app/docs/doc/820-4842/set-config-prop-1?a=view
(once you have identified the problem, you might want to set log level to info as setting to finest will cause your logs to grow humongous and also hurt performance
thanks
sriram
Maybe you are looking for
-
Upgrade problems from 10.2.8 to 10.4
I have recently inherited a iMac G4 flat panel computer running 10.2.8. I'd like to upgrade this to 10.4 (which I have on DVD from another Mac I have that I've recently upgraded to 10.5). Anyway, the problem is that the iMac does not have DVD drive.
-
My Firefox icons are showing and usable from the desktop and from the task bar; however, the Mozilla Firefox does not show in my list of program files. Why doesn't it show?
-
i have problem with my iphone 3G that stopped updating with ios 4.2.1 currently almost every app requires ios 4.3or higher. what do i do with my iphone
-
Oracle 9i Lite : Unable to Syncronization from Offline mode
Hi All, I am using Oracle 9i Lite and Web-to-Go with it. I am getting a syncronization problem i.e. When ever an offline user tries to synchronize with the server an error page is being displayed . But that user is able to log in online mode wit
-
"date format not recognised" in DBMS_SESSION, on page over db_link
Hi, I have an Apex 4.0 page which has a region that gets data constituted from a connection across a database link. The host database is 11.1.0.6 and the remote database is 9.0.1. (Both Standard Edition) I am using EPG. Intermittently, I receive the