Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Issue246 (#256)
* fixes #246 changed jdk support

* fixes #246 update about article

* fixes #246 first wave of grammar check

Co-authored-by: Emily Wang <miss.emilywang@gmail.com>
  • Loading branch information
stevehu and emilyw1232 committed Apr 6, 2021
1 parent d8abdd8 commit 50b1c10
Show file tree
Hide file tree
Showing 162 changed files with 947 additions and 1,729 deletions.
13 changes: 7 additions & 6 deletions content/en/_index.md
Expand Up @@ -25,12 +25,12 @@ features:
- heading: Multi-Style Support for Different Products
image_path: /images/icon-multilingual2.svg
tagline: Both synchronous request/response and asynchronous event driven frameworks
copy: Support Restful(light-rest-4j), Graphql(light-graphql-4j), Hybrid(light-hybrid-4j) and Eventuate Consistency(light-eventuate-4j). Also Saga(light-saga-4j) for transaction orchestration between services.
copy: Supports Restful(light-rest-4j), Graphql(light-graphql-4j), Hybrid(light-hybrid-4j), and Eventuate Consistency(light-eventuate-4j), as well as Saga(light-saga-4j) for transaction orchestration between services.

- heading: OAuth2, Portal and Services to Form an Ecosystem
image_path: /images/icon-custom-outputs.svg
tagline: Provide a platform for on-premise solutions as well as hosted solutions
copy: light-oauth2 for security and light-portal is for service runtime monitoring and management and API marketplace. Kafka for messaging, ELK for logging, InfluxDB and Grafana for metrics and ArangoDB for DB.
copy: light-oauth2 is for security while light-portal is for service runtime monitoring and management and the API marketplace. Kafka is for messaging, ELK is for logging, InfluxDB and Grafana are for metrics, and ArangoDB is for DB.
sections:
- heading: "Cross-Cutting Concerns"
cta: Check out light-4j middleware handlers.
Expand All @@ -43,20 +43,21 @@ sections:
link: /architecture/category/
color_classes: bg-primary-color-light black
image: /images/home-page-templating-example.png
copy: "Restful for public API, Graphql for mobile and Sing Page Application, Hybrid for serverless and take advantage of both Monolithic and Microservices architecture. Eventuate for event driven."
copy: "Restful is for public APIs, Graphql is for mobile and Single Page Applications, while Hybrid for serverless. It takes advantage of both Monolithic and Microservices architecture. Eventuate is for event-driven applications."
- heading: "Infrastructure Services"
cta: OAuth2, Portal and other infrastructure services.
link: /service/
color_classes: bg-primary-color-light black
image: /images/home-page-templating-example.png
copy: "OAuth2 provider is responsible for centralize policy management and services are responsible for policy enforcement. Portal is API management and marketplace. Others are third party services."
copy: "The OAuth2 provider is responsible for centralizing policy management and services which are responsible for policy enforcement. Portal is for API management and the marketplace. Others are third party services."
- heading: "Tool Chains"
cta: Tool chain for code generation, devops and CI/CD.
link: /tool/
color_classes: bg-primary-color-light black
image: /images/home-page-templating-example.png
copy: "Light-codegen is used for scaffolding project from OpenAPI spec, GraphQL IDL or Hybrid Schema. Light-bot Pipeline for building, packaging, releasing and dockerizing. Kubernetes is for service orchestration."
copy: "Light-codegen is used for scaffolding projects from OpenAPI spec, GraphQL IDL or Hybrid Schema. Light-bot Pipeline is for building, packaging, releasing and dockerizing. Kubernetes is for service orchestration."

---

Light means light-weight, lighting fast and shed light on how to program with modern Java SE.
Light means light-weight, lightning-fast, and shedding light on how to program with modern Java SE.

3 changes: 2 additions & 1 deletion content/en/about/_index.md
Expand Up @@ -17,4 +17,5 @@ toc: false
reviewed: true
---

Light is a fast, lightweight and cloud native microservices platform. The main design goal is highest throughput, lowest latency and smallest memory footprint.
Light is a fast, lightweight and cloud-native microservices platform. The main design goal is to achieve the highest throughput, lowest latency, and smallest memory footprint possible.

39 changes: 14 additions & 25 deletions content/en/about/benefits.md
@@ -1,7 +1,7 @@
---
title: Benefits of Light Platform
linktitle: Benefits
description: Improved performance, Lowered production cost, security and ease of use are just a few of the reasons Light Platform is so appealing.
description: Improved performance, lowered production costs, security and ease of use are just a few of the reasons Light is so appealing.
date: 2017-02-01
publishdate: 2017-02-01
lastmod: 2017-02-01
Expand All @@ -16,15 +16,12 @@ sections_weight: 4
draft: false
aliases: []
toc: false
reviewed: true
---
## Lower the business requirement cost

Compare with the traditional software development process, the business analysis and designer
can sit together to create an OpenAPI specification. It eliminate the need for Word or Excel
document which can never be traced and update-to-date. Also the spec can be understood by both
computers and humans without any confusion or clarification. For client application requirement
it is much simpler as we just need to pickup services available in the organization or public
to form an application just like building with Lego.
Compared with the traditional software development process, the business analyst and designer can sit together to create an OpenAPI specification. It eliminates the need for a Word or Excel document which can never be traced and be update-to-date. Also, the spec can be understood by both computers and humans without any confusion or clarification. For client application requirements, it is much simpler as we just need to pick up services available in the organization or public to form an application, just like building with Lego.


## Lower the solution design cost

Expand All @@ -34,41 +31,33 @@ would be an IDL document for services or services interactions for client applic

## Lower the development cost

With [light-codegen][] to generate a working project within a second, developers can only focus on
With [light-codegen][] to generate a working project within a second, developers can focus on
the business logic implementation and unit test for the business logic. There is no need to handle
any cross-cutting concerns as they are taken care of by the platform with configurations.

## Lower the devops cost

With devops as code, everything is automatic and there is no need for engineer to build and
deploy services to static shared environment anymore.
With devops as code, everything is automatic and there is no need for an engineer to build and
deploy services to a static shared environment anymore.

## Lower the test cost

All tests will be done automatically to support CI/CD flow. Testers will write integration and
end-to-end test cases and these tests will be part of the CI/CD flow to ensure the quality of
the product. Also, all clients will submit their test cases to the service team to ensure that
changes won't beak the client side contract.
All tests will be done automatically to support CI/CD flow. Testers will write integration and end-to-end test cases and these tests will be part of the CI/CD flow to ensure the quality of the product. Also, all clients will submit their test cases to the service team to ensure that changes won’t break the client-side contract.

## Lower the production provision cost

With high throughput, low latency and small memory footprint, the production provision cost
will be significant lower than traditional Java EE based solution. Based on different type
of services, sometime, the difference is over 100 times.
With high throughput, low latency and a small memory footprint, the production provision cost will be significantly lower than with a traditional Java EE based solution. Based on different types of services, sometimes, the difference is over 100 times.

## Lower the operation cost

With centralized logging, metrics, auditing, tracing and monitoring, you will have the peace
of mind on your production.
With centralized logging, metrics, auditing, tracing and monitoring, you will have peace
of mind during your production.

## Lower application delivery cost

When building a new application, you don't need to build every component but just pick the
right building blocks from within the organization or public. Building a new application is
just like playing Lego games.

In summary, the goal of the platform is to lower the total cost of software product in
all sizes of organizations.
When building a new application, you don’t need to build every component. Instead, you just need to just pick the right building blocks from within the organization or the public. Building a new application is just like playing with Lego.

In summary, the goal of the platform is to lower the total cost of software products in all sizes of organizations.



Expand Down
5 changes: 3 additions & 2 deletions content/en/about/community.md
Expand Up @@ -13,11 +13,12 @@ sections_weight: 6
aliases: []
toc: false
draft: false
reviewed: true
---

All of the light platforms are open source, including the documentation. If you find problems or you want to improve it, please [get involved][].
All of Light is open source, including the documentation. If you find problems or you want to improve it, please [get involved][].

If you have trouble with Light-4j, we would like to help.
If you are having trouble with Light-4j, we would like to help.

* Try the [FAQ][] documents. They provide solutions to the most common questions.
* Ask a question on Stack Overflow. We monitor stackoverflow.com for questions tagged with light-4j.
Expand Down
7 changes: 4 additions & 3 deletions content/en/about/features.md
Expand Up @@ -13,14 +13,15 @@ sections_weight: 2
aliases: []
toc: false
draft: false
reviewed: true
---

## General

* [Extremely fast][] Up to 3 million requests per second on commodity hardware
* Support or encourage [design first][] and [test driven][] development
* [Easy to deploy][] Support all platforms with JDK 8(branch 1.5.x and 1.6.x) and JDK 11 (branch master and 2.0.x) installed or Docker containers
* [Powerful plugins][] Allow users to choose built-in plugins or customized plugins
* Supports or encourages [design first][] and [test driven][] development
* [Easy to deploy][] Supports all platforms with JDK 8(branch 1.5.x and 1.6.x) and JDK 11 (branch master and 2.0.x) installed or Docker containers
* [Powerful plugins][] Allows users to choose built-in plugins or customized plugins

See what's coming next in the [roadmap][].

Expand Down
12 changes: 6 additions & 6 deletions content/en/about/license.md
Expand Up @@ -25,13 +25,13 @@ To provide IP Infringement Indemnity to our customers, we have thoroughly review

Here is a list of actions we have done in general.

* Make sure we have a LICENSE file in each repository to state the open source license clearly.
* Add NOTICE file in each repository to clearly state the license and copyright of dependencies.
* Update source code to add license/copyright in the header.
* For redistributed source code from the third-party open-source project, make sure that the correct license and copyright header is in each file. Correct the license based on the parent project if necessary.
* Update the contribution guideline to ensure that license, copyright and author are in each source file.

* Made sure we have a LICENSE file in each repository to state the open source license clearly.
* Added NOTICE files in each repository to clearly state the license and copyright of dependencies.
* Updated source code to add license/copyright in the header.
* For redistributed source code from the third-party open-source project, made sure that the correct license and copyright header are in each file. Corrected the license based on the parent project if necessary.
* Updated the contribution guideline to ensure that the license, copyright and author are in each source file.


Here are all the related commits in each repository for auditing purposes.

light-4j
Expand Down
3 changes: 2 additions & 1 deletion content/en/about/presentation.md
Expand Up @@ -8,9 +8,10 @@ slug: ""
aliases: []
toc: false
draft: false
reviewed: true
---

When interacting with our customers, we have prepared some presentations. Here are some in PDF format and they might help users to understand the architecture and design of the light-platform.
When interacting with our customers, we have prepared some presentations. Here are some in PDF format which might help users understand the architecture and design of light-platform.

[Light-4j Components][]

Expand Down
22 changes: 7 additions & 15 deletions content/en/about/what-is-light.md
Expand Up @@ -14,12 +14,12 @@ weight: 1
sections_weight: 1
draft: false
toc: true
reviewed: true
---

Light-4j is a general-purpose Web/API framework built on top of Java SE. Technically speaking, Light Platform consists of over ten frameworks for different style of API building with infrastructure services like OAuth2, Portal, Logging, Messaging and Metrics etc. There are also a list of tools to help increase productivity of developers and operation staff.
Light-4j is a general-purpose Web/API framework built on top of Java SE. Technically speaking, Light consists of over ten frameworks for different styles of API building with infrastructure services like OAuth2, Portal, Logging, Messaging and Metrics, etc. There is also a list of tools to help increase the productivity of developers and operation staff.

Websites or services built with Light Platform are extremely fast and secure. Light service can be hosted anywhere, including cloud providers or on premise data centers. To alleviate the pain for small or medium size businesses to manage their own infrastructure, we are planning to provide all the services hosted at lightapi.net
including serverless solution built on top of light-hybrid-4j and light-eventuate-4j frameworks.
Websites or services built with Light are extremely fast and secure. Light services can be hosted anywhere, including cloud providers or on-premise data centers. To alleviate the pain of small or medium-sized businesses managing their own infrastructure, we are planning to provide all the services hosted at lightapi.net including serverless solutions built on top of light-hybrid-4j and light-eventuate-4j frameworks.

We think of Light Platform as the ideal website or services creation tool with flexible architecture so that plugins can be injected or enabled with externalized configuration changes.

Expand All @@ -29,23 +29,15 @@ https://github.com/networknt/microservices-framework-benchmark

## What Does Light Platform Do?

In technical terms, Light Platform takes an IDL (Interface Definition Language) and
scaffolds a new service project with light-codegen for developers to add only business
logic in generated handlers and write unit tests for handlers. It also provide a tool
chain for building and delivery the dockerized image to the target environment. During
runtime, there are light-portal to manage the services and light-oauth2 to secure the
services to services interactions.
In technical terms, Light takes an IDL (Interface Definition Language) and scaffolds a new service project with light-codegen for developers to add only business logic in generated handlers and write unit tests for handlers. It also provides a toolchain for building and delivering the dockerized image to the target environment. During runtime, there are light-portals to manage the services and light-oauth2 to secure the services to services interactions.

## Who Should Use Light Platform?

* Light is for people who need to handle huge volume as it can handler millions requests
per seconds on commodity hardware.
* Light is for people who need to handle huge volumes as it can handle millions of requests per second on commodity hardware.

* Light is for people who want to save money on production cost as one instance of light
can replace dozens or hundreds other instances built with Java EE platform.
* Light is for people who want to save money on production costs as one instance of Light can replace dozens or hundreds of other instances built with the Java EE platform.

* Light is for people who want to build a fully distributed system without central point
of bottlenecks and failures.
* Light is for people who want to build a fully distributed system without a central point of bottlenecks and failures.

* Light is for people who want to increase developer productivity and bring their products
to the market ASAP.
10 changes: 5 additions & 5 deletions content/en/architecture/_index.md
Expand Up @@ -15,25 +15,25 @@ draft: false
reviewed: true
---

The light-4j is aiming microservices, and it has to be high throughput, low latency, light-weight and address a lot of cross-cutting concerns at the same time. It is based on Undertow Core Http server and depending on minimum third-party libraries.
The light-4j is aimed towards microservices, and therefore has to achieve high throughput, low latency, light-weight and address a lot of cross-cutting concerns at the same time. It is based on Undertow Core Http server and depends on minimum third-party libraries.

The topics here are architectural considerations. In a nutshell, architecture is a type of design where the focus is quality attributes and wide(er) scope whereas design focuses on functional requirements and more localized concerns. There is another [design][] section for detail-oriented decisions.

Here is a list of architecture decisions for the platform:

* Designed for [microservices][] that can be dockerized and deployed within containers.

* Base on pure HTTP without JavaEE as it has too many problems and is [declining][].
* Based on pure HTTP without JavaEE as it has too many problems and is [declining][].

* [Security][] first design with OAuth2 integration and distributed verification with the embedded distributed gateway.

* The platform handles the [coarse-grained authorization with scopes and fine-grained authorization with custom claims][].

* How to handler distributed [transaction][] in microservices.
* How to handle distributed [transactions][] in microservices.

* All components are designed as [plugins][] and the framework is easy to be extended and customized.

* Can be [integrated][] with existing application to protect investment over the years for your organization.
* Can be [integrated][] with existing applications to protect investment over the years for your organization.

* Support client-side discovery without any [gateway][] and proxy between service to service calls as they add too much overhead.

Expand All @@ -49,7 +49,7 @@ Here is a list of architecture decisions for the platform:

* API [category][] and how to choose a framework to build your APIs.

* What is [service mesh][] and why we need it?
* What is a [service mesh][] and why do we need it?

* We cannot rely on network security for microservices given the dynamic environment and encrypted data. [Firewall is killed by Cloud][]

Expand Down

0 comments on commit 50b1c10

Please sign in to comment.