I have a xojo stand-alone web app hosted on the local area network with 5 terminals/users.
Current Server:
Intel i5, 6 cores, 16gb RAM, Windows 11
Using the latest Xojo v2024R4.2, the app suddenly drops/lost connection if two or more users are using it. I downgraded it to 2024R3.1 and the dropping of connection seems went away but the app’s performance is painfully slow even on the server, itself. Some webpages get too long to load until they timed out. No problem if the app is used on the server alone.
Do I HAVE TO upgrade the server hardware and also the operating system for a small “web” environment? Recommending for upgrade is not a problem. However, I just want to be sure if the hardware or the OS are the culprits. My head is on the line if a new hardware is brought in and a Windows Server OS is purchased and found out that the issues remain.
No, you shouldn’t need to upgrade your hardware. That’s more than sufficient for a 5-user environment. Have you logged App.UnhandledException and Session.UnhandledException? Have you checked CPU and memory usage on the server? Have you profiled the app while it’s being used?
I would expect you to be able to run a 5-user app on an rPi, depending on what the app does, but I haven’t done much with Windows servers since around 2007.
5 users shouldn’t be a problem in Windows Server with the above configuration.
Maybe some memory leak problem.
Does your app connect to database?
Does it loads / display lots of data in WebListBox?
Does it deals with lots of images?
Does it deals with lots of loops ( do / for … )
some webpages get too long to load until they timed out —> could be coz of improper data loading / loops
@Anthony_G_Cyphers : Added some meaningful codes in App.UnhandledException and Session.UnhandledException. I used to only put “break” in these two events.
@Hanif_Saad :
Does your app connect to database? Check
Does it loads / display lots of data in WebListBox? Check. I’m actually using Anthony’s GraffitiGrid.
Does it deals with lots of images? No.
Does it deals with lots of loops ( do / for … )? Only the population of the grid.
UPDATE: The network guy made some changes on the DHCP setting. We just performed some tests. The server was used and two other workstations. So far, so good. There was no major change in my code except as suggested by Anthony. Up until this writing the UnhandledException hasn’t triggered yet.
I’ll post more if something gets worse but for now, I’m keeping my fingers crossed.
My heartfelt appreciation to the two of you. Thank you!
If two or more active users are using, the web app just freezes. The UnhandledException doesn’t fire. The console app shows it didn’t crash, it’s just unresponsive. It’s not even using CPU resource on the Task Manager. It’s basically just went dead.
I don’t know what I’ve been doing wrong or is there something I miss.
Could you downgrade it to Xojo 2024R3, I’ve been experiencing higher versions that “crash” and I don’t get anything in the UnhandledException. I’ve consulted the case with the entire group @Ricardo_Cruz and he couldn’t find anything (I work with a MySQL database that I open and close continuously), @Anthony_G_Cyphers I have yours as an external component, could it affect the Xojo update after 2024r3 in any way (which until then everything compiles fine for me). The problem occurs under Linux or Windows, thanks!
Podrias bajarla a Xojo 2024R3, a mi me viene pasando que versiones superiores se “cae” y en los UnhandledException no recibo nada. He consultado el caso con todo el grupo @Ricardo_Cruz no ha podido encontrar nada (trabajo con base MySQL que abro y cierro continuamente), @Anthony_G_Cyphers tengo como componente externo el tuyo puede afectar en algo la actualizacion de Xojo luego de la 2024r3 (que hasta ahi me compila todo bien). El problema se me presenta bajo Linux o Windows, gracias!
Try running multiple instances of your application . On different ports.
Let user 1 run from Port A ( give them the port number if possible )
Let user 2 run from Port B
Let user 3 run from Port C…
Test this for a few days.
If it works, and problem occurs only when more than 1 users are connected concurrently, then maybe you have global ( App level ) resources that are shared among different concurrent users (sessions). Maybe a database recordset / rowset etc. Perhaps when one user is writing , the other is reading from the database using the same recordset / rowset.
You could give this a try. If it only affect when more than one users ( sessions ) are connected to a single app, then i suspect this could be the case.
I am using Xojo2024R4.2 for my multiple concurrent users ( > 10 ) web apps ( 4 virtual CPU, 4GB RAM ) and so far its good.
I don’t have any problems running apps with my controls either in testing or production and I have had no reports of issues from other customers. That’s the best I can say. Do you have some compelling reason to believe that my components are the cause of the issue?
I don’t have any compelling reason, it’s just a question as in the search for the factors that may be affecting it, it’s one of many, that’s why I asked you.
Be wary of dragging people’s names through the mud though. You did much the same to Lifeboat with the Netlink errors. Claims like this, without evidence, hurt our reputation.
Both Anthony and I are happy to resolve problems with our products, but we need evidence to investigate the issues.
@Ricardo_Cruz , thank you very much for clarifying, I’ve consulted everyone involved in search of why I can’t update the project beyond 2024r3, at the time I bothered @Tim_Parnell and now @Anthony_G_Cyphers as well as the rest of the community because the truth is it’s an annoying situation that I can’t understand.
@Ricardo_Cruz muchas gracias por aclarar, he consultado a todos los que intervienen en búsqueda de porque no puedo actualizar el proyecto más alla del 2024r3, en su momento moleste a @Tim_Parnell y ahora a @Anthony_G_Cyphers ademas de al resto de la comunidad porque la verdad es una situación molesta que no logro comprender.
You should create a private feedback case and attach your project so that @Ricardo_Cruz can investigate the issue. If a database is needed, be sure to include your database structure (preferably a dump). None of us can help if we can’t see the problem. Just throwing things at the wall and hoping something sticks is no way to debug.
Sorry if I upset either of you, I am in a situation where I don’t know why it stopped working, my first doubt was with lifeboat since all my main projects ran there (later I saw it under a project in Windows and I discarded it) and now I was asking you about GraffitiSuite since it was the only external component I use.
I want to clarify that both of you develop an excellent product and today lifeboat for me is effectively a salvation by simplifying processes.
Disculpen si molesté a cualquiera de los dos , me encuentro en una situación donde no se porque dejo de funcionar, mi primera duda fue con lifeboat ya que todos mis proyectos principales corrian ahi (luego lo vi bajo un proyecto en Windows y lo descarte) y ahora le consultaba por GraffitiSuite ya que era el unico componente externo que uso.
Quiero aclarar que ambos desarrollan un excelente producto y hoy lifeboat para mi es efectivamente una salvación al simplificar procesos.