News for hackers. Stuff that matters.
Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by veddox on Friday January 22, 2021 @04:05AM (#25869815)
Here's a more detailed (German) discussion of what the rewrite entails: https://www.heise.de//news/ownCloud-Infinite-Scale-Go-statt-...

I wonder what this will mean for the competition with Nextcloud? So far, NC seemed to be more active and slightly better than OC, but this move may change the playing board quite drastically.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by KingOfCoders on Friday January 22, 2021 @05:07AM (#25870192)
I have so many problems with core syncing with my NextCloud here - I wish I had used something else. But I guess "competition" is over who has more features.
Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by pestaa on Friday January 22, 2021 @07:09AM (#25870958)
What issues have you encountered?

I can't imagine using anything else, it works so flawlessly for me on multiple devices across different platforms.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by KingOfCoders on Friday January 22, 2021 @07:40AM (#25871168)
First, how many people are working on those files? I have more problems with more people.

The main problem are multi files that are all written together, e.g. Scrivener, Git, ... - I get sync conflicts which are hard to solve.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by pestaa on Friday January 22, 2021 @08:02AM (#25871295)
I'm not sure what your use case is, but syncing source code repositories to a shared folder doesn't sound like a great idea to me.

Collaboration on individual files is also best solved using online office suites and similar tools.

The remaining scenarios indeed benefit from file locking and may need conflict resolution from time to time.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by KingOfCoders on Saturday January 23, 2021 @12:56AM (#25880050)
"Collaboration on individual files is also best solved using online office suites and similar tools."

Yes, as I've said, I'd use something else, I've fallen for the "Share and collaborate on documents" marketing slogan of NextCloud on their homepage.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by uselpa on Friday January 22, 2021 @04:59AM (#25870151)
Why would that change the competition? I don't think that at the technical underpinnings have been a problem to rollout one or the other. Honestly curious.
Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by piaste on Friday January 22, 2021 @05:12AM (#25870228)
I run Nextcloud on a Pi 4 and it's a struggle to get acceptable performance out of it. The ecosystem is nice, but I would absolutely trade a few less plugin for a smoother file management experience.

I will definitely be checking out OCIS, assuming I find no reason for concern from a license / privacy / security scale.

Golang isn't an automatic guarantee of performance, and "microservices" has me pause in the context of a personal server, but it happens that most of the Golang-based applications I host tend to perform extremely well. This coming from someone who strongly dislikes the "simple is better than correct" design of golang.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by znpy on Friday January 22, 2021 @05:42AM (#25870439)
The problem is probably the pi4.

I run nextcloud 20 on a i5-3470 CPU @ 3.20GHz (2c/4t) and for a small use case it works very well. The storage is a rotational (magnetic) hard drive (2TB, seagate barracuda, with zfs 0.8.something)

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by johnchristopher on Friday January 22, 2021 @08:22AM (#25871423)
FWIW I always had performance problems running nextcloud on cheap VPSes while owncloud behaves more smoothly. Anecdata though.
Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by znpy on Saturday January 23, 2021 @09:09AM (#25882315)
Maybe I hadn't been sufficiently clear: the hardware I mentioned is physical hardware, running at home.

No virtual OS or sharing the physical cpu with other tenants.

Cheap vps provider often do overselling on the bet that most customers won't be actually using the cpus in user-space 100% of the time (and that's often true). If your provider isn't doing anything nasty, you should be able to see "stolen time" (often indicated with 'st') in top/htop: that's when your vm wasn't actually scheduled on the real cpu.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by johnchristopher on Saturday January 23, 2021 @02:44PM (#25885405)
I am inclined to believe you. I am giving nextcloud another try this weekend on my pi (I just found out about nextcloudpi).

edit: Aaaaand nextcloudpi is stuck in an endless loop after first login. What was I expecting.

https://help.nextcloud.com/t/docker-install-says-initializin... And I am not the only one. I'll try again in a year or two.

edit2: doesn't explain why owncloud runs smoother than nextcloud though. They must be doing something right.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by znpy on Sunday January 24, 2021 @11:16AM (#25893157)
I just wanted to add some additional things:

- from what I see owncloud is now written in go whereas nextcloud is still PHP. That might give it a performance boost on a raspberry pi (it basically avoids all the overhead from reading and byte-compiling all the PHP files on every request)

There are things that you can do to speed up nextcloud though:

- look into php byte-code caching (opcache and stuff like that)

- make sure your database indexes are set up correctly: I can't remember where in the admin ui (I'm on the phone rn) but there's some sort of self-test/diagnostics page that will tell you about database indexes to create (and the SQL commands to run too, iirc)

- you can tell nextcloud to use a redis for caching too, that could give an additional performance boost

But yeah, again, the raspberry pi isn't really that good for this kind of things. For pretty much the same (total!) Price of a RPI and related accessories I'd get something like a Lenovo m93p tiny off eBay and slap an SSD into that. You'd get proper performance albeit with a higher tdp.

I hope this helps :)

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by johnchristopher on Sunday January 31, 2021 @02:43PM (#25981855)
Thanks, I'll apply those tweaks next time I try nextcloud.

I am mainly working with docker on VPS/remote server now so if the image isn't tuned I'd have to dig into it and maintain it.

Owncloud 10.6 still uses PHP, I think so far only enterprisesomething versions are using Go.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by johnchristopher on Sunday January 24, 2021 @04:37AM (#25890655)
On a whim I tried the vps docker setup on the pi. Runs much smoother (seems like the db was the bottleneck but).

edit: Aaaaaaand now I can't login because I foolishly tried to setup webdav and nextcloud is adding 30 seconds to my login and it never actually cool downs. Why do I even bother.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by piaste on Saturday January 23, 2021 @04:33AM (#25880948)
> The problem is probably the pi4.

Jellyfin (NET Core backend with SPA client) runs quite well off my Pi4, even without hardware decoding.

If the device can stream 1080p video, it should be able to serve an online file explorer.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by znpy on Saturday January 23, 2021 @09:15AM (#25882350)
Keep in mind that streaming video likely translates to a read-mostly and sequential-read workload for the underlying storage, and that's really an ideal use-case for storage (you can do stuff like file-system caching, stream buffering and file read-ahead).

Things like nextcloud/owncloud are a lot more random-io-bound, if you think about it.

Re:ownCloud Infinite Scale: Go instead of PHP, microservices... by 8fingerlouie on Friday January 22, 2021 @05:09AM (#25870209)
Other than possibly gaining performance from Go vs PHP, as well as less memory consumption. I have no idea how large scale Next/Own-cloud implementations behave, but i'd assume you just throw more hardware after it.

What will change though is the relatively well tested and hardened code that is Owncloud today. Switching to Go doesn't just magically make your webapp secure.