0

I have a strange issue with my self hosted nextcloud instance:

All works fine, but I have two users who report huge issues with speed when accessing that nextcloud. Two independent effects apparently:

  1. the WebUI takes ages to load for each single view
  2. file downloads are extremely slow

Note that this is not an issue for other users, but just those two.

I did a bit of analyzing the situation:

  • Not caused by their network connection, the issue persists when they change to another network (another country)
  • Not caused by a specific system (both users use MS-Windows, but there are other users using that as well without the same issues)
  • Not an issue of a specific browser, Firefox and Chrome show the same issue for those two users
  • Nothing of interest in the log files written by nextcloud itself or by the http server or the mysql server I use.
  • No load on the system during the requests in question.
  • The issue is reproduceable.

Debugging the first issue (slow WebUI) showed that the resource "core-common.js" takes 40 seconds to load. For each page or each refresh when disabling the local cache. On the server side it looks like that file is created again and again for each request, although it is actually cached on the server side: for other users it is taken from the server side cache (<0.2 seconds), for those two users it is apparently recreated again and again. I fail to understand the cause of that behavior.

A closer look at the second issue (slow file download) did not reveal anything of interest. I see no difference in the requests between those two users and other users, request and response headers are identical.

Does anyone have a clue? Can anyone offer a hint? I am at a loss currently ...

arkascha
  • 168
  • 1
  • 8
  • it looks for me that this question looks like a non business related. what is the business relation in here? – djdomi Aug 14 '22 at 16:36
  • @djdomi I am used to ask questions about the operation of server software here since it is considered off topic else where. If you want to suggest some other SE page then sure, go ahead. I myself consider the question on topic though according to the help pages for this place. I offer a service, that service has an issue, which I have to solve. – arkascha Aug 14 '22 at 16:44
  • Additional information request from your nextcloud instance, please. RAM size, # cores, any SSD or NVME devices on MySQL Host server? Post TEXT data on justpaste.it and share the links. From your SSH login root, Text results of: A) SELECT COUNT(*) FROM information_schema.tables; B) SHOW GLOBAL STATUS; after minimum 24 hours UPTIME C) SHOW GLOBAL VARIABLES; D) SHOW FULL PROCESSLIST; E) STATUS; not SHOW STATUS, just STATUS; G) SHOW ENGINE INNODB STATUS; for server workload tuning analysis to provide suggestions. – Wilson Hauck Aug 15 '22 at 22:03
  • @arkascha NextCloud is not just a Business Software. Its a Sync tool basically said - so please also provide the vedor of server and type, drives used in which configuration. – djdomi Aug 17 '22 at 04:42
  • @djdomi Nextcould is much more than a sync tool. File synchronization is just a small part of what it does. I fail to see your point, sorry, that software clearly is a server software and I operate it. The underlying hardware is irrelevant for that classification. – arkascha Aug 17 '22 at 05:18
  • How long does it take for you to ping their specific IP address? Share their ip address and I will ping from here to see if there may be a connectivity issue at their destination. What is their country location? – Wilson Hauck Aug 19 '22 at 18:20
  • @WilsonHauck Thanks for the suggestion, but no, sorry. This is not an issue with a specific IP address or connection. As written the issue persists for those two users regardless of their internet connection. Also the same users have access to other sites without any issue. – arkascha Aug 19 '22 at 18:59
  • @WilsonHauck Also please note that a "ping" does not really say much about the network connection quality. You can have a miserable long ping time yet still enjoy an immensly fast connection. The issue at hand is most likely connected to the transport protocol mechanisms. Not to the network layer. – arkascha Aug 19 '22 at 19:02
  • Let me know when you have results for the ip address, please. And the IP address of the destination, please. And what is the destination country? – Wilson Hauck Aug 19 '22 at 19:20
  • What is the size of core-common.js that takes 40 seconds to load? – Wilson Hauck Aug 19 '22 at 19:35
  • The size is 2.2MB. But that is not the issue. It is not the _download_ that takes that long. It is the compilation to create that resource which is actually already existing in the cache. I wrote that in the question. – arkascha Aug 19 '22 at 19:46
  • Existing in WHICH cache? What software is doing the compilation? – Wilson Hauck Aug 30 '22 at 21:51
  • Do you actually know nextcloud? It compiles various resources like javascript and style sheets to speep up usage. That requires server side caching, obviously. I am using a Redis cache for that, though others could be used. The cache works fine for all other users. Which I can see when analyzing requests: no compilation is performed by nextcloud, except for these two users, where the mentioned resource gets recreated again and again. I fail to find the reason for that. – arkascha Aug 31 '22 at 05:49
  • Have you considered that maybe the client has extensive DEBUG turned on in their browser for these two clients? – Wilson Hauck Sep 04 '22 at 12:38
  • @WilsonHauck I do not really understand what you ask here, sorry. Maybe you could elaborate? Whom do refer to here with "client"? You use it twice in your question, but apparently with different meaning? And what "extensive DEBUG" are you referring to? – arkascha Sep 04 '22 at 13:30
  • Consider looking at this URL, maybe it will ring a bell for you. https://www.google.com/search?q=how+to+use+debugger+in+chrome+console&rlz=1C1NDCM_enUS822US822&oq=google+chrome+debug+loggi&aqs=chrome.2.69i57j0i22i30j0i390j69i64l2.17727j1j7&sourceid=chrome&ie=UTF-8 - other browsers may have similar tools available, slowing down performance. – Wilson Hauck Sep 04 '22 at 13:42
  • No, sorry, this is not about _executing_ javascript. As explained multiple times above the issue is that a js resource gets recreated on the server side instead of being delivered from cache where it already exists. I can clearly see that from the networking console on the client side and also from the server side logging: the resource gets recreated as if it did not exist in cache, _then_ it is downloaded and used both of which is fast as expected. – arkascha Sep 04 '22 at 13:45

0 Answers0