Light webserver for simple, low traffic, static content site?

I have a simple site that I would like to host on a machine with minimal resources. What is my best bet?
lighttpd and nginx sell themselves as being lightweight in high traffic environments... But this is not a high traffic environment.
Apache seems like overkill.
thhtpd seems to be what I'm looking for, however the last release was in 2003, and I find that worrisome.
Can anyone offer me any insight?
Last edited by gabe_ (2011-05-19 20:41:39)

Awebb wrote:
gabe_ wrote:lighttpd and nginx sell themselves as being lightweight in high traffic environments... But this is not a high traffic
That's a language propblem. You assume that having a high traffic environment is a dependency for their "lightweigtness". You should understand the sentence as "lightweight, even in high traffic environments".
Not necessarily (though I do see your point).
I know that they are "full featured" httpd's. One of those features is being able to serve dynamic content across thousands of simultaneous connections. I realize I'm splitting hairs here, but I don't need those features. For this reason, I'm highly considering darkhttpd (thanks for the tip, Wittfella).

Similar Messages

  • Use of fonts embedded in photoshop for commerical use? (Static content, like images)

    Hello.
    I am developing a Mobile game for Android, and I can't stop thinking about if i am in the clear when it comes to the use of fonts. I've searched the web, but can't really find a clear answer.
    I am using only font embedded in photoshop/illustrator, and only displaying them in static content, such as Images/logos. So my question is, am I in the clear, or do I need som kind for special license for this?
    FYI I am mostly using the MonoType Impact font. I stumbled over this though, its Monotypes Imaging EULA for fonts ( I think). It says :
    You may embed static graphic images into an electronic document, including a Commercial Product, (for example, a "gif") with a representation of a typeface and typographic design or ornament created with the Font Software as long as such images are not used as a replacement for Font Software, i.e. as long as the representations do not correspond to individual glyphs of the Font Software and may not be individually addressed by the document to render such designs and ornaments.
    Would appreciate any help, thanks!

    you can access them from <bpelx:exec> activity and you can pass these returned document to underlying java class.
    Re: getVariableData in Java Exec

  • How to use OraSession for a high-traffic IIS/ASP site

    Guys,
    I am running into scalability issues with our production web server. The ASP requests queued keeps growing to crash the IIS eventually atleast once a day. We don't have any custom COM components and we believe database is not the bottleneck.
    We are using one OraSession object in the Application scope as follows:
    <OBJECT RUNAT="Server" SCOPE="Application" ID="OraSession" PROGID="OracleInProcServer.XOraSession"></OBJECT>
    Sub Application_OnStart
    OraSession.CreateDatabasePool 1, 120, 600, "TEST", "scott/tiger", 0
    End Sub
    We are calling OraSession.GetDatabaseFromPool(9000) whenever we need a database connection. I believe this object since it runs on single thread is unable to handle too much load.
    What's the best way of using OraSession/OraServer/OraDatabase objects for a high-traffic web site? The documentation doesn't have enough information. One interesting statement was that "Calling openDatabase method and attaching multiple user sessions(OraDatabase) after an OraServer object is created is useful with IIS like n-tier distributed environments" What does this mean?
    I appreciate any help.
    Thanks
    Krishna

    Hi iLac,
    I'm not sure what you meant by reverse engineering the browser's interactions with the site, but anything you can do within a browser you can feasibly do through scripts without resorting to a GUI. I'll mention a few tools that will help you out and briefly describe how you can use them to achieve what you want, although a bit more of a specific question may help. Anywhoo...
    First up I'd recommend Firebug for Firefox. A great tool that will let you visually inspect different elements of a rendered page in your browser to see the source code underneath. It also allows you to edit the page so you can test form input. (For example changing a Post to Get request to see the syntax.
    Next is "Live HTML Headers" which is also an addon for Firefox. Setting it to record and then clicking on a link will log all interaction between your browser and the website (eg. cookies, browser/system info, redirects etc.). You can really see what is going on behind the scenes.
    Finally you are going to want to use cURL which is a command line tool in the Terminal. Here is a like to a tutorial which will cover what you need [[http://curl.haxx.se/docs/httpscripting.html]] Basically cURL can interact with websites and download the source code for you (you will have to spoof cookies, and all other session info which could be a little difficult depending on the site, if you have to log in etc.).
    And that is about it. Using those three resources you can get anything off the web you can get with a browser. You just need to write an applescript to run the right cURL commands and extract the info from the HTML.
    If you have any other questions or need clarification or more help feel free to ask. Perhaps with a bit more detail on what exactly you are trying to achieve. My experience comes from auto updating homemade sports pools.
    Good Luck.

  • Static content in iAS 6.5 (for JavaWebstart)

    Hello,
    I'm using iAS 6.5.
    I want to serve a jar file for JavaWebstart in a J2EE App (including a war file)
    That works, but it tooks a very long time before Webstart is loading this Jar and it is fully reloaded every time i access that App from Webstart.
    When I put this jar file into the iPlanet Webserver it is loaded much faster and will not be reloaded every time i access this jar file with Webstart.
    1. Is it possible to serve static content in iAS that Webstart is not fully reloading every time, instead of only checking the header informations for a newer version?
    2. Can you give me a link to an iPlanet documentation about how to handle static content iAS/iWS !
    3. Will be the iPlanet Webserver Settings (e.g. KeepAlive) ignored, when i run Webcontent from the Applicationserver (../NASApp/...)?
    Kinds
    Regards

    JAX-RPC, JAX-M and other JAX-x are tested with JDK 1.3.x and higher. Since iAS 6.5 uses jdk 1.3.1, I think JAX-RPC, JAX-M can be used in iAS 6.5. -Officially, as far as I know, iAS 6.5 does not provide any support for JAX-pack.
    Sun ONE AS 7 fully supports JAX-pack, and it has a tool, XRPCC, (now wscompile and wsdeploy) which generates stubs, ties and WSDLs for the services. Also the same tool can be used to generate the stubs, client side artifacts, from any WSDL file.
    And also JAX-run time provides SOAP 1.1, UDDI v2 Registry access and WSDL support. Interoparability between JAX-Run time and other SOAP 1.1 implementations is also tested successfully.
    There are several third partly tools available from different vendors (around 10-12), you may wish to search for them in google. And with that you may generate WSDL for your Apache SOAP services.
    If you are planning to have a standalone web services client, then you can directly use JWSDP at the client side to communicate with the Apache SOAP services on the iPlanet Application Server 6.5.
    Please get back for any further assistance.

  • I work in a public library and we have two ipod touch and two ipod nanos we would like to circulate for our patrons. Any advice on how we can do this? Should we allow patrons to set the device up for personal use or download static content?

    I work in a public library and we have two ipod touch and two ipod nanos we would like to circulate for our patrons. Any advice on how we can do this? Should we allow patrons to set the device up for personal use or download static content?

    With the Nanos, you should have no problem lending them loaded with audiobooks from Librivox, etc.
    As for the iPod Touches, I'm not sure the question is whether you should allow patrons to set up the device for personal accounts, but whether you can prevent them from doing so. Prepare to to a factory restore every time one is returned.

  • Traffic Light Color for Empty Requests Disabled

    Hi Gurus!
    I'm having a trouble with a DELTA InfoPackage associated to our 0VENDOR_ATTR DataSource... For some reason the "Traffic Light Color for Empty Requests" option is Disabled (grayed out), and that's causing the failing of its respective ProcessChain (since after Initialization of the data source there are no new data to load)... I was wondering if you may have an idea about what am i doing wrong? Any help would be appreciated.
    Regards!
    Ricardo

    Hi,
    As you have selected the option for the init package, the system is not allowing the same for the Delta as the same will be applicable for Delta as well.
    The other place where you can set is at the Manage of the target or at the monitor (RSMO) level. If once set its fine for that target.
    You dont need to worry.
    Are you facing any issue for the data loads which are with 0 records at present due to the status? Do let us know.
    THanks
    Murali

  • Setting a default content area for simple search

    How to set up a default content area/all content areas for simple search when searching from a page?
    The only way i can set a content area, is to go to advanced search and specify the content area or say all content areas
    When i am searching from a content area, simple search searches the same content area.

    Harish,
    One simple way is create a navigation bar in the content area you are interested in searching, containing just the search element, and expose that navigation bar as a portlet.
    Now you can add this portlet to any page and the search will search only on the content area it belongs to.
    null

  • What can I do for the following situation: I think my insert slot for the headphones does not work; when I put in any cable that should and can go in all I hear is low frequent static sounds.

    What can I do for the following situation: I think my insert slot for the headphones does not work; when I put in any cable that should and can go in all I hear is low frequent static sounds.

    You might try talking to the Apple store manager and see if you don't get more help...you might also contact Apple.com/support and see if they can give you a contact with the Apple Italy offices.
    Sounds like you have two levels of failure, the first shop that did the repair and broke a wire, and the second that has disabled something else and isn't helping.
    Apple officially refurbished equipment is usually good quality.  Surprising this has happened but you need to press on with complaints and try for resolution.

  • How can I get the value for static content of 1 jsp into another jsp

    Hi, I have a jsp which have a header ,now i want this header value in another jsp dynamically.Can u tell me how I can do it?

    What I want to know is that , is it possible to get the value of a static content of one jsp into another jsp,something like getParameter() method that we use to get the value of a field in the jsp to a servlet,or to another jsp,the only difference here is I do not have a field here but a static jsp content .

  • DefaultServlet bug? forwarding to static content under WEB-INF

    I've encountered what seems to be a bug in the DefaultServlet in WebServer 7.0u2, when trying to do a requestDispatch->forward to static content (e.g., a .png file) under WEB-INF. In general, I can forward into content under WEB-INF, and my servlet works fine when forwarding to dynamic content under WEB-INF (e.g., a .jsp file), but when I try to forward to static content, a 404 error is sent. The same servlet also works fine if I put the static content outside of WEB-INF. In summary:
    forwarding to /WEB-INF/foo.png responds with error 404 (even though the content exists)
    forwarding to /WEB-INF/foo.jsp works fine
    forwarding to /other-dir/foo.png works fine
    I'm baffled as to why I can't forward to static content under WEB-INF. I have a very simple web.xml file, and no suffix-based mappings, so the only servlet that should be responding to the forward is the servlet container's DefaultServlet. Is there some bug in DefaultServlet? Am I misunderstanding something?

    pl. upgrade to latest update (web server 7 u5 as of now) and see if your problem is still reproduced.

  • Web archives and static content

    Most (at least all that I have seen) of the documentation
    and discussions surrounding Web Archives seem to assume that
    the web applications static content (images, ..etc) will always
    reside within the WAR.
    If your application contains a large amount of static content,
    and your intendend operating environment involves the
    webserver seperated from the application server, the
    resulting network traffic between the webserver and
    application server could be excessive due to the
    large amount of static content.
    Is there any documentation discussing the placement of
    the static content on the webserver within an
    (web archive based) Web Application
    (specifically, application design considerations)?
    Is this even possible?

    You should be able to put the static content anywhere and just refer to it by it's absolute URL (as opposed to relative URL).

  • Need a webserver for jsp

    Hi, does anyone know how can i put jsp or servlets on my website.
    so i won't have to run j2ee -verbose.
    my site hosting company doesn't support java, do i have to get hosting company that support java?
    do you know a low cost and a good one?
    thanks

    I get dsl from DirectTv and it comes with a static ip
    so you can host your own site instead of paying aSure, this is all well and good for a small site, but the downtime on Telocity, FastAccess, and other such companies is way too high for most high traffic applications. Not to mention the drain that high traffic applications place on your bandwidth. It's nice that Telocity gives you a static IP though, unlike FastAccess who don't even offer it at an extra charge, to my knowledge.
    And what happens if your server goes down on a Friday night while you're out partying? Sometimes it's just worth paying a hosting company $20 a month.. especially if it's a corporate site. If $20 or even $50 a month breaks your company's bank, then maybe you've got other issues :)

  • Sepration of static content to seprate serve

    I am planning to move all my static content to different server since we have 4 different webserver serving the website on different sub-domain name.
    webfarm web1,web2,web3, web4
    Wat i need is all the page which uses static contents should have the complete address from static.yyyyyy.com. I dont want to hard code this in the jsp file, since in future if we planned to change means it will be great difficuilty to change all the 2k files. Can anyone tell me wat is the good design logic for this. In which layer i can perform this?
    i dont know whether to post in jsp forum or servlet. If i did wrongly , sorry..
    Edited by: arvindwill on Sep 28, 2009 2:21 AM

    Define it somewhere at 1 location (properties file? web.xml file? database?), load it during startup (ServletContextListener) and use it everywhere (using EL).

  • How to search for upper/lower case using string using JAVA!!!?

    -I am trying to write a program that will examine each letter in the string and count how many time the upper-case letter 'E' appears, and how many times the lower-case letter 'e' appears.
    -I also have to use a JOptionPane.showMessageDialog() to tell the user how many upper and lower case e's were in the string.
    -This will be repeated until the user types the word "Stop". 
    please help if you can
    what i have so far:
    [code]
    public class Project0 {
    public static void main(String[] args) {
      String[] uppercase = {'E'};
      String[] lowercase = {'e'};
      String isOrIsNot, inputWord;
      while (true) {
       // This line asks the user for input by popping out a single window
       // with text input
       inputWord = JOptionPane.showInputDialog(null, "Please enter a sentence");
       if ( inputWord.equals("stop") )
        System.exit(0);
       // if the inputWord is contained within uppercase or
       // lowercase return true
       if (wordIsThere(inputWord, lowercase))
        isOrIsNot = "Number of lower case e's: ";
       if (wordIsThere(inputword, uppercase))
         isOrIsNot = "number of upper case e's: ";
       // Output to a JOptionPane window whether the word is on the list or not
       JOptionPane.showMessageDialog(null, "The word " + inputWord + " " + isOrIsNot + " on the list.");
    } //main
    public static boolean wordIsThere(String findMe, String[] theList) {
      for (int i=0; i<theList.length; ++i) {
       if (findMe.equals(theList[i])) return true;
      return false;
    } // wordIsThere
    } // class Lab4Program1
    [/code]

    So what is your question? Do you get any errors? If so, post them. What doesn't work?
    And crossposted: how to search for upper/lower case using string using JAVA!!!?

  • How to create desktop application for simple server program using netbeans?

    Hi,can anyone help me on this one??
    I'm am very new to java,and I already trying different example program to create desktop applications
    for simple server program but it's not working.
    This is the main program for the simple server.
    import java.io.*;
    import java.net.*;
    public class Server {
    * @param args the command line arguments
    public static void main(String[] args) {
    try{
    ServerSocket serverSocket = new ServerSocket(4488);
    System.out.println("Server is waiting for an incoming connection on port 4488");
    Socket socket = serverSocket.accept();
    System.out.println(socket.getInetAddress() + "connected");
    PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
    BufferedReader in = new BufferedReader( new InputStreamReader(socket.getInputStream()));
    String inputLine;
    while ((inputLine = in.readLine()) != null){
    out.println(inputLine);
    System.out.println("Connection will be cut");
    out.close();
    in.close();
    socket.close();
    serverSocket.close();
    }catch(IOException e){
    e.printStackTrace();
    // TODO code application logic here
    }

    and this is the Main Processing :
    import java.awt.*;
    import java.awt.event.*;
    import java.util.logging.Level;
    import java.util.logging.Logger;
    import javax.swing.*;
    import java.text.*;
    import java.util.*;
    import java.net.*;
    import java.io.*;
    public class MainProcessing {
    private static final long serialVersionUID = 1L;
    static private boolean isApplet_ = true;
    static private InetAddress argIp_ = null;
    static private int argPort_ = 0;
    public TCPIP TCPIP_ = null;
    private InetAddress ip_ = null;
    private int port_ = 10001;
    static private boolean conectFlag = false;
    private BufferedWriter bw;
    FileOutputStream fos;
    OutputStreamWriter osw;
    public int[] current = new int[400];
    public int[] volt = new int[400];
    public int[] revolution = new int[400];
    public void init() {
    public void start() {
    if (isApplet_) {
    try {
    ip_ = InetAddress.getByName(getCodeBase().getHost());
    } catch (UnknownHostException e) {
    } else {
    ip_ = argIp_;
    if (argPort_ != 0) {
    port_ = argPort_;
    // IP&#12450;&#12489;&#12524;&#12473;&#12364;&#19981;&#26126;&#12394;&#12425;&#20309;&#12418;&#12375;&#12394;&#12356;
    if (ip_ != null) {
    // &#12467;&#12493;&#12463;&#12471;&#12519;&#12531;&#12364;&#25104;&#31435;&#12375;&#12390;&#12356;&#12394;&#12356;&#12394;&#12425;&#12289;&#25509;&#32154;
    if (TCPIP_ == null) {
    TCPIP_ = new TCPIP(ip_, port_);
    if (TCPIP_.getSocket_() == null) {
    System.out.println("&#12511;&#12473;&#65297;");
    // &#12456;&#12521;&#12540;&#12513;&#12483;&#12475;&#12540;&#12472;&#12434;&#34920;&#31034;
    return;
    if (TCPIP_ == null) {
    System.out.println("&#12511;&#12473;&#65298;");
    return;
    System.out.println("&#25104;&#21151;");
    conectFlag = true;
    try {
    TCPIP_.sendF();
    } catch (IOException ex) {
    Logger.getLogger(MainProcessing.class.getName()).log(Level.SEVERE, null, ex);
    System.out.println("" + conectFlag);
    return;
    public void receive() {
    try {
    // Calendar cal1 = Calendar.getInstance(); //(1)&#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12398;&#29983;&#25104;
    // int year = cal1.get(Calendar.YEAR); //(2)&#29694;&#22312;&#12398;&#24180;&#12434;&#21462;&#24471;
    // int month = cal1.get(Calendar.MONTH) + 1; //(3)&#29694;&#22312;&#12398;&#26376;&#12434;&#21462;&#24471;
    // int day = cal1.get(Calendar.DATE); //(4)&#29694;&#22312;&#12398;&#26085;&#12434;&#21462;&#24471;
    // int hour = cal1.get(Calendar.HOUR_OF_DAY); //(5)&#29694;&#22312;&#12398;&#26178;&#12434;&#21462;&#24471;
    // int min = cal1.get(Calendar.MINUTE); //(6)&#29694;&#22312;&#12398;&#20998;&#12434;&#21462;&#24471;
    // int sec = cal1.get(Calendar.SECOND); //(7)&#29694;&#22312;&#12398;&#31186;&#12434;&#21462;&#24471;
    byte[] rev = TCPIP_.receive();
    // System.out.println("&#21463;&#20449;");
    if (rev != null) {
    byte[] Change = new byte[1];
    int j = 0;
    for (int i = 0; i < 1200; i++) {
    Change[0] = rev;
    current[j] = decimalChange(Change);
    i++;
    Change[0] = rev[i];
    volt[j] = decimalChange(Change);
    i++;
    Change[0] = rev[i];
    revolution[j] = decimalChange(Change);
    } catch (NullPointerException e) {
    public int decimalChange(byte[] byteData) {
    int bit0, bit1, bit2, bit3, bit4, bit5, bit6, bit7;
    int bit = 0;
    for (int i = 0; i < 8; i++) {
    int a = (byteData[0] >> i) & 1;
    System.out.print(a);
    System.out.println();
    return 1;
    public void destroy() {
    // &#20999;&#26029;
    if (TCPIP_ != null) {
    TCPIP_.disconnect();
    if (TCPIP_.getSocket_() != null) {
    try {
    System.out.println("\ndisconnect:" + TCPIP_.getSocket_().getInetAddress().getHostAddress() + " " + TCPIP_.getSocket_().getPort());
    } catch (Exception e) {
    TCPIP_ = null;
    public boolean conect(int IP) {
    conectFlag = false;
    String address = "192.168.1." + IP;
    System.out.println(address);
    try {
    argIp_ = InetAddress.getByName(address);
    } catch (UnknownHostException e) {
    // xp.init();
    isApplet_ = false;
    start();
    return (conectFlag);
    public void send(String command, int value, int sendData[][], int i) {
    int j = 0;
    Integer value_ = new Integer(value);
    byte values = value_.byteValue();
    Integer progNum = new Integer(i);
    byte progNums = progNum.byteValue();
    try {
    TCPIP_.send(command, values, progNums);
    for (j = 1; j <= i; j++) {
    Integer time = new Integer(sendData[j][0]);
    byte times = time.byteValue();
    Integer power = new Integer(sendData[j][1]);
    byte powers = power.byteValue();
    TCPIP_.send(times, powers);
    TCPIP_.flush();
    } catch (IOException ex) {
    Logger.getLogger(MainProcessing.class.getName()).log(Level.SEVERE, null, ex);
    public void file(String name) {
    ublic void fileclose(String name, String command, int value, int sendData[][], int i) {
    try {
    fos = new FileOutputStream("" + name + ".csv");
    osw = new OutputStreamWriter(fos, "MS932");
    bw = new BufferedWriter(osw);
    String msg = "" + command + "," + value + "";
    bw.write(msg);
    bw.newLine();
    for (int j = 1; j <= i; j++) {
    msg = "" + j + "," + sendData[i][0] + "," + sendData[i][1];
    bw.write(msg);
    bw.newLine();
    bw.close();
    } catch (IOException ex) {
    Logger.getLogger(MainProcessing.class.getName()).log(Level.SEVERE, null, ex);

Maybe you are looking for