this post was submitted on 12 Apr 2025
106 points (95.7% liked)

Selfhosted

46031 readers
413 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

As Nextcloud advanced with progresses making it competitive in fully integrated government and corporate workflows, OpenCloud is getting more and more attention.

The fact, that both are collaborative cloud plattforms, designed to be selfhosted and mainly developed in/around Berlin from FOSS-Community-Surroundings, makes one ask about the differences.

The main difference I see, is the software stack

  • Nextcloud, as a fork of ownCloud, kept the PHP code base and is still mainly developing in PHP
  • OpenCloud, also a fork of ownCloud, did a complete rewrite in Go

Until know, Nextcloud is far more feature complete (yes I know, people complain, they should fix more bugs instead of bringing new features) than OpenCloud, if we compair it with comercial cometitors like MS Teams.

I like Nextcloud!

I deploy it for various groups, teams, associations, when ever they need something where they want to have fileshare, calendar, contacts and tasks in one place. Almost every time, when I show them the functionality of Nextcloud Groups an the sharing-possibilities, people are thrilled about it, because they didn't expect such a feature rich tool. Although I sometimes wish it would be more performant and easier to maintain, so non-tech-people could care for their hosting themselves.

Why OpenCloud?

Now, with OpenCloud, I am asking my self, why not just contribute to the existing colab-cloud project Nextcloud. Why do your own thing?

Questions

So here I expect the Go as a somewhat game-changer (?). As you may have noticed, that I am not a developer or programmer, so maybe there are obvious advantages of that.

  • Will OpenCloud, at some point, outreach Nextclouds feature completeness and performance, thanks to a more modern approach with Go?
  • Will Nextcloud with their huge php stack run into problems in the future, because they cant compete with more modern architectures?
  • If you would have to deploy a selfhosted cloud environment for a ~500 people organization lasting long term: Would you stick to the goo old working php stack or see possible advantages in the future of the OpenCloud approach?

Thanks :)

(page 2) 26 comments
sorted by: hot top controversial new old
[–] [email protected] 4 points 1 week ago (2 children)

NextCloud being so slow forced me to migrate to Seafile.

Seafile being less one-stop-shoppy made me not use it so much, but whenever I do it is always fast and responsive (unlike nextcloud, where 80% of the time I was looking at the loading indicator). Looking it up now though, it looks like it has a lot of new features I haven't yet tried so I'm probably gonna start using it more now.

Only downside with Seafile is it's deduplication (for me), because it stops me from easily accessing files directly (always gotta use a client). Likely a benefit for most though and I do rarely need to access a file directly on disk, just when I do, it'd be an easy shortcut for whatever I'm doing.

load more comments (2 replies)
[–] [email protected] 2 points 1 week ago

i keep having issues and bugs on nextcloud. maybe i should try opencloud

[–] [email protected] 3 points 1 week ago (1 children)

NextCloud is straight up unusable to me no matter how much resources I was throwing at it.

OpenCloud seems promising. I would definitely like to play with it a little. I would also like to check check how can I help with a thing or two there.

This seems like a similar story with matrix Synapse vs Dendrite.

load more comments (1 replies)
[–] [email protected] 9 points 1 week ago* (last edited 1 week ago) (1 children)

This is what you're really looking for:

https://github.com/owncloud/ocis

Full rewrite in Go. Lots of features. Much better performance. More stable than nextcloud.

[–] [email protected] 3 points 1 week ago (3 children)

OoenCloud is a fork of this.

load more comments (3 replies)
[–] [email protected] 6 points 1 week ago (3 children)

It is unclear to me what the license of OpenCloud is. Are they open source? They reference a "trial license" on their site.

[–] [email protected] 3 points 1 week ago

Server is Apache 2.0, and frontend is AGPL v3, which seems to be the same for ownCloud OCIS, which they seem to have forked from.

load more comments (2 replies)
[–] [email protected] 21 points 1 week ago* (last edited 1 week ago) (5 children)

Nextcloud is more featureful (more apps like notes and hardware 2fa support). That is currently holding me to NC.

OpenCloud (fork of OCIS not original OC) is very similar when it comes to core functionality, but is missing those few apps I do not want to let go of.

Also note that nextcloud stores files in a very natural manner, where your file names and directories are stored the exact same on disk as on the interface. Opencloud does not do that. This is particularly handy if one day the app just explodes and refuses to run. With NC, you can just copy the files off the disk. Not so easy with OC.

[–] [email protected] 2 points 1 week ago (3 children)

What are the apps that you would miss? I basically only use my NC as a Google drive and docs replacement, so all it has to do is store docx files and let me edit them on desktop or mobile without being glitchy and I've really wanted to consider OCIS or similar.

That second requirement for me seems hard because of how complex office suites are, but NC is driving me to my wit's end with how slow and error prone it is, and how glitchy the NC office UI is (like glitches when selecting text or randomly scrolling you to the beginning).

[–] [email protected] 8 points 1 week ago (1 children)

Ocis/OpenCloud can integrate with Collabora, OnlyOffice but don't currently have things like CalDAV, CardDAV, E2EE, Forms, Kanban boards, or other extensible features installable as plugins in Nextcloud.

If you desire a snappy and responsive cloud storage experience and don't particularly need those things integrated into your cloud storage service, then Ocis or OpenCloud might be something to look into.

[–] [email protected] 2 points 1 week ago

Ah I see, I guess at least that would help with the main UI, but I'm already using collabora through the collabora code server in next cloud so it sounds like I'll probably have the same document editing experience with OCIS/opencloud. I used to use onlyoffice but after I tried out their mobile app, it started blocking me from editing documents using the next cloud app (which seemed to use the only office web UI) so I was forced to switch unless I started paying for onlyoffice.

load more comments (2 replies)
[–] [email protected] 3 points 1 week ago (2 children)

Yes OCIS (owncloud infinity scale, a complete rewrite of the owncloud project) has a convoluted file structure and I guess OpenCloud has the same way of storing files.

This is the main drawback I see as well, but it isn't a deal breaker for me. The way they handle the files allows OCIS and friends to work without a DB, in a stateless way I guess? This means that the entire setup is fully deterministically defined from a single file. This makes rollback very easy. So my rationale is that the files remain accessible even if a particular version decides to implode.

load more comments (2 replies)
load more comments (3 replies)
[–] [email protected] 0 points 1 week ago (4 children)

Shame Opencloud only officially supports docker. Thats a no go for me.

[–] [email protected] 14 points 1 week ago
load more comments (2 replies)
[–] [email protected] 40 points 1 week ago* (last edited 1 week ago) (2 children)

Nextcloud's biggest issue is performance, and PHP, while not a problem per se, doesn't help. PHP is not designed for huge applications that need to have processes running in the background; it only runs when a request is made then stops the process, therefore it needs to load itself from scratch on every single page load.

This is because PHP uses something called CGI; the webserver (usually nginx or Apache) calls an external PHP binary to generate a page. With Go (or pretty much any other language), the app is its own server and can keep data in memory and do stuff even when no request is coming.

[–] [email protected] 19 points 1 week ago (1 children)

There's a bunch of technical debt passed off as features, too. Like, Nextcloud runs background tasks as a cron job which is something I've never seen with other hosted services. It's probably a holdover from before containerised applications were ubiquitous but honestly it comes off as jank.

Also, I wonder if there would be an argument for a Nextcloud fork that doubled down on PHP by utilising something like Laravel to put all the rendering on the server side. Right now it uses VueJS which is fine, but PHP is really best suited for server side rendering that you just can't leverage when using a front end framework in JavaScript.

[–] [email protected] 7 points 1 week ago

Like, Nextcloud runs background tasks as a cron job which is something I've never seen with other hosted services.

Drupal also uses crons to run repeated tasks. By default, Drupal cron cleans out stale database records for a few tables and breaks old caches. It can be extended by the developer, though.

It's probably a holdover from before containerised applications were ubiquitous but honestly it comes off as jank.

PHP is pre-container and pre-virtualization, so I guess you can think of it as a hack way of getting garbage collection. To be honest, the cron's translate pretty well to k8s cronjobs. You just use the same image as the app and override the command with the cronjob command.

[–] [email protected] -4 points 1 week ago* (last edited 1 week ago) (2 children)
[–] [email protected] 11 points 1 week ago (1 children)

The scaling, in particular, is a huge benefit of PHP over practically every other technology out there: to double the performance of a PHP server, you can simply have twice as many cores and things will work without any changes needed. Not only is the scaling you get pretty much 100%, unlike other languages, this scaling continues beyond a single server!

There is so much wrong with this that it's difficult to know where to start...

[–] [email protected] 1 points 1 week ago* (last edited 1 week ago) (1 children)

PHP does actually scale better than something like Lemmy which is written in rust

But sure, you can act like you know more than the Nextcloud devs

[–] [email protected] 6 points 1 week ago* (last edited 1 week ago) (1 children)

PHP does actually scale better than something like Lemmy which is written in rust

Okay - How then?

But sure, you can act like you know more than the Nextcloud devs

I'm a web developer too - so I feel rather qualified to speak on the subject. I don't think the Nextcloud developers are some sort of genius team of engineers but I'm not saying they're stupid or anything - just that PHP does not scale better than "practically every other technology out there".

It forks or creates a thread per request. It's horizontal scaling which is pretty common with any webapp. I don't know why they claim PHP is special here. It's a very common way to handle requests and you can do that with lots of languages and frameworks. More CPUs = more threads = more scaling. Throw more servers into the mix and you're now "infinitely scaling" right? Well... No. Because I/O.

Webapps tend to be I/O bound rather than CPU bound. So asynchronous I/O leads to much better performance generally with fewer resources. Because no matter how many threads and servers you put in the app tier you're going to be limited by the disks on your database at some point.

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 22 points 1 week ago (1 children)

I have no experience with Opencloud, but Nextcloud is borderline unmaintainable in my opinion. I welcome any new player in this space.

[–] [email protected] 3 points 1 week ago (2 children)

Yeah, I love NC but boy is it a pain. If there were a similar but less bulky, less clunky option that wasn't a pain to maintain, I'd be all over that.

load more comments (2 replies)
load more comments
view more: ‹ prev next ›