Jump to content

claudio.piffer

uniGUI Subscriber
  • Posts

    91
  • Joined

  • Last visited

  • Days Won

    9

Everything posted by claudio.piffer

  1. Hi Ario >>But It seems that you misunderstood my question. Yes, I understood exactly what you need 😉 For a secure and updated solution for SSL, reverse proxy is the answer. You can also create Apache module but apache + unigui + linux has some limtations (mainly due to how the session is managed in unigui). This is the sequence diagram:
  2. Hi Ario I use docker and with a compose docker I use nginx reverse proxy which receives requests in https. Nginx is the only service exposed by docker-compose and when it receives a request it redirects it in http to a internal standard unigui application.
  3. Great! Thank you. In fact I could replace the Apache project with a standalone project and add HyperServer. Are you using quicklogger in your solution?
  4. Hi Skyp thank you very much for your answer. I forgot to indicate that module is a (linux) apache module and I have already tried with quicklogger but when I active the logger the server is no longer responding. In httpd.conf I tried to "tile" the log file but after some time the console block the server, probably because the rotation is active I have to investigate Best regards
  5. Hi, I need to deploy uniGUI app in k8s and the request is that log generated of the app written only to standard output and not to files. Is it possible to configure the log in such a way that it no longer writes any files but directs the log only to stdout? App is compiled for Linux! Thank you very much
  6. Thank you for your answer Flavio. For the next project I need a dark theme (customer request). In a RADCore project I can use a uniGUI theme? I modified one of the themes I bought some time ago and adapted it to the customer's requests. In a standard uniGUI app work fine, but if I try to use it in a RADCore project it doesn't load (but I must tell you that I haven't done many tests because I'm a bit full) Are there any special things to do? I need to customize the ServerModuleCustomCss_userdef.Css? Thank you very much
  7. Hi Jean-Marc you can use the component TUniFormattedNumberEdit for this:
  8. What sadness! We are close to the great sorrow of the Turkish people! We are happy to hear from you Farshad..but the sadness is infinite.
  9. Sherzod, you are my hero!!!!! Will it be a feature of the next version? Would be great!!!!
  10. HI, I just convert a my app from Delphi Sydney to Alexandria. I converted everything without problems and the compilation is ok! The problem is with classes that derive from TUniFrame. Alexandria injects into the dfm the PixelsPerInch property which does not exist in the base class and this rightly causes an error at runtime. If I delete the property in the dfm out of the IDE and recompile everything works fine. Unfortunately, however, every time I save a modification of a class derived from TUniFrame, the problem returns. Is there a workaround for this?
  11. Hi, Sherzod thank you very much for your support and sorry if I wasted your time but the problem of the unicode char is solved. It's not a problem of unigui but of an incorrect configuration on my application server. It remains only to be verified because the icon to clear filter in uniDBGrid is empty on linux and correct in windows Thank you very much!!!
  12. Add another little problem under linux. The icon to clear filter in uniDBGrid is empty on linux and correct in windows See images: Linux: Windows
  13. HI, I have a strange problem with view the unicode char in uniMemo and uniDBLookupComboBox when the app runninig in linux. When I run app in Windows all work fine. The strange thing is that on the unidbgrid component the characters are seen correctly! UniMemo uniDBLookcupComboBox While in DBGrid the characters are correct This "problem" it is only under linux. In Windows everything is ok Thank you very much
  14. No, because the docker container needs a process (last command) to keep running, otherwise the container will exit/stop. Therefore, the "service", cannot be used directly in the Dockerfile. There are some tricks to take advantage of a service but I don't like them a lot Thank you very much!
  15. Hi Farshad In docker when you define the image you must define the "process" that docker run in container. For this in dockerfile you can use the ENTRYPOINT keyword (or CMD). It's ha two forms: 1. exec: ENTRYPOINT [ "/syncrosign_web/hyper_server" ] (recommended choice) 2. shell: ENTRYPOINT /syncrosign_web/hyper_server I used the first form (exec). The difference is the process attached to a PID 1. In exec mode the process of the PID 1 is the HyperServer In shell mode the process of the PID 1 is the shell Docker attach alway the process that keeps the container alive on the PID 1 With your question I got the doubt and I changed the ENTRYPOINT in the shell form. In shell mode everything works correctly. The processes are closed a few seconds later and the session count is correct. With this "workaround" I solved it. It would be nice if, in a future version of the HyperServer, the issue could be solved using also the exec because use of the shell mode could be problematic if I need to send any sort of POSIX signals to the container since /bin/sh won't forward signals to child processes. Thank you so much Farshad, your support was crucial!!
  16. Hi Farshad the "zombie" increase That reflect the situation of the server Among other things, node 0 and node 1 have the indication of an active session but in reality they have none Also node 8 (active) have a problem. Indicates one session that no longer exists
  17. >>The PID 14 seems to be the answer. A <defunct> process . (A zombie process) I supposed! The problem that as requests increase, so do "zombie" processes. Is there any workaround or any suggestions to avoid this? I would also switch to HyperServer for Apache (where the problem is not there) but the limit of 25 concurrent calls blocks me Thank you very much
  18. All process run with root privileges (I use docker) I point out the PID process 14 which is in the defunct state that is a uniGui process (node 0) that has not been closed correctly by HyperServer.
  19. Sorry, of course! The last version: 1.90.0.1551 in Delphi Sydney 10.4.2
  20. Hi Farshad I just did a test with the same "executables" but with HyperServer on Apache. (with docker is simply 😉 In this case the purge node remains for a few seconds and is replaced with a new active node. I always have an access violation on my process (now I'm investigating) but despite this with Apache the system works as I expect. Could it be a problem with the standalone HyperServer version? Thank you very much
  21. Hi Farshad the log of the node 0 is this: sw_syncrosign_web: 58E93740: 12:39:27 []:>--------------------------------------------------------------< sw_syncrosign_web: 58E93740: 12:39:27 [TUniServerModule]:Server First Init. sw_syncrosign_web: 58E93740: 12:39:27 [TUniServerModule]:Start Path = /syncrosign_web/ sw_syncrosign_web: 58E93740: 12:39:27 [TUniServerModule]:Node Id = 0 sw_syncrosign_web: 58E93740: 12:39:27 [TUniServerModule]:Node MaxSessions = 250 sw_syncrosign_web: 58E93740: 12:39:27 [TUniServerModule]:Starting HTTP Server on Port: 16384... sw_syncrosign_web: 58E93740: 12:39:27 [TUniServerModule]:HTTP Server Started on Port: 16384 sw_syncrosign_web: 574E5640: 12:39:52 [TUniGUIServerModule.AppHandleException-]:EAccessViolation : Access violation at address 00000000009D5BBA, accessing address 00007FB1C36354E2 : Addr: $00000000009D5BBA sw_syncrosign_web: 54CE0640: 12:40:08 []:Node-0, Terminate Started. sw_syncrosign_web: 58E93740: 12:40:08 [TUniServerModule]:Shutting Down Server. sw_syncrosign_web: 58E93740: 12:40:08 [TUniServerModule]:Stopping HTTP Server. sw_syncrosign_web: 58E93740: 12:40:08 [TUniServerModule]:HTTP Server Stopped. sw_syncrosign_web: 58E93740: 12:40:08 [TUniGUISessionManager]:Terminating Session manager. sw_syncrosign_web: 58E93740: 12:40:08 [TUniGUISessionManager]:Stopping Cache Eraser... sw_syncrosign_web: 58E93740: 12:40:08 [TUniGUISessionManager]:Cache Eraser Stopped. sw_syncrosign_web: 58E93740: 12:40:08 [TUniGUISessionManager]:Destroying Worker Threads. sw_syncrosign_web: 58E93740: 12:40:08 [TUniGUISessionManager]:Session manager terminated. sw_syncrosign_web: 58E93740: 12:40:08 [TUniServerModule]:Server Shutdown Completed. sw_syncrosign_web: 58E93740: 12:40:08 []:<--------------------------------------------------------------> sw_syncrosign_web: 58E93740: 12:40:08 [Terminated]:Exit Code: 0 there is this exception: sw_syncrosign_web: 574E5640: 12:39:52 [TUniGUIServerModule.AppHandleException-]:EAccessViolation : Access violation at address 00000000009D5BBA, accessing address 00007FB1C36354E2 : Addr: $00000000009D5BBA This exception in debug not occour! TUniGUIServerModule.AppHandleException?? and then there is the closing of the HTTP server (that's why HyeprServer can't connect right?) So, if I interpret it correctly, the process doesn't actually close but stays "hanging" right? Thank you very much!
  22. Hi Farshad, If I check the status of apache, it shows me a warning saying that with the setting of ServerLimit to 1 the maximum number of simultaneous sessions is a maximum of 25. At the moment MaxRequestWorkers I set it to 150 but I think that with this setting it ignores it and works at maximum 25. The "problem" is that in production I can also have 800-1000 users and all these working more or less in the same time slots so with such a high number of accesses it is easy to reach 25 simultaneous calls. >>Purged Nodes should go away in a few seconds. If they don't then there is a problem. You check the log file for details. Yes you are right! I check the log of the HyperServer and I see this problem: hyper_server: A77FE640: 12:10:17 [TUniHyperNode.TerminateNodeProcess.WaitForSingleObject]:Node #0, Error: System error: 6B hyper_server: A77FE640: 12:10:17 [TUniHyperNode.Terminate]:Node #0 forcefully terminated. hyper_server: A77FE640: 12:10:18 [TUniHyperNode.Terminate]:Node #0 Node process is still active. Termination failed... hyper_server: A77FE640: 12:10:19 [SendCommand Error, Node: 0]:Socket Error # 111 Connection refused. Can you give me some indication on what to investigate? Thank you very much!!
×
×
  • Create New...