feedbackcontrol4j

A small java 8+ standalone library to implement feedback control

Лицензия

Лицензия

Группа

Группа

ch.petikoch.libs
Идентификатор

Идентификатор

feedbackcontrol4j
Последняя версия

Последняя версия

3.0.0
Дата

Дата

Тип

Тип

jar
Описание

Описание

feedbackcontrol4j
A small java 8+ standalone library to implement feedback control
Ссылка на сайт

Ссылка на сайт

https://github.com/Petikoch/feedbackcontrol4j
Система контроля версий

Система контроля версий

https://github.com/Petikoch/feedbackcontrol4j

Скачать feedbackcontrol4j

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/ch.petikoch.libs/feedbackcontrol4j/ -->
<dependency>
    <groupId>ch.petikoch.libs</groupId>
    <artifactId>feedbackcontrol4j</artifactId>
    <version>3.0.0</version>
</dependency>
// https://jarcasting.com/artifacts/ch.petikoch.libs/feedbackcontrol4j/
implementation 'ch.petikoch.libs:feedbackcontrol4j:3.0.0'
// https://jarcasting.com/artifacts/ch.petikoch.libs/feedbackcontrol4j/
implementation ("ch.petikoch.libs:feedbackcontrol4j:3.0.0")
'ch.petikoch.libs:feedbackcontrol4j:jar:3.0.0'
<dependency org="ch.petikoch.libs" name="feedbackcontrol4j" rev="3.0.0">
  <artifact name="feedbackcontrol4j" type="jar" />
</dependency>
@Grapes(
@Grab(group='ch.petikoch.libs', module='feedbackcontrol4j', version='3.0.0')
)
libraryDependencies += "ch.petikoch.libs" % "feedbackcontrol4j" % "3.0.0"
[ch.petikoch.libs/feedbackcontrol4j "3.0.0"]

Зависимости

test (4)

Идентификатор библиотеки Тип Версия
org.junit : junit-bom jar 5.7.1
org.junit.jupiter : junit-jupiter jar
org.assertj : assertj-core jar 3.19.0
org.awaitility : awaitility jar 4.0.3

Модули Проекта

Данный проект не имеет модулей.

feedbackcontrol4j Java library

Apache License 2 download latest bb00bb Build Status

Introduction

feedbackcontrol4j is a small, standalone java library.

Implement feedback control in your applications.Main entities are Controller, Controllable, Sensor, Filter, ControlLoop, …​

For further reading I can recommend Feeback Control for computer Systems from Philipp K. Janert.

Examples

Use cases

  • "self adaptive" behaviour of your application instead of "classic", manual configuration

    • number of workers / threads / vm’s / …​

    • size of cache

    • number of database connections

    • number of "hot spares"

  • implementing "flow control" between producer and consumer

  • manage CPU load

  • …​

Requirements

To use this library you need

  • Java 8 or later

Installation

Usage in Gradle, Maven, …​

Gradle based build

Add the following dependency in your gradle build file:

repositories {
   mavenCentral()
}

dependencies {
    compile 'ch.petikoch.libs:feedbackcontrol4j:x.y.z' // replace x.y.z with the real version

    // or "latest" release, for the braves:
    //compile 'ch.petikoch.libs:feedbackcontrol4j:+'
}

Maven based build

Add jtwfg as dependency to your pom.xml:

        <dependency>
            <groupId>ch.petikoch.libs</groupId>
            <artifactId>feedbackcontrol4j</artifactId>
            <version>x.y.z</version> <!-- replace x.y.z with the real version -->
            <!-- or latest release, for the braves
            <version>RELEASE</version>
            -->
        </dependency>

Support

Please use GitHub issues and pull requests for support.

How to build the project

To run a build of the feedbackcontrol4j project on your machine, clone the git repo to your local machine and start the gradle based build using the gradle wrapper from the shell/command line:

> ./gradlew build

Motivation

Feedback control is IMHO in "enterprise" software development still pretty new (2015), but very promising.

I didn’t find any "ready-to-go" library for the JVM to implement custom feedback control closed loops, so I started with this work here.

Best regards,

Signature

Версии библиотеки

Версия
3.0.0