[ANN] AIDA/Web application server has a web site: www.aidaweb.si !

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

[ANN] AIDA/Web application server has a web site: www.aidaweb.si !

Janko Mivšek
Dear Smalltalkers,

Let me announce that AIDA/Web Smalltalk web application server now has
its own web site at http://www.aidaweb.si . There you can find more
information about AIDA/Web like tutorial, screenshots, benchmarks,
download information and other.

This is a wiki-like site, running on AIDA/Web of course and it can
be edited as any other wiki. But public access is closed because of
spammers. Anyone interested in providing content please e-mail me to get
an account.

Let me introduce it a bit more: AIDA/Web is a web server and framework
for complex web applications with integrated Ajax support, rich
collection of web components to build web pages programatically,
MVC-like separation of presentation from domain, nice looking and
bookmarkable url links, with integrated session and security management
and many more.

AIDA/Web is based on Smalltalk web server Swazoo and consists a
framework for building complex web applications of many sorts. In that
respect it is similar to Seaside. It has everything you need for a real
web app, together with Ajax.

It is also a mature one, running web apps in production since 1996. It
is used in many intranet business apps from Gas billing system for all
gas in Slovenia to logistics management system called e-logis and
recently a CMS like system for Quality and Business process management.

Best regards
Janko

Reply | Threaded
Open this post in threaded view
|

how do i unsubscribe ???

bob-108
will someone please let me know.

thanks for your help

Bob.


 
Reply | Threaded
Open this post in threaded view
|

Re: how do i unsubscribe ???

Reinout Heeck
It would help if you read the responses to messages you post.


Once again:

Send e-mail to [hidden email] with the subject "unsubscribe".

R
-



On Jan 18, 2007, at 2:12 PM, bob wrote:

> will someone please let me know.
>
> thanks for your help
>
> Bob.
>
>
>

Reply | Threaded
Open this post in threaded view
|

AW: how do i unsubscribe ???

Nowak, Helge
In reply to this post by bob-108
Dear Bob,
 
"To subscribe or unsubscribe, send a message to: [hidden email] with the SUBJECT of "subscribe" or "unsubscribe"."
 
Cheers
Helge
 
-----Ursprüngliche Nachricht-----
Von: bob [mailto:[hidden email]]
Gesendet: Donnerstag, 18. Januar 2007 14:12
An: [hidden email]
Betreff: how do i unsubscribe ???

will someone please let me know.

thanks for your help

Bob.


 
Reply | Threaded
Open this post in threaded view
|

Memory Emergency handler?

Carl Gundel
In reply to this post by Janko Mivšek
In certain situations my web application can have runaway processes that
consume memory in an open ended way.  These are not bugs in the system so
much as the user asking the system to do something very ambitious.  Is there
a way when a memory emergency occurs to simply have my own handler for the
condition?  Then I can have some special logging and notification and then
automatically kill the process that was active and continue.

-Carl Gundel, author of Liberty BASIC
http://www.libertybasic.com



Reply | Threaded
Open this post in threaded view
|

Re: Memory Emergency handler?

Alan Knight-2
You can create your own subclass of memory policy and install it. When memory becomes critically low, that policy will be sent #emergencyLowSpaceAction. Other messages are sent at various points for other memory conditions/actions. For example, ServerMemoryPolicy, in Wave-Server, changes this processing. And in fact, if you're using ServerMemoryPolicy, it will trigger an event on ObjectMemory, so it's easy to install a user action.

However, note that the process that's causing the problem may not be easy to determine. It's likely that when such an emergency triggers, the active process is one involved in running the garbage collector.

At 09:13 AM 1/18/2007, Carl Gundel wrote:
In certain situations my web application can have runaway processes that consume memory in an open ended way.  These are not bugs in the system so much as the user asking the system to do something very ambitious.  Is there a way when a memory emergency occurs to simply have my own handler for the condition?  Then I can have some special logging and notification and then automatically kill the process that was active and continue.

-Carl Gundel, author of Liberty BASIC
http://www.libertybasic.com



--
Alan Knight [|], Cincom Smalltalk Development

"The Static Typing Philosophy: Make it fast. Make it right. Make it run." - Niall Ross
Reply | Threaded
Open this post in threaded view
|

Re: Memory Emergency handler?

Boris Popov, DeepCove Labs (SNN)
In reply to this post by Carl Gundel
Re: Memory Emergency handler?

The other question to ask of course is why does the system allow users to do things that may bring it down? Ambitious can usually be presented and/or executed in chunks, ala search engines etc. What specifically are you referring to?

Cheers!

-Boris
(Sent from a BlackBerry)

----- Original Message -----
From: Alan Knight <[hidden email]>
To: Carl Gundel <[hidden email]>; 'VWNC' <[hidden email]>
Sent: Thu Jan 18 06:54:34 2007
Subject: Re: Memory Emergency handler?

You can create your own subclass of memory policy and install it. When memory becomes critically low, that policy will be sent #emergencyLowSpaceAction. Other messages are sent at various points for other memory conditions/actions. For example, ServerMemoryPolicy, in Wave-Server, changes this processing. And in fact, if you're using ServerMemoryPolicy, it will trigger an event on ObjectMemory, so it's easy to install a user action.

However, note that the process that's causing the problem may not be easy to determine. It's likely that when such an emergency triggers, the active process is one involved in running the garbage collector.

At 09:13 AM 1/18/2007, Carl Gundel wrote:


        In certain situations my web application can have runaway processes that consume memory in an open ended way.  These are not bugs in the system so much as the user asking the system to do something very ambitious.  Is there a way when a memory emergency occurs to simply have my own handler for the condition?  Then I can have some special logging and notification and then automatically kill the process that was active and continue.
       
        -Carl Gundel, author of Liberty BASIC
        http://www.libertybasic.com <http://www.libertybasic.com/>
       
       
       


--
Alan Knight [|], Cincom Smalltalk Development
[hidden email]
[hidden email]
http://www.cincom.com/smalltalk <http://www.cincom.com/smalltalk>

"The Static Typing Philosophy: Make it fast. Make it right. Make it run." - Niall Ross

Reply | Threaded
Open this post in threaded view
|

Re: Memory Emergency handler?

Carl Gundel
It's running a scripting environment (a version of BASIC) on top of Seaside
so it's pretty open ended.  I do have throttles on a bunch of things, but
when the image runs low on memory I don't want it to crash.  On the other
hand I suppose if I have a memory emergency I could just kill the image and
restart it, but that's not preferred.

-Carl

...... Original Message .......
On Thu, 18 Jan 2007 07:14:19 -0800 "Boris Popov" <[hidden email]>
wrote:
>The other question to ask of course is why does the system allow users to
do things that may bring it down? Ambitious can usually be presented and/or
executed in chunks, ala search engines etc. What specifically are you
referring to?

Reply | Threaded
Open this post in threaded view
|

Re: Memory Emergency handler?

Alan Knight-2
One option is also to regulate them based on time. So you could say that a script that takes longer than X time will get killed. Or you could say that if the image runs low on memory, you'll kill running processes, the ones that have been running the longest, first. After each one, do a GC, and once memory gets back below a certain threshold, go back to normal operation. Or you could instrument memory allocation, but that starts being complicated. An alternative is to do some of the kinds of things Avi talks about with Dabble. Run multiple images, and have only a few tasks per image. Put stricter thresholds on memory consumption for the image, and if you need to kill a particular image, it's not so big a deal.

At 10:42 AM 1/18/2007, Carl Gundel wrote:
It's running a scripting environment (a version of BASIC) on top of Seaside
so it's pretty open ended.  I do have throttles on a bunch of things, but
when the image runs low on memory I don't want it to crash.  On the other
hand I suppose if I have a memory emergency I could just kill the image and
restart it, but that's not preferred.

-Carl

...... Original Message .......
On Thu, 18 Jan 2007 07:14:19 -0800 "Boris Popov" <[hidden email]>
wrote:
>The other question to ask of course is why does the system allow users to
do things that may bring it down? Ambitious can usually be presented and/or
executed in chunks, ala search engines etc. What specifically are you
referring to?

--
Alan Knight [|], Cincom Smalltalk Development

"The Static Typing Philosophy: Make it fast. Make it right. Make it run." - Niall Ross
Reply | Threaded
Open this post in threaded view
|

Re: Memory Emergency handler?

Carl Gundel
...... Original Message .......
On Thu, 18 Jan 2007 10:50:33 -0500 Alan Knight <[hidden email]> wrote:
>One option is also to regulate them based on time. So you could say that a
script that takes longer than X time will get killed.

Of course we're already doing that.  The other stuff we'll have to
consider.  :-)

-Carl

Reply | Threaded
Open this post in threaded view
|

Re: Memory Emergency handler?

Charles A. Monteiro-2
In reply to this post by Carl Gundel
Carl:

in your case I'm guessing that the running out of memory conditions would  
occur when your users are testing their code i.e. their scripts and not  
per se when they are "compiling" i.e. using your IDE to code per se, point  
being I think your users as you allude will be able to put the enviroment  
in low memory conditions , your low memory threshold should then be setup  
so that there is enough room to generate an "hey do you want to save" page  
i.e. in case the Liberty Basic project is in a dirty state. A specialized  
memory policy, if I recall,  should be able to take priority to do  
whatever you need to do but since it is very "open ended" I think that the  
final step will have to be to kill the image. I also think that its a bit  
trickier in a Seaside context, that just my gut speaking since I have not  
played much with Seaside. Thinking out loud I wonder if the memory  
hungrier Seaside continuations exacerbate things.

BTW, Seaside is an interesting solution to the Pollock problem :)

-Charles



On Thu, 18 Jan 2007 10:42:30 -0500, Carl Gundel <[hidden email]>  
wrote:

> It's running a scripting environment (a version of BASIC) on top of  
> Seaside
> so it's pretty open ended.  I do have throttles on a bunch of things, but
> when the image runs low on memory I don't want it to crash.  On the other
> hand I suppose if I have a memory emergency I could just kill the image  
> and
> restart it, but that's not preferred.
>
> -Carl
>
> ...... Original Message .......
> On Thu, 18 Jan 2007 07:14:19 -0800 "Boris Popov" <[hidden email]>
> wrote:
>> The other question to ask of course is why does the system allow users  
>> to
> do things that may bring it down? Ambitious can usually be presented  
> and/or
> executed in chunks, ala search engines etc. What specifically are you
> referring to?



--
Charles A. Monteiro
http://wiki.nycsmalltalk.org
http://www.monteirosfusion.com
http://monteirofusion.blogspot.com

Reply | Threaded
Open this post in threaded view
|

Re: Memory Emergency handler?

Dave Stevenson-2
In reply to this post by Carl Gundel
Perhaps you could set some kind of "soft" limit that is much lower than
normal. When reached, processing of new requests would be suspended
until older requests have relinquished sufficient memory to drop back
below the soft limit. Then processing of the queued up requests could
resume in a FIFO manner. Maybe this would avoid many of the
"emergencies" you now encounter.

Dave

Carl Gundel wrote:

> ...... Original Message .......
> On Thu, 18 Jan 2007 10:50:33 -0500 Alan Knight <[hidden email]> wrote:
>> One option is also to regulate them based on time. So you could say that a
> script that takes longer than X time will get killed.
>
> Of course we're already doing that.  The other stuff we'll have to
> consider.  :-)
>
> -Carl
>
>

Reply | Threaded
Open this post in threaded view
|

Re[2]: Memory Emergency handler?

Michael Lucas-Smith
In reply to this post by Carl Gundel
There's also StackOverflow in public store that will catch when their
stack gets too deep - that may be another way to handle them writing
dodgy wrong code ;)

> ...... Original Message .......
> On Thu, 18 Jan 2007 10:50:33 -0500 Alan Knight <[hidden email]> wrote:
>>One option is also to regulate them based on time. So you could say that a
> script that takes longer than X time will get killed.

> Of course we're already doing that.  The other stuff we'll have to
> consider.  :-)

> -Carl