Comments (8)
Hello, I noticed that for me the community JSON always fails.
I know I'm a minority, but I have a 1mbit connection at home and a 4mb file at that speed would be downloaded in 32 seconds (a 5mb file would be 40sec, just to point out an upper limit to be safe).
So, can the timeout be longer tan 15 seconds, even if it's just 16β20 seconds it would cover download speeds of 2mbit or higher.
from lemmy-explorer.
@pcamilo89 give it a go now... they are smaller but there's a bunch.
That does work, I can see the list, and it slowly loads images and other data after, if some of the data fails to be retrieved it retries and gets it eventually.
The next image is just a reference for the retries (both for the lists of communities and images):
Tested a few times without cache active, and sometimes it can ask you to reload the page (I assume it has a bit of issues with the amount of requests), with cache active, there is no problem after the initial download, as it uses the cached data.
Thank you, now it is usable for low speed connections like mine.
I guess there is room to make improvements later, so in the case you decide to work on it, I will leave notifications for this issue on and can do a test later if needed.
from lemmy-explorer.
Yeah there is room to improve. This whole project I've not had to create any server backend, since it's all based on client-side JSON. I don't really plan on making a featured backend for this, cost and complexity ++.
I'm glad the fix made it possible to use, I added 3 re-tries on each payload in case they fail :) Maybe a future improve the loading, as the data grows I can see maybe doign more advanced splitting or minifying the data further to reduce size.
from lemmy-explorer.
Yeah that means it failed to load the ~4MB JSON file that has the community data in it. I'll extend the timeout to 15 seconds instead of the current 3.5 seconds.
from lemmy-explorer.
Yeah it's getting bigger and bigger :S
Compressed it is still around ~3MB
from lemmy-explorer.
I think the solution is to have either multiple files (small index file and separate files for each ~1000 communities) or try to remove some data from the communities json and seperate the metrics/metadata out.
Probably a combination of both.
Ideally the main load would be <1MB.
from lemmy-explorer.
my thinking on implementation, which I've written the code for tonight.
- split list into files with
ITEMS_PER_FILE
- implement loader that will fetch these on-demand.
i guess the goal is to "make it work on slower connections" not "make it totally fast"
from lemmy-explorer.
@pcamilo89 give it a go now... they are smaller but there's a bunch.
from lemmy-explorer.
Related Issues (20)
- Feature: Filter communities while taking into account Home instance defederation list HOT 1
- Feature: API layer for direct App integration HOT 3
- Feature: Sort communities in instances view HOT 2
- Bug: Community list for `lemmy.world` returns for all page numbers HOT 8
- Private instance marked as suspect for non-suspect reasons HOT 2
- Bug: Checking "Show NSFW" only shows NSFW communities. HOT 1
- Feature: Take advantage of the fediseer tags HOT 10
- Feature: Sort instances by βNewestβ HOT 3
- Bug:No kbin flagship instance HOT 2
- Feature: Adjust "Endorsed" and "Blocked" Smart-Sort Ranking HOT 3
- Feature: Improve documentation of provided data dumps
- Switch Deployments to use GitHub Pages HOT 3
- Feature: integrate instance agnostic link sharing service HOT 3
- Feature: Sort instances by version HOT 2
- Feature: Edit tags ? (email required, use Cloudflare etc..) HOT 4
- Feature: When linking to fediseer, link to the specific instance on the UI HOT 2
- Feature: Display fediseer tags on each instance info page HOT 2
- Feature: Expose registration mode
- Bug: include/hide suspicious doesn't seem to do anything? HOT 1
- Bug: Crawler has failed for past 72 hours HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lemmy-explorer.