No subject


Fri Feb 8 15:06:04 EST 2008


problems with threads, and can still easily bring down
Tomcat even with the thread compile option is set.
Please correct me if I am wrong.

What I did was I synchronized the class that does the
map processing, and now my test app can survive
benchmarking with JMeter. Here are my results as
compared with a simillar PHP CGI program:

4 threads (requests) per second, repeated 25 times

PHP Mapscript 1.8 to 1.9 pages per second
Java Mapscript 2.3 to 2.5 pages per second

I was honestly surprised with the result and it is
encouraging me to work with Java Mapscript even in a
synchronized mode.

mario
yokohama,japan


--- Joseph Miller <miller_joseph at BAH.COM> wrote:

> Umberto,
>
> 1)I don't think I compiled specifically with
> multi-threading because it
> wasn't an option listed in the nmake.opt for
> Microsoft Visual C++  options
> file???  The last I heard multithreading was not
> even on the horizon for
> mapserver and yet I see it in the Unix build options
> file?  What do I need
> to do this?
>
> 2)I tried both options you mentioned, I had the
> problem when passed the
> same mapObj from request to request and stored it in
> the session and when I
> set it to null after every request and instantiated
> it and assigned
> attributes based on other variables stored in the
> requests and sessions?
> I'm assuming the latter is preferred?
>
> Thanks,
> Joe Miller
>
> On Mon, 28 Feb 2005 09:44:21 +0100, Umberto
> Nicoletti
> <unicoletti at PROMETEO.IT> wrote:
>
> >Did you enable threads support?
> >Java, and especially servlets, are definitely
> highly concurrent
> >environment, so you have to enable thread support
> when compiling
> >mapserver and mapscript. One very problematic spot
> with regards to
> >threads is in fact the parser of .map files.
> >
> >Do you attempt to reuse the same mapObj across
> multiple requests or just
> >create one and dispose as soon as you are done
> within a single request?
> >
> >HTH,
> >Umberto
> >
> >
> >On Mon, 2005-02-28 at 00:53 -0500, Miller Joseph
> wrote:
> >> Hi,
> >> I'm having a baffling problem with a nightly
> build of Java Mapscript
> >> from about a month ago that I am running on
> Windows 2000 with Tomcat
> >> 5.5.4.
> >>
> >> The symptom I see is that I can generate the
> default image but after the
> >> fourth or fifth time that I pass a new envelope
> to change the extent of
> >> the image I get the following error:
> >>
> >> The relevant part of the stack trace:
> >> java.lang.UnknownError: Failed to draw layer
> named 'world'.
> >>         at
>
edu.umn.gis.mapscript.mapscriptJNI.mapObj_draw(Native
> Method)
> >>         at
> edu.umn.gis.mapscript.mapObj.draw(mapObj.java:397)
> >>
> >> Occasionally I'll get a flex scanner error or
> tomcat will crash with an
> >> Exception_Access_Violation memmove error similar
> to the one referred to
> >> here:
> >>
>
http://forum.java.sun.com/thread.jspa?forumID=52&messageID=1124599&threa
> >> dID=286832
> >>
> >> All of this happens whether I instatiate new
> instances of the mapObj and
> >> set everything to null or if I use the same
> mapObj throughout and only
> >> after a few passes, suggesting to me that there
> is a memory issue
> >> somewhere.  I can pass on some specific code, but
> all I am really doing
> >> is creating new envelopes to store extents and
> then assigning them to
> >> the mapObj or extracting the corner coordinates
> and setting the extent
> >> with them.
> >>
> >> I've been fighting this for a frustrating week
> now.  Does anyone have
> >> any advice?
> >>
> >> Thanks,
> >> Joe Miller
> >--
> >Umberto Nicoletti
> <Mercury> At that point it
> will
> >+390415701366   unicoletti at prometeo.it
> compile, but segfault, as
> it should..
> >Prometeo S.R.L. The Software Experience
>
> Umberto,
>
> 1)I don't think I compiled specifically with
> multi-threading because it
> wasn't an option listed in the nmake.opt for
> Microsoft Visual C++  options
> file???  The last I heard multithreading was not
> even on the horizon for
> mapserver and yet I see it in the Unix build options
> file?  What do I need
> to do this?
>
> 2)I tried both options you mentioned, I had the
> problem when passed the
> same mapObj from request to request and stored it in
> the session and when I
> set it to null after every request and instantiated
> it and assigned
> attributes based on other variables stored in the
> requests and sessions?
> I'm assuming the latter is preferred?
>
> Thanks,
> Joe Miller
>




__________________________________
Do you Yahoo!?
Yahoo! Sports - Sign up for Fantasy Baseball.
http://baseball.fantasysports.yahoo.com/



More information about the mapserver-users mailing list