Re: library-ization
On Sun, Oct 13, 2002 at 09:21:23AM -0700, David N. Welton wrote: And I would like an HTTP tester library. I think that if done in this way, it would be versatile enough to replace ab, and it would also give people the freedom to experiment with other front ends. Like someting in Tk, gtk, or whatever... Ah, but that is precisely why we use XML input to control the behaviour of flood, so that someone can come along and write whatever fancy GUI app they wish and couple it only to our XMl schema. There is another reason why we chose XML that gives us greater flexibility than a library interface could ever give -- platform transparency. Since flood processes need not all run on the same machine, it is not a requirement that all machines where flood are running be of the same operating system or architecture. This also means that the GUI need not be on the same machine where the actual flood process is invoked. Try doing that with a library. One thing that might be useful would be if something like tcl were embedded in flood. In that case it might make sense for flood to export its high-level functions for use in an embedded scripting language. This would give us much greater power over test cases than would be possible in XML (it would be possible, but not trivially so.) Just some food for thought. -aaron
Re: library-ization
Aaron Bannert [EMAIL PROTECTED] writes: On Sun, Oct 13, 2002 at 09:21:23AM -0700, David N. Welton wrote: And I would like an HTTP tester library. I think that if done in this way, it would be versatile enough to replace ab, and it would also give people the freedom to experiment with other front ends. Like someting in Tk, gtk, or whatever... Ah, but that is precisely why we use XML input to control the behaviour of flood, so that someone can come along and write whatever fancy GUI app they wish and couple it only to our XMl schema. There is another reason why we chose XML that gives us greater flexibility than a library interface could ever give -- platform transparency. Since flood processes need not all run on the same machine, it is not a requirement that all machines where flood are running be of the same operating system or architecture. This also means that the GUI need not be on the same machine where the actual flood process is invoked. Try doing that with a library. It would be no problem if it were at the right level. One thing that might be useful would be if something like tcl were embedded in flood. And that's where you need an API. Maybe the right approach is to not have Flood be a library, but to have an API that lets you control a lot of it, ala Apache. I think I prefer the library approach personally, because it would let one create different front ends, which would let flood be *the* apache benchmark tool. -- David N. Welton Consulting: http://www.dedasys.com/ Personal: http://www.dedasys.com/davidw/ Free Software: http://www.dedasys.com/freesoftware/ Apache Tcl: http://tcl.apache.org/
Re: library-ization
On Sun, Oct 13, 2002 at 09:21:23AM -0700, David N. Welton wrote: [...] And I would like an HTTP tester library. I think that if done in this way, it would be versatile enough to replace ab, and it would also give people the freedom to experiment with other front ends. Like someting in Tk, gtk, or whatever... I was also thinking about HTTP test library (on top of a HTTP client library, like apr-serf) long before I joined this project. However, such a library would probably be just like an application (reading config files and so). If you decide to put only essential stuff in such lib, then apps would need to reimplement many things on their own. That little command tool we develop here is very suited for GUI integration. We don't have command line options/switches, there's no i18n (which is a pain for GUI wrappers) and so on. You just feed flood with XML data (snip from my personal TODO list: write flood DTD), and receive results on stdout (snip from my personal TODO list: make flood output XML'ized). I must say, that i like this approach much more, than separate library. OTOH you might be righ. Please post an simplified, pseudocode API of such HTTP test library. We can talk about it a bit more to see if such thing makes sense. regards, -- Jacek Prucia 7bulls.com S.A.
Re: library-ization
Jacek Prucia [EMAIL PROTECTED] writes: Is it a goal of the flood project to make a library out of it? In other words, expose an API that other programs could pass data into and out of, and link to? Or will XML be the only way to do this? It will probably be XML only. If you want other software on top of flood, you'll have to wrap it around flood binary (with pipes or so). I started doing this with 'ab', and was directed to flood as a more modern effort with more work going into it. It looks pretty good so far! Yeah, but we still have a lot of work to do. Voulnteers and patches welcome :) Well, I'm primarily interested in seeing flood as a versatile a tool as possible... which for me means a library that I can use with other things, and also a simple command line tool ala ab. I think this would be possible if flood were a library with a few different executable front ends - ab, flood, gtkflood, etc... I guess I'll keep quite though, because I doubt I'll have the time to do this at work. Just out of curiosity, will flood be supplanting 'ab' at some point? This is probably best for Aaron or Justin to answer, but IMHO no. ApacheBench is a very simple tool. You can hit just one url, no config file, etc. It's just fine when it comes to simple testing. Flood can hit many url's, has structured config file, and besides typical stress tests, it can be used also for 'web application regression tests' and 'web capacity planning'. Well... sort of... most of the features aren't implemented yet, but we're moving forward ;)) Hrm... I see. -- David N. Welton Consulting: http://www.dedasys.com/ Personal: http://www.dedasys.com/davidw/ Free Software: http://www.dedasys.com/freesoftware/ Apache Tcl: http://tcl.apache.org/
Re: library-ization
On Tue, Oct 08, 2002 at 06:15:43PM -0700, David N. Welton wrote: Well, I'm primarily interested in seeing flood as a versatile a tool as possible... which for me means a library that I can use with other things, and also a simple command line tool ala ab. I think this would be possible if flood were a library with a few different executable front ends - ab, flood, gtkflood, etc... The HTTP client library is intended to be serf, not flood. Ideally, flood would be rewritten to use serf. Flood's main purpose is to be a HTTP tester not a HTTP client library. See the apr-serf CVS repository and the serf-dev@apr.apache.org mailing lists. -- justin
Re: library-ization
wiadomosc od David N. Welton, z dnia Wed, Oct 02, 2002 at 05:48:10PM -0700 [...] Is it a goal of the flood project to make a library out of it? In other words, expose an API that other programs could pass data into and out of, and link to? Or will XML be the only way to do this? It will probably be XML only. If you want other software on top of flood, you'll have to wrap it around flood binary (with pipes or so). I started doing this with 'ab', and was directed to flood as a more modern effort with more work going into it. It looks pretty good so far! Yeah, but we still have a lot of work to do. Voulnteers and patches welcome :) Just out of curiosity, will flood be supplanting 'ab' at some point? This is probably best for Aaron or Justin to answer, but IMHO no. ApacheBench is a very simple tool. You can hit just one url, no config file, etc. It's just fine when it comes to simple testing. Flood can hit many url's, has structured config file, and besides typical stress tests, it can be used also for 'web application regression tests' and 'web capacity planning'. Well... sort of... most of the features aren't implemented yet, but we're moving forward ;)) regards, -- Jacek Prucia 7bulls.com S.A.
library-ization
Just a few quick questions: Is it a goal of the flood project to make a library out of it? In other words, expose an API that other programs could pass data into and out of, and link to? Or will XML be the only way to do this? I started doing this with 'ab', and was directed to flood as a more modern effort with more work going into it. It looks pretty good so far! Just out of curiosity, will flood be supplanting 'ab' at some point? Thankyou, -- David N. Welton Consulting: http://www.dedasys.com/ Personal: http://www.dedasys.com/davidw/ Free Software: http://www.dedasys.com/freesoftware/ Apache Tcl: http://tcl.apache.org/