Hi everyone,I hope you're doing well.
I'm currently working on a project where I'm using Next.js for the frontend and Appwrite for the backend. I've been exploring ways to optimize performance, and I'm particularly interested in leveraging Next.js caching to improve efficiency. Specifically, I'm looking for guidance on how to effectively combine Next.js caching strategies (such as Incremental Static Regeneration or Server-Side Rendering) with data fetched from Appwrite.
I'm aware that Next.js provides built-in caching mechanisms, but I'm unsure about the best practices for integrating them with data fetched from an external source like Appwrite. If anyone has experience or insights into how to achieve this, I would greatly appreciate any advice, code examples, or resources you could share. Additionally, if there are any potential challenges or considerations I should be aware of, I'd love to hear about them. Thank you in advance for your help and support!
**TLDR: How to set up appwrite database caching using nextjs inbuild-caching ** (PS : i'm using the appwrite-node sdk as on my server side of nextjs , not the appwrite client side sdk)
Here is how I've done, it (https://github.com/dishwasher-detergent/appwrite-nextjs-starter/blob/main/lib/db/index.ts). Let me know if this is kinda what you were thinking, also let me know if you think this sucks haha
so in short you just wrap the entire call of databases in unstable_cache?
Most of the call, you wouldn't wrap auth checks, but yes, and in post/put/delete calls you invalidate the cache to prevent stale data
hmm what about other ways of doing it like using "use cache" n stuff?
cause in the docs they mention it would be replaced in future versions by "use cache"
You can try that out but afaik that's only available in canary releases of nextjs
so it's subject to a lot of change without notice.
Appwrite has too built-in mechanisms
But server sided, instead of client
Sure but if you use nextjs cache it caches closer to the user wheres appwrite does not :P
Recommended threads
- All function deployments fail (node 18-2...
Error: bash: /usr/local/server/helpers/build-cache.sh: No such file or directory Sidecar error: Build archive was not created at /mnt/code/code.tar.gz Scope: ...
- Database Write Limits hit
Hello Appwrite Admins, I'm a GitHub Education user, and about a week ago, my database was really badly optimized, resulting in about 600k writes in a single day...
- Help: Domain krtrim.tech Blocked on Fast...
Hi, I'm trying to add my domain krtrim.tech (and subdomain) in Appwrite, but I'm getting this error: Failed to add domain to Fastly: {"msg":"Bad request","deta...