Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2013-10

Powtils: lightwebserver, lightwebserver2 or lightwebserver3?

16 messages · 5 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

silvioprog

Hello,

I'm needing to create a own HTTPS server. Googling, I found Powtils(*), with three servers: lightwebserver, lightwebserver2 or lightwebserver3.

So, which one is recommended to be used in production?

(*) - https://code.google.com/p/powtils

Thank you!

ps. Issue posted in: https://code.google.com/p/powtils/issues/detail?id=1

Silvio Clécio My public projects - github.com/silvioprog
Michael Van Canneyt
to silvioprog
silvioprog wrote 5 lines
Hello, I'm needing to create a own HTTPS server. Googling, I found Powtils(*), with three servers: lightwebserver, lightwebserver2 or lightwebserver3. So, which one is recommended to be used in production?

None, IMHO.

After I looked at their code, I wrote fphttpserver.

Michael.

Graeme Geldenhuys
silvioprog wrote
So, which one is recommended to be used in production?

Having recently (and currently still) doing extensive work with embedded HTTP servers, I tested many (Powtils, Indy, tiWebServer, FPC, nYume etc). I must agree with Michael, fphttpserver is a good choice. There is a bit of a learning curve [compared to some others], but nothing major. Overall, I'm very happy with the final choice on fphttpserver.

Regards,
Graeme

silvioprog
to Michael Van Canneyt: None, IMHO. After I looked at their code, I wrote fphttpserver. Michael.

2013/10/28 Michael Van Canneyt

Show quoted text 15 lines
On Mon, 28 Oct 2013, silvioprog wrote: > Hello, > I'm needing to create a own HTTPS server. Googling, I found Powtils(*), > with three servers: lightwebserver, lightwebserver2 or > lightwebserver3. > > So, which one is recommended to be used in production? > None, IMHO. After I looked at their code, I wrote fphttpserver. Michael.

Very nice. I'll test lightwebserver.

Thank you Michael! :)

Silvio Clécio My public projects - github.com/silvioprog
silvioprog
to Graeme Geldenhuys: Having recently (and currently still) doing extensive work with embedded HTTP servers, I…

2013/10/28 Graeme Geldenhuys

Show quoted text 14 lines
On Monday 28/10/2013 at 15:03, silvioprog wrote: So, which one is recommended to be used in production? Having recently (and currently still) doing extensive work with embedded HTTP servers, I tested many (Powtils, Indy, tiWebServer, FPC, nYume etc). I must agree with Michael, fphttpserver is a good choice. There is a bit of a learning curve [compared to some others], but nothing major. Overall, I'm very happy with the final choice on fphttpserver. Regards, Graeme

Me too. I'm using fphttpserver in several other projects, and I'm very happy.

My new project needs of SSL securit, however, I'm still considering using HTTP with another encryption instead of SSL.

Silvio Clécio My public projects - github.com/silvioprog
Michael Van Canneyt
to silvioprog
silvioprog wrote 16 lines
2013/10/28 Graeme Geldenhuys   On Monday 28/10/2013 at 15:03, silvioprog wrote: So, which one is recommended to be used in production? Having recently (and currently still) doing extensive work with embedded HTTP servers, I tested many (Powtils, Indy, tiWebServer, FPC, nYume etc). I must agree with Michael, fphttpserver is a good choice. There is a bit of a learning curve [compared to some others], but nothing major. Overall, I'm very happy with the final choice on fphttpserver. Regards,   Graeme Me too. I'm using fphttpserver in several other projects, and I'm very happy. My new project needs of SSL securit, however, I'm still considering using HTTP with another encryption instead of SSL.

https protocol support is on my TODO list.
Should hopefully be implemented before christmas :)

Michael.

silvioprog
to Michael Van Canneyt

2013/10/29 Michael Van Canneyt

Show quoted text 28 lines
On Tue, 29 Oct 2013, silvioprog wrote: > 2013/10/28 Graeme Geldenhuys > On Monday 28/10/2013 at 15:03, silvioprog wrote: > So, which one is recommended to be used in production? > > Having recently (and currently still) doing extensive work with embedded > HTTP servers, I tested many (Powtils, Indy, > tiWebServer, FPC, nYume etc). I must agree with Michael, fphttpserver is > a good choice. There is a bit of a learning > curve [compared to some others], but nothing major. Overall, I'm very > happy with the final choice on fphttpserver. > > Regards, > Graeme > > > Me too. I'm using fphttpserver in several other projects, and I'm very > happy. > > My new project needs of SSL securit, however, I'm still considering using > HTTP with another encryption instead of SSL. > https protocol support is on my TODO list. Should hopefully be implemented before christmas :) Michael.

Yyyeeesss, this is an excellent news Michael! :)

I'll use this future feature in Brook via broker, then I'll not need to change the code in my projects.

Silvio Clécio My public projects - github.com/silvioprog
John Lee
to Graeme Geldenhuys: Having recently (and currently still) doing extensive work with embedded HTTP servers, I…

Is this assessment valid for win or linux or both? J

Graeme Geldenhuys wrote 22 lines
On Monday 28/10/2013 at 15:03, silvioprog wrote: So, which one is recommended to be used in production? Having recently (and currently still) doing extensive work with embedded HTTP servers, I tested many (Powtils, Indy, tiWebServer, FPC, nYume etc). I must agree with Michael, fphttpserver is a good choice. There is a bit of a learning curve [compared to some others], but nothing major. Overall, I'm very happy with the final choice on fphttpserver. Regards, Graeme _______________________________________________ fpc-pascal maillist - http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Michael Van Canneyt
to John Lee
John Lee wrote
Is this assessment valid for win or linux or both? J

Both.

To my knowledge, Graeme works on both platforms equally.

I myself am biased towards Linux, but I do have knowledge of people using it extensively on Windows.

Michael.

Graeme Geldenhuys
John Lee wrote
Is this assessment valid for win or linux or both? J

I use both equally, and for the 32-bit and 64-bit platforms.

Regards,
Graeme

silvioprog
to Graeme Geldenhuys

2013/10/30 Graeme Geldenhuys

Show quoted text 10 lines
On Tuesday 29/10/2013 at 18:19, John Lee wrote: > Is this assessment valid for win or linux or both? J > I use both equally, and for the 32-bit and 64-bit platforms. Regards, Graeme

+1.

Silvio Clécio My public projects - github.com/silvioprog
Juha Manninen
to Graeme Geldenhuys: Having recently (and currently still) doing extensive work with embedded HTTP servers, I…
Graeme Geldenhuys wrote 5 lines
Having recently (and currently still) doing extensive work with embedded HTTP servers, I tested many (Powtils, Indy, tiWebServer, FPC, nYume etc). I must agree with Michael, fphttpserver is a good choice. There is a bit of a learning curve [compared to some others], but nothing major. Overall, I'm very happy with the final choice on fphttpserver.

Out of curiosity, how is its performance compared to Indy based web server. My current employer has a highly optimized data system with custom web server and custom DB. No SQL sentences and no SQL DBs obviously. The load it can handle is quite impressive.
It manages information for schools: personnel, students, courses, exams, timetables, messaging etc.

I understood Graeme's system is also for schools but handles the actual learning material which makes it different. Yet I believe it also has high performance requirements and must handle heavy load.

My employer (StarSoft, Finland) system is compiled with both Delphi and FPC, on Windows and Linux.
Porting the code for Unicode so it still works with both Delphi and FPC is a challenge. Uhhh!
I will not tell more or I will reveal company secrets.

Regards,
Juha

Graeme Geldenhuys

Hi Juha,

Juha Manninen wrote
Out of curiosity, how is its performance compared to Indy based web server.

The Embedded Web Server is only used for a "single user" product, which learners can buy on a DVD and the load on
that web server is actually very low.

Our "full system" is installed in learning centres (Schools and Master Maths/Science centres) with anything from 10-60+ concurrent users. For that we use Apache Web Server.

Both products actually use the exact same CGI executables - one product simply talks to an embedded web server application and accesses an Embedded Firebird Database, and the other product talks to Apache and a full scale Firebird Database Server. The CGI client apps are implemented with Powtils because we simply couldn't get fcl-web based CGI apps to work in our environment (where our Adobe Flash content needs to load external resources, and that always failed with fcl-web for some still unknown reason). Our business objects, data access components and data persistence are all handled by the tiOPF framework. We only use the Free Pascal compiler (no Delphi). Desktop GUI apps are based on fpGUI Toolkit.
Regards,
Graeme

Michael Van Canneyt
to Juha Manninen: On Mon, Oct 28, 2013 at 3:22 PM, Graeme Geldenhuys Out of curiosity, how is its…
Juha Manninen wrote 9 lines
On Mon, Oct 28, 2013 at 3:22 PM, Graeme Geldenhuys wrote: > Having recently (and currently still) doing extensive work with embedded > HTTP servers, I tested many (Powtils, Indy, tiWebServer, FPC, nYume etc). I > must agree with Michael, fphttpserver is a good choice. There is a bit of a > learning curve [compared to some others], but nothing major. Overall, I'm > very happy with the final choice on fphttpserver. Out of curiosity, how is its performance compared to Indy based web server.

fphttpserver was not built for speed.
I would not dare to make this comparison.

Show quoted text 5 lines
My current employer has a highly optimized data system with custom web server and custom DB. No SQL sentences and no SQL DBs obviously. The load it can handle is quite impressive. It manages information for schools: personnel, students, courses, exams, timetables, messaging etc.

That is the exact description of my previous job :)

Michael.

silvioprog
to Michael Van Canneyt

2013/11/1 Michael Van Canneyt

Show quoted text 20 lines
On Thu, 31 Oct 2013, Juha Manninen wrote: On Mon, Oct 28, 2013 at 3:22 PM, Graeme Geldenhuys > wrote: > >> Having recently (and currently still) doing extensive work with embedded >> HTTP servers, I tested many (Powtils, Indy, tiWebServer, FPC, nYume >> etc). I >> must agree with Michael, fphttpserver is a good choice. There is a bit >> of a >> learning curve [compared to some others], but nothing major. Overall, I'm >> very happy with the final choice on fphttpserver. >> > > Out of curiosity, how is its performance compared to Indy based web > server. > fphttpserver was not built for speed. I would not dare to make this comparison.

[...]

Once I did a test and fphttpserver responded to 2000 requests per second. ;)

Silvio Clécio My public projects - github.com/silvioprog
Juha Manninen
to silvioprog
silvioprog wrote
Once I did a test and fphttpserver responded to 2000 requests per second. ;)

The speed depends on page contents, too, but anyway that sounds very fast.

Juha