Download the PHP package innmind/homeostasis without Composer

On this page you can find all versions of the php package innmind/homeostasis. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package homeostasis

Homeostasis

Build Status codecov Type Coverage

This lib is a mechanism to collect indicators from various sensors of your app (cpu usage, errors in logs, ...) and determine what action to take depending on the health of the system. For example if the app takes too much cpu for too long you should reduce the number of processes handled by the server.

In essence the process is always like this: collect sensor values => determine strategy => call actuators.

Note: no actuators is implemented in this library because these are application specific so it's up to you to know how to regulate your app.

Usage

Above we defined a regulator that collects values from the cpu usage and the errors from the symfony logs. Each sensor is given the same importance/weight.

A sensor must return a value between 0 and 1, 0 means there is not enough activity and 1 means there's too much. So the obvious goal is that the overall value tends toward 0.5. But as for each sensor the way to calculate this value is different and non linear, you an specify a polynom to modulate this. In the example above we specified a linear polynom for both cpu and logs but you should change those as not enough errors in the logs makes no sense; polynoms should look something like this:

Finally, the ModulateStateHistory wrap is here to erase part of the history otherwise the system would have a hard time to find the tendency in the activity.


All versions of homeostasis with dependencies

PHP Build Version
Package Version
Requires php Version ~7.4|~8.0
innmind/immutable Version ~3.5
innmind/math Version ~5.0
innmind/time-continuum Version ~2.2
innmind/filesystem Version ~4.0
innmind/server-status Version ~2.0
innmind/log-reader Version ~4.0
innmind/json Version ^1.2
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package innmind/homeostasis contains the following files

Loading the files please wait ....