Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PHP stack #15

Open
oparoz opened this issue Jan 15, 2016 · 8 comments
Open

PHP stack #15

oparoz opened this issue Jan 15, 2016 · 8 comments
Labels

Comments

@oparoz
Copy link

oparoz commented Jan 15, 2016

Required configuration

  • pnctl
  • intl

Required modules

  • redis
  • apcu?

Nice to have modules

  • Imagick

PHP version

5.6 or 7? It will depend on the availability of modules

@oparoz oparoz added the http label Jan 15, 2016
@LEDfan
Copy link

LEDfan commented Jan 17, 2016

PHP 7 would be awesome for the performance, but there are still some issues with it:

  • imagemick must be compiled by yourself (not difficult), IIRC it's needed for all supported MIME types of gallery? (I guess you know it :P)
  • sabre dav isn't 100% working on PHP 7, so calendar isn't working. Not sure if this is already fixed
  • not officially supported by the distro's
  • maybe it contains some bugs, which will need a regular upgrade to a new minor version?

I'm not sure if running redis on a RPI will improve the performance of ownCloud since the low amount of RAM, which means there would be less RAM for MySQL AFAIK.

Another thing that came in my mind is the InooDB buffer pool size which should be correctly set, because otherwise MySQL/MariaDB can crash if there are a lot of requests. (E.g. with the gallery app and a bunch of images) Ref: http://dba.stackexchange.com/questions/27328/how-large-should-be-mysql-innodb-buffer-pool-size

@LEDfan
Copy link

LEDfan commented Jan 17, 2016

For choosing a PHP version it's important that it's long supported by ownCloud. I.e. choosing for PHP 5.4 now isn't a good idea since the latest version of Sabre-dav needs at least 5.5

@tflidd
Copy link

tflidd commented Jan 17, 2016

I'm not sure if running redis on a RPI will improve the performance of ownCloud since the low amount of RAM, which means there would be less RAM for MySQL AFAIK.

I did some upload performance tests in December and mysql is a bottle neck (i/o-wait). redis should reduce the database load but it didn't really help: owncloud/core#20967 (perhaps you need to tune more parameters).

PHP7:

not officially supported by the distro's

Even if it's not a big deal to compile modules, how should this be maintained? dotdeb.org provides some packages for PHP 7 but redis support is still missing (I'm not sure about imagemick).

@LEDfan
Copy link

LEDfan commented Jan 17, 2016

Even if it's not a big deal to compile modules, how should this be maintained? dotdeb.org provides some packages for PHP 7 but redis support is still missing (I'm not sure about imagemick).

That was indeed what I wanted to tell :). I think redis-php isn't even available as precompiled module and thus must be compiled always by the user. I think compiling modules on the RPI without the user knowing what's happening is impossible. A simple ./configure will stop the compilation when a dependency isn't found.

@LEDfan
Copy link

LEDfan commented Jan 17, 2016

Plus, compiling on RPI will also be not very fast...

@oparoz
Copy link
Author

oparoz commented Jan 17, 2016

All good points. I think PHP 7 should then be considered too young for an arm based project to be released in Q1. Compiling modules ourselves is not a problem, but it would increase the maintenance work load and imho we should leave that to the distros and focus on configuring the OS+stack.

Regarding Redis, it really helps when simply browsing files, because mySQL based file locking offers really bad performance. We'll just have to find the sweet spot in terms of allocated memory.

@jospoortvliet
Copy link
Contributor

With ownCloud 9.0 out and PHP 7 maturing quickly, I think we should go for it. It provides a performance boost we can use and if there are problems with it in the first batch - the people who get one can help shake those out ;-)

@oparoz
Copy link
Author

oparoz commented Mar 14, 2016

Redis and imagemagick are available, so that should be OK. I'm sure there are still lots of segfaults issues, but processes are not long running, so not much of a problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants