Skip to content

Features

NiteshKant edited this page Mar 6, 2013 · 1 revision

Karyon has the following key features:

Lifecycle management via governator

Karyon uses governator for all lifecycle management and adds a few new Concepts. It provides a very extensible way of overriding the default governator initialization via ServerBootstrap class.

Property management via Archaius

Karyon uses archaius to access any required properties. It loads two property files, if available in the classpath, viz.

  • <application_name>.properties: The application name is as specified by the system property "archaius.deployment.applicationId"
  • <application_name>-.properties: The environment is as specified by the system property "archaius.deployment.environment". Any property which is defined in both these files, will be set to the value specified in the environment specific file.

Service discovery via Eureka

Karyon integrates with eureka for its service discovery needs. If this is not required in your environment, you can disable this integration by setting a property "com.netflix.karyon.eureka.disable" with value "true"

In case you require eureka integration, you must provide a property file named "eureka-client.properties" which at the least contain the following properties:

  • eureka.name: Name of the application as you would want to register with eureka.
  • eureka.port: Port at which your application is accessible.
  • eureka.vipAddress: The virtual IP address for the application.
  • eureka.serviceUrls: The service urls for your eureka server.

See Configuring eureka for details about eureka configuration.

Admin user interface

Karyon comes with a bundled administrative user interface. See karyon admin for details.

Healthcheck

Karyon provides a standard way of providing health check information about the application. One can implement the interface HealthCheckHandler to provide meaningful health check status.

Karyon also provides a way to feed this health check information to eureka. If such a behavior is desired, you can set the property "com.netflix.karyon.unify.health.check.with.eureka" to true.

Also see karyon admin for details on the healthcheck endpoint