Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » Elevate Web Builder Technical Support » Support Forums » Elevate Web Builder Web Server and Modules » View Thread |
Messages 1 to 6 of 6 total |
Cores of RAM? |
Sun, Jan 22 2017 5:12 AM | Permanent Link |
Ronald | Hi,
I have created a webservermodule that works with DBISam on a server. I use EWB as my webser and I query the tables with SQL. Will DBISam benefit from adding more cores or adding more RAM to the server? The server now has SSD drives an Intel Xeon processor and 4096 MB of RAM. Thanks, Ronald |
Sun, Jan 22 2017 1:54 PM | Permanent Link |
Raul Team Elevate | On 1/22/2017 5:12 AM, Ronald wrote:
> I have created a webservermodule that works with DBISam on a server. I use EWB as my webser and I query the tables with SQL. Will DBISam benefit from adding more cores or adding more RAM to the server? The server now has SSD drives an Intel Xeon processor and 4096 MB of RAM. Are you accessing dbisam directly (local access) or thru a dbsrvr (c/s)? What is the EWB app usage like - both in terms of number of users and usage patterns (mainly how complex is dbisam access or how often would your ewb app need to communicate with web server) ? EWB Web Server is a win32 app/service at this time so best it can use is 2GB. Windows will use RAM for caching and such so having 4GB is good but unless you're seeing ewb maxing out memory usage adding more RAM likely will not help at this time. CPU cores are bit more interesting aspect. EWB application is stateless on server side so all communication between EWB app and server is generally short requests and responses. EWB web server does create a new thread for connections but even if web browser keep this connection open it's usually idle. If your EWB app is of the type where user downloads some data, you then display it and they manipulate and at some point send updates back then i would expect your current system to handle rather large number of users.You can check CPU usage and see how system runs. Raul |
Mon, Jan 23 2017 9:04 AM | Permanent Link |
Ronald | Raul wrote:
Are you accessing dbisam directly (local access) or thru a dbsrvr (c/s)? What is the EWB app usage like - both in terms of number of users and usage patterns (mainly how complex is dbisam access or how often would your ewb app need to communicate with web server) ? EWB Web Server is a win32 app/service at this time so best it can use is 2GB. Windows will use RAM for caching and such so having 4GB is good but unless you're seeing ewb maxing out memory usage adding more RAM likely will not help at this time. CPU cores are bit more interesting aspect. EWB application is stateless on server side so all communication between EWB app and server is generally short requests and responses. EWB web server does create a new thread for connections but even if web browser keep this connection open it's usually idle. If your EWB app is of the type where user downloads some data, you then display it and they manipulate and at some point send updates back then i would expect your current system to handle rather large number of users.You can check CPU usage and see how system runs.> Hi Raul, Thank you. I acces the DBISam tables directly, and the application is exactly what you describe in the last paragraph. Ik think the application must be able to handle about 50 read or write actions per second spraed over several databases. The tables are mostly under 500KB and most read- en write sql is quite simple. Is 50 per second very high or do you think that the server that I described can handle this? Greetings, Ronald |
Tue, Jan 24 2017 3:38 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Ronald,
<< Thank you. I acces the DBISam tables directly, and the application is exactly what you describe in the last paragraph. Ik think the application must be able to handle about 50 read or write actions per second spraed over several databases. The tables are mostly under 500KB and most read- en write sql is quite simple. Is 50 per second very high or do you think that the server that I described can handle this? >> That should be possible without issue. I just ran ApacheBench (comes with Apache web server) on the EWB Web Server: ab -n 10000 -c 500 -m GET "http://192.168.0.2:8080/databases?method=rows&database=ExampleData&dataset=Transactions" and that retrieved a dataset of around 300 rows (121K) from the web server for each request. I was able to achieve a throughput of around 108 requests per second. I'm going to profile this, though, because ~4 seconds per request still seems pretty high to me. However, there's a lot of string manipulation going on and there's a lot of columns in that dataset, so it may make sense in the end. Tim Young Elevate Software www.elevatesoft.com |
Wed, Jan 25 2017 12:25 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Yeah, it was what I thought - there's some issues in DBISAM in terms of session locking (critical sections) that isn't particularly multi-processor friendly, so I'm making some improvements there. These only occur when using the TDBISAM* VCL components, which is what the EWB Web Server uses for DBISAM database access.
I also added some caching of database instances to the EWB Web Server, but I also need to add a cache parameter to the web server configuration before I can fully turn this feature on. When it's completely "on", I can manage to get around 700 requests per second instead of around 100 requests per second. Tim Young Elevate Software www.elevatesoft.com |
Thu, Jan 26 2017 5:13 AM | Permanent Link |
Ronald | Tim Young [Elevate Software] wrote:
>Yeah, it was what I thought - there's some issues in DBISAM in terms of session locking (critical sections) that isn't particularly multi-processor friendly, so I'm making some improvements there. These only occur when using the TDBISAM* VCL components, which is what the EWB Web Server uses for DBISAM database access. I also added some caching of database instances to the EWB Web Server, but I also need to add a cache parameter to the web server configuration before I can fully turn this feature on. When it's completely "on", I can manage to get around 700 requests per second instead of around 100 requests per second.< Wow, that would be really great and make DBISam/EWBServer a great combination. Thank you. |
This web page was last updated on Thursday, March 28, 2024 at 08:36 AM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |