Skip to content

Commit

Permalink
Update Lightbend product references (lagom#1792)
Browse files Browse the repository at this point in the history
## Fixes

lagom#1771 (comment)

## Purpose

Updates Lightbend product references to reflect recent changes.
  • Loading branch information
Tim Moore authored and ignasi35 committed Mar 22, 2019
1 parent c9b8eba commit 8cad471
Show file tree
Hide file tree
Showing 8 changed files with 59 additions and 69 deletions.
12 changes: 6 additions & 6 deletions docs/manual/common/concepts/ComponentTechnologies.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,26 @@

As a complete microservices platform, Lagom assembles a collection of technologies and adds value on top of them. Some of the libraries, tools, and servers that Lagom uses and supports were developed at [Lightbend](https://lightbend.com), others are third-party and open-source. As you develop with Lagom, you can also take advantage of these technologies:

* Play Framework --- Lagom is implemented on top of [Play Framework](https://www.playframework.com), Lightbend's web framework. This is an implementation detail that does not directly concern you when developing simple microservices. However, advanced users can call some Play APIs directly. If you have an existing Play Framework application to which you want to add microservices, Lagom provides support for that use case.

* Akka --- Lagom [[Persistence|PersistentEntity]], [[Publish-Subscribe|PubSub]], and [[Cluster|Cluster]] are implemented on top of [Akka](https://akka.io/), Lightbend's toolkit for building concurrent, distributed, and resilient message-driven applications. (This is an implementation detail that does not directly concern you when developing simple microservices. However, you can call also [[Akka APIs|Akka]] directly.)

* To scale your microservices out across multiple servers, Lagom provides clustering via [Akka Cluster](https://doc.akka.io/docs/akka/2.5/cluster-usage.html).

* As described in [[Implementing services|ServiceImplementation]], A Lagom service may be "simple" or "streamed". Streaming, asynchronous Lagom services are built on top of [Akka Streams](https://doc.akka.io/docs/akka/2.5/stream/index.html).

* Lightbend customers can additionally use [Enterprise Suite](https://www.lightbend.com/platform/production) components to operationalize and production-harden their systems.
* [Lightbend Platform](https://www.lightbend.com/lightbend-platform) subscribers can use additional components to operationalize and production-harden their systems.

* Akka's [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) handles network failures and system crashes.
* Akka [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) handles network failures and system crashes.

* [Lightbend's Telemetry (Cinnamon) product](https://developer.lightbend.com/docs/cinnamon/current/home.html) provides real time monitoring of system health, availability and performance.
* [Lightbend Telemetry](https://developer.lightbend.com/docs/telemetry/current/home.html) and [Lightbend Console](https://developer.lightbend.com/docs/console/current/) give you visibility into system health, availability and performance.

* See [[Cluster]] for more details.
* See [[Lightbend Platform|LightbendPlatform]] for more details.

* Cassandra --- By default, Lagom microservices that need to persist data use the [Cassandra](https://cassandra.apache.org) instance that runs as part of the development environment. You can also use an existing [[Cassandra Server|CassandraServer]] database or another type of database. See [[Managing data persistence|ES_CQRS]] for more information.

* Guice --- Like Play, Lagom uses [Guice](https://github.com/google/guice) for dependency injection.

* Play Framework --- Lagom is implemented on top of [Play Framework](https://www.playframework.com), Lightbend's web framework. This is an implementation detail that does not directly concern you when developing simple microservices. However, advanced users can call some Play APIs directly. If you have an existing Play Framework application to which you want to add microservices, Lagom provides support for that use case.

* SLF4J & Logback --- Lagom uses [SLF4J](https://www.slf4j.org/) for logging, backed by [Logback](https://logback.qos.ch/) as its default logging engine. See [[Logging]] for more information.

* Typesafe Config Library --- Lagom and many of its component technologies are configured using the [Typesafe Config](https://github.com/typesafehub/config) library. The configuration file format is [HOCON](https://github.com/typesafehub/config/blob/master/HOCON.md), a powerful and expressive superset of JSON.
Expand Down
14 changes: 1 addition & 13 deletions docs/manual/common/concepts/ScalableDeployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,16 +8,4 @@ To achieve truly reactive systems:

<!---The following diagram shows a typical Lagom deployment. (see slide) -->

While you can deploy on the appropriate technology of your choice, Lagom supports [Lightbend Enterprise Suite](https://www.lightbend.com/products/enterprise-suite) out-of-the-box. Enterprise Suite is a perfect match for Lagom, as it provides the following features:

* A way to manage configuration separately from packaged artifacts.
* Consolidated logging across many nodes.
* A supervisory system that automatically restarts services that terminate unexpectedly.
* The ability to scale up and down with ease and with speed.
* Handling of network failures, in particular those that can lead to a split brain scenario.
* Automated seed node discovery that ensures that new instances of a service join the same cluster as those already running.
* The ability to perform rolling updates of your services.
* Support for monitoring services across a cluster.
* The ability to test services locally before deploying in production.

See [[Running Lagom in production|ProductionOverview]] and [[Using Lightbend Enterprise Suite with Lagom|EnterpriseSuite]] for more information.
See [[Running Lagom in production|ProductionOverview]] and [[Using Lightbend Platform with Lagom|LightbendPlatform]] for more information.
42 changes: 0 additions & 42 deletions docs/manual/common/guide/production/EnterpriseSuite.md

This file was deleted.

44 changes: 44 additions & 0 deletions docs/manual/common/guide/production/LightbendPlatform.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Using Lightbend Platform with Lagom

Lagom is part of the [Lightbend Platform](https://www.lightbend.com/lightbend-platform) — an operationally robust solution for deploying Reactive Microservices. It gives you the ability to infuse your applications with intelligence based on real-time streaming and Machine Learning (ML). Lagom services can be developed, deployed and run in production using only open source components. However, we recommend considering the advanced features provided by Lightbend Platform.

This page highlights the Lightbend Platform features that are especially useful for most Lagom users, but there are many more. You can find an overview on the [Lightbend web site](https://www.lightbend.com/lightbend-platform) or [contact Lightbend](https://www.lightbend.com/contact) to learn more.

## Akka Commercial Addons

Lagom is based on Akka, a set of open-source libraries for designing scalable, resilient systems that span processor cores and networks. [Akka Commercial Addons](https://developer.lightbend.com/docs/akka-commercial-addons/current/index.html) is a suite of useful components that complement Akka and Lagom. These can be included as dependencies of your Lagom services to enable their functionality. It includes:

* [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) - Improved resilience for Akka Cluster applications.
* [Kubernetes Lease](https://developer.lightbend.com/docs/akka-commercial-addons/current/kubernetes-lease.html) - Kubernetes enhanced failure-recovery for Lagom and Akka Cluster apps.
* [Thread Starvation Detector](https://developer.lightbend.com/docs/akka-commercial-addons/current/starvation-detector.html) - Flag performance bottlenecks.
* [Configuration Checker](https://developer.lightbend.com/docs/akka-commercial-addons/current/config-checker.html) - Validate configuration against known issues.
* [Diagnostics Recorder](https://developer.lightbend.com/docs/akka-commercial-addons/current/diagnostics-recorder.html) - Facilitates enhanced support from Lightbend.
* [Multi-DC Persistence](https://developer.lightbend.com/docs/akka-commercial-addons/current/persistence-dc/index.html) - Persistence across data centers.
* [GDPR for Akka Persistence](https://developer.lightbend.com/docs/akka-commercial-addons/current/gdpr/index.html) - Safe deletion of confidential data.

See the documentation for each of these to understand if they apply to your use of Lagom.

We strongly recommend using the Split Brain Resolver with all services that use the Lagom Persistence API or other cluster-based functionality. Read about the importance of the Split Brain Resolver in the [[Cluster Downing|Cluster#Downing]] documentation.

## Telemetry and Console

Lightbend Platform also includes observability features to ensure the health and availability of your Lagom services. This has two essential pieces: [Lightbend Telemetry](https://developer.lightbend.com/docs/telemetry/current/home.html) (code named "Cinnamon") and [Lightbend Console](https://developer.lightbend.com/docs/console/current/). Telemetry makes it possible to gather metric, event and trace information from Akka, Scala, Play, and Lagom based applications. The information is transferred to various backends such as Prometheus. The Console provides visibility for KPIs, reactive metrics, monitors and alerting, and includes a large selection of ready-to-use dashboards.

To use these with Lagom, the Lightbend Telemetry agent must be included as a dependency of your Lagom services. See the [Lightbend Telemetry documentation](https://developer.lightbend.com/docs/telemetry/current/home.html) for details:

* [Features](https://developer.lightbend.com/docs/telemetry/current/introduction/overview/features.html)
* [Configuring Lagom services to use Telemetry](https://developer.lightbend.com/docs/telemetry/current/instrumentations/lagom/lagom.html)
* [Java example project](https://developer.lightbend.com/docs/telemetry/current/getting-started/lagom_java.html)
* [Scala example project](https://developer.lightbend.com/docs/telemetry/current/getting-started/lagom_scala.html)

See [Integrating Lagom with Lightbend Telemetry](https://github.com/lagom/lagom-recipes/blob/master/lightbend-telemetry/lightbend-telemetry-java-mvn/README.md) for a Java example of integrating Telemetry into a Lagom service.

## Configuring a Lagom build for Lightbend Platform

Bintray credentials are required to build applications using the Lightbend Platform. Lightbend customers should log into the [support portal](https://portal.lightbend.com/ReactivePlatform/EnterpriseSuiteCredentials) to obtain their credentials. Follow the links below to see how to supply the credentials when using sbt or Maven.

* [Lightbend Platform setup for sbt](https://developer.lightbend.com/docs/reactive-platform/2.0/setup/setup-sbt.html)
* [Lightbend Platform setup for Maven](https://developer.lightbend.com/docs/reactive-platform/2.0/setup/setup-maven.html)


[Contact Lightbend](https://www.lightbend.com/contact) to get started with Lightbend Platform.
6 changes: 3 additions & 3 deletions docs/manual/java/guide/cluster/Cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,8 @@ The naïve approach is to remove an unreachable node from the cluster membership

**We strongly recommend against using the auto-down feature of Akka Cluster.**

A pre-packaged solution for the downing problem is provided by [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html), which is part of the [Lightbend Enterprise Suite](https://www.lightbend.com/platform/production). The `keep-majority` strategy is configured to be enabled by default if you use Lagom with the Enterprise Suite.
A pre-packaged solution for the downing problem is provided by [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html), which is part of the [Lightbend Platform](https://www.lightbend.com/lightbend-platform). The `keep-majority` strategy is configured to be enabled by default if you use Lagom with the Split Brain Resolver.

See [[Using Lightbend Enterprise Suite with Lagom|EnterpriseSuite]] and the [Split Brain Resolver documentation](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) for instructions on how to enable it in the build of your project.
See [[Using Lightbend Platform with Lagom|LightbendPlatform]] and the [Split Brain Resolver documentation](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) for instructions on how to enable it in the build of your project.

Even if you don't use the commercial Enterprise Suite, you should still read & understand the concepts behind [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) to ensure your solution handles the concerns described there.
Even if you don't use the commercial Lightbend Platform, you should still read & understand the concepts behind [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) to ensure that your solution handles the concerns described there.
2 changes: 1 addition & 1 deletion docs/manual/java/guide/production/index.toc
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
ProductionOverview:Production Overview
EnterpriseSuite:Lightbend Enterprise Suite
LightbendPlatform:Lightbend Platform

6 changes: 3 additions & 3 deletions docs/manual/scala/guide/cluster/Cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,8 @@ The naïve approach is to remove an unreachable node from the cluster membership

**We strongly recommend against using the auto-down feature of Akka Cluster.**

A pre-packaged solution for the downing problem is provided by [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html), which is part of the [Lightbend Enterprise Suite](https://www.lightbend.com/platform/production). The `keep-majority` strategy is configured to be enabled by default if you use Lagom with the Enterprise Suite.
A pre-packaged solution for the downing problem is provided by [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html), which is part of the [Lightbend Platform](https://www.lightbend.com/lightbend-platform). The `keep-majority` strategy is configured to be enabled by default if you use Lagom with the Split Brain Resolver.

See [[Using Lightbend Enterprise Suite with Lagom|EnterpriseSuite]] and the [Split Brain Resolver documentation](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) for instructions on how to enable it in the build of your project.
See [[Using Lightbend Platform with Lagom|LightbendPlatform]] and the [Split Brain Resolver documentation](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) for instructions on how to enable it in the build of your project.

Even if you don't use the commercial Enterprise Suite, you should still read & understand the concepts behind [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) to ensure your solution handles the concerns described there.
Even if you don't use the commercial Lightbend Platform, you should still read & understand the concepts behind [Split Brain Resolver](https://developer.lightbend.com/docs/akka-commercial-addons/current/split-brain-resolver.html) to ensure that your solution handles the concerns described there.
2 changes: 1 addition & 1 deletion docs/manual/scala/guide/production/index.toc
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
ProductionOverview:Production Overview
EnterpriseSuite:Lightbend Enterprise Suite
LightbendPlatform:Lightbend Platform

0 comments on commit 8cad471

Please sign in to comment.