|
From: | Noam Weissman |
Subject: | Re: [lwip-users] Simultaneous GET requests to HTTP Server |
Date: | Fri, 16 Jun 2017 11:18:01 +0000 |
Hi Antonio,
RAW mode API is meant to be used in systems without an OS or if you use an OS in one task, dedicated to TCP stack.
Sure one connection is handled at a time because you have one micro that is able to run only one command at a time.
Using threads actually worsen the situation because you have the OS scheduler that also needs some CPU time.
If your RAW API WEB server runs slow you have some configuration or code issue. I do not think it should run much slower than a threaded server, maybe even faster.
I think that the only impact on performance comes from memory usage. If you run a threaded server and do memory allocations (large buffers) you can definitely write code that is much more deficient. The efficiency will come from simpler parsing of data, less memory copying etc...
The LwIP RAW mode server that is spread around is able to run on systems with very
limited memory. It runs well but it is a bit slow.
The speed issues comes from the way it handles data (files) and the small buffers, not because it uses call-backs instead of threads.
This is my observation 😊
BR, Noam.
From: lwip-users <lwip-users-bounces+address@hidden> on behalf of Antonio Gonga <address@hidden>
Sent: Friday, June 16, 2017 1:54 PM To: Mailing list for lwIP users Subject: Re: [lwip-users] Simultaneous GET requests to HTTP Server Hi Simeon,
I am not sure but I believe, the server does not send anything because it still processing the first request when the others arrive. Q: Did you try to use threads in your server ? For example I had developed one multi-thread HTTP server using LWIP-1.4 and I was able to have many HTTP requests and high rate pings (ping -i 0.2 a.b.c.d), and the server was capable of handling my requests.. Essentially, for each accept return, you create a new thread to handle that request. --- Best Regards, António Gonga, KTH Sweden ------------------------- ________________________________________ From: lwip-users <lwip-users-bounces+address@hidden> on behalf of Simeon Trifonov <address@hidden> Sent: Friday, June 16, 2017 11:08 To: address@hidden Subject: [lwip-users] Simultaneous GET requests to HTTP Server Hello, I need some help about the usage of the HTTP Server. My current problem is the following. I have some WEB pages that use some styles, _javascript_s, pictures as usual. When I set an option to the WEB Browser (up to now I use always Firefox) to make only one GET request at a time, all works without any problems. But by default the simultaneous requests of the browser are set to 6. In this case, index page is loaded correct, then the browser generates simultaneous GET requests to read a style and a _javascript_ and at this point the communication brakes - I see that the HTTP Server stops sending the next frames with the data of the files. It happens the same if the simultaneous requests are even 2. So it works only if the requests are following one after another. I suppose that this is something in my code, or more usual in some settings of the stack or HTTP Server, but I can't find out what is it. I'm using LWIP stack V1.4.1. Can you give me an advice what I have to check, please? Best regards! -- Simeon Trifonov Head of department "Development" AMK Drives and Controls Ltd. Bulgaria / Gabrovo Phone: +359 (0)66 819125 Fax: +359 (0)66 819101 E-Mail: address@hidden Web: www.amk-drives.bg _______________________________________________ lwip-users mailing list address@hidden https://lists.nongnu.org/mailman/listinfo/lwip-users
_______________________________________________ lwip-users mailing list address@hidden https://lists.nongnu.org/mailman/listinfo/lwip-users
|
[Prev in Thread] | Current Thread | [Next in Thread] |