Skip to content

Apache performance#2202

Merged
Alkarex merged 4 commits intoFreshRSS:devfrom
Alkarex:Apache-performance
Jan 2, 2019
Merged

Apache performance#2202
Alkarex merged 4 commits intoFreshRSS:devfrom
Alkarex:Apache-performance

Conversation

@Alkarex
Copy link
Member

@Alkarex Alkarex commented Dec 28, 2018

API: Use Apache SetEnvIf if available and fallback to RewriteRule.
Docker: Run cron job with correct www-data user instead of root
Docker: Hard-include Apache .htaccess to avoid having to scan for changes in those files.
Docker: Disable Apache security check of symlinks, which we do not use anyway.
Docker: Disable unused Apache and PHP modules.

API: Use SetEnvIf if available and fallback to RewriteRule
Docker: Disable unused modules.
Docker: Hard-include .htaccess to avoid having to scan for changes in
that file.
Docker: Disable security check of symlinks, which we do not use ayway.
@Alkarex Alkarex added this to the 1.13.1 milestone Dec 28, 2018
@Alkarex Alkarex added the Work in progress 🚧 Wait before merging label Dec 29, 2018
* Run cron job with correct www-data user instead of root
* Remove PHP GMP module uneeded for 64-bit Docker image
* Add option to mount custom .htaccess for HTTP authentication
* Re-add Apache module for HTTP authentication
* Move Alpine-specific instructions to Docker file (instead of Apache
conf) to make it easier to have other base images than Alpine
@Alkarex Alkarex added API 🤝 API for other clients and removed Work in progress 🚧 Wait before merging labels Jan 1, 2019
Alkarex added a commit to Alkarex/FreshRSS that referenced this pull request Jan 1, 2019
* Security fixes when HTTP user does not exist in FreshRSS
* Accept HTTP header X-WebAuth-User for delegated HTTP Authentication
(e.g. Træfik)
* Document delegated HTTP authentication from
FreshRSS#2202
Alkarex added a commit to Alkarex/FreshRSS that referenced this pull request Jan 1, 2019
Ubuntu seems to be faster, cf. e.g. PHPBench on:

https://www.phoronix.com/scan.php?page=article&item=freebsd-12-windows&num=5

https://www.phoronix.com/scan.php?page=article&item=docker-summer-2018&num=4
This image is also different from our Alpine-based image as it is using
Apache Event and PHP-FPM as FastCGI. They is also supposed to be faster
for some types of workload than mod_php but with other drawbacks (poorer
control of flush, more processes running...).
So some concreate performance tests would be needed to check whether
this is relevant at all.
It is quite usual for Docker images to offer both a Debian/Ubuntu and an
Alpine version, so we could also do the same if there is any need.
Follow-up of FreshRSS#2202
@Alkarex Alkarex merged commit a6623b7 into FreshRSS:dev Jan 2, 2019
@Alkarex Alkarex deleted the Apache-performance branch January 2, 2019 20:36
Alkarex added a commit that referenced this pull request Jan 2, 2019
* Security fixes when HTTP user does not exist in FreshRSS
* Accept HTTP header X-WebAuth-User for delegated HTTP Authentication (e.g. Træfik)
* Document delegated HTTP authentication from #2202
Alkarex added a commit to Alkarex/FreshRSS that referenced this pull request Jan 6, 2019
* GMP is needed because Alpine on e.g. ARM runs 32-bit
FreshRSS#2202
* Remove documentation for Træfik HTTP authentication as it is not
compatible with API
FreshRSS#2204

FreshRSS#2208
FreshRSS#2207
Alkarex added a commit that referenced this pull request Jan 6, 2019
* GMP is needed because Alpine on e.g. ARM runs 32-bit
#2202
* Remove documentation for Træfik HTTP authentication as it is not
compatible with API
#2204

#2208
#2207
@Alkarex Alkarex mentioned this pull request Jan 17, 2019
Alkarex added a commit that referenced this pull request Mar 2, 2019
* Docker image alternative using Ubuntu

Ubuntu seems to be faster, cf. e.g. PHPBench.
It is quite usual for Docker images to offer both a Debian/Ubuntu and an
Alpine version, so we could also do the same if there is any need.
Follow-up of #2202

* Only explicit use of Apache confs

Fix double-logging issue

* Explicit ServerTokens OS

Default Apache configuration in Ubuntu, which was removed when disabling all confs.
It is also the default Apache configuration in Alpine.

* Take advantage of syslog for actualization

Same than for Alpine
43ab629

* COPY_SYSLOG_TO_STDERR

Same as #2213

* Update to libapache2-mod-php instead of php-fpm

* Default to Ubuntu

Ubuntu mod-php wins, being ~14% faster than Ubuntu php-fpm (which was ~300% faster than Alpine mod-php)
mdemoss pushed a commit to mdemoss/FreshRSS that referenced this pull request Mar 25, 2021
* Apache performance
API: Use SetEnvIf if available and fallback to RewriteRule
Docker: Disable unused modules.
Docker: Hard-include .htaccess to avoid having to scan for changes in
that file.
Docker: Disable security check of symlinks, which we do not use ayway.

* Apache readme

* Docker/Apache tuning
Run cron job with correct www-data user instead of root
Remove PHP GMP module uneeded for 64-bit Docker image
Add option to mount custom .htaccess for HTTP authentication
Re-add Apache module for HTTP authentication
Move Alpine-specific instructions to Docker file (instead of Apache
conf) to make it easier to have other base images than Alpine
mdemoss pushed a commit to mdemoss/FreshRSS that referenced this pull request Mar 25, 2021
* Security fixes when HTTP user does not exist in FreshRSS
* Accept HTTP header X-WebAuth-User for delegated HTTP Authentication (e.g. Træfik)
* Document delegated HTTP authentication from FreshRSS#2202
mdemoss pushed a commit to mdemoss/FreshRSS that referenced this pull request Mar 25, 2021
* GMP is needed because Alpine on e.g. ARM runs 32-bit
FreshRSS#2202
* Remove documentation for Træfik HTTP authentication as it is not
compatible with API
FreshRSS#2204

FreshRSS#2208
FreshRSS#2207
mdemoss pushed a commit to mdemoss/FreshRSS that referenced this pull request Mar 25, 2021
* Docker image alternative using Ubuntu

Ubuntu seems to be faster, cf. e.g. PHPBench.
It is quite usual for Docker images to offer both a Debian/Ubuntu and an
Alpine version, so we could also do the same if there is any need.
Follow-up of FreshRSS#2202

* Only explicit use of Apache confs

Fix double-logging issue

* Explicit ServerTokens OS

Default Apache configuration in Ubuntu, which was removed when disabling all confs.
It is also the default Apache configuration in Alpine.

* Take advantage of syslog for actualization

Same than for Alpine
FreshRSS@43ab629

* COPY_SYSLOG_TO_STDERR

Same as FreshRSS#2213

* Update to libapache2-mod-php instead of php-fpm

* Default to Ubuntu

Ubuntu mod-php wins, being ~14% faster than Ubuntu php-fpm (which was ~300% faster than Alpine mod-php)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

API 🤝 API for other clients

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant