Massive rework and beautification
This commit is contained in:
parent
cceb0c945e
commit
871c538bfd
59 changed files with 427 additions and 3278 deletions
|
|
@ -11,22 +11,18 @@ images: ["images/og-image-fission.png"]
|
|||
<div class="col-xl-7 col-lg-6 col-md-6 hero-section-mobile">
|
||||
<h1 class="hero-title">
|
||||
Guidelines and Patterns<br />
|
||||
for AL for<br />
|
||||
for Development for<br />
|
||||
Microsoft Dynamics 365 Business Central
|
||||
</h1>
|
||||
<img
|
||||
class="img-fluid hero-banner show-mobile-big"
|
||||
src="/images/fission-illustration.svg"
|
||||
alt-text="Fission Banner"
|
||||
src="/images/brainstorming-team-meeting_38894532.png"
|
||||
alt-text="Teamwork Graphic"
|
||||
/>
|
||||
<br />
|
||||
<a href="/docs/installation/"
|
||||
<a href="https://www.youtube.com/watch?v=CWpaD9RUa6U"
|
||||
><button class="hero-big">
|
||||
<img
|
||||
src="/images/github-icon.png"
|
||||
width="22px"
|
||||
style="margin-right: 12px"
|
||||
/>Install Fission
|
||||
<i class="fab fa-youtube"></i> Watch the Launch
|
||||
</button></a
|
||||
>
|
||||
</div>
|
||||
|
|
@ -34,8 +30,8 @@ images: ["images/og-image-fission.png"]
|
|||
<div class="col-xl-5 col-lg-6 col-md-6 show-desktop-big">
|
||||
<img
|
||||
class="img-fluid hero-banner"
|
||||
src="/images/fission-illustration.svg"
|
||||
alt-text="Fission Banner"
|
||||
src="/images/brainstorming-team-meeting_38894532.png"
|
||||
alt-text="Teamwork Graphic"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -47,28 +43,23 @@ images: ["images/og-image-fission.png"]
|
|||
<br />
|
||||
<div class="row">
|
||||
<div class="col-lg-5">
|
||||
<h2 class="section-title">What is Fission?</h2>
|
||||
<h2 class="section-title">Design Patterns?</h2>
|
||||
<p class="section-text-bold">
|
||||
Fission is a framework for serverless functions on Kubernetes.
|
||||
A "Design Pattern" is a software design template to solve common development needs.
|
||||
</p>
|
||||
<p class="section-text">
|
||||
Write short-lived functions in any language, and map them to HTTP
|
||||
requests (or other event triggers).
|
||||
This site is community run and Microsoft endorsed.
|
||||
</p>
|
||||
<p class="section-text">
|
||||
Deploy functions instantly with one command. There are no containers
|
||||
to build, and no Docker registries to manage.
|
||||
</p>
|
||||
<a href="/docs/installation/"
|
||||
><button class="hero-mid">Learn More & Install Fission</button></a
|
||||
<a href="/docs"
|
||||
><button class="hero-mid">Learn More</button></a
|
||||
>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-7">
|
||||
<img
|
||||
class="img-fluid show-mobile-margin"
|
||||
src="/images/body-img-1.svg"
|
||||
alt-text="Fission Banner"
|
||||
src="/images/body-img-1.png"
|
||||
alt-text="Design Patterns Banner"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -88,248 +79,42 @@ images: ["images/og-image-fission.png"]
|
|||
|
||||
<div class="col-lg-4">
|
||||
<div class="card-shadow">
|
||||
<img src="/images/focus.svg" width="50px" class="img-card" />
|
||||
<h4 class="section-text-bold">Focus on Code,<br />Not Plumbing</h4>
|
||||
<h2 class="section-text-bold"><i class="fas fa-retweet"></i></h2>
|
||||
<h4 class="section-text-bold">Repeatability</h4>
|
||||
<p class="section-text">
|
||||
Fission lets developers run code functions easily, while automating
|
||||
the menial work of configuring Kubernetes micro-services concepts
|
||||
behind the scenes. Just write your code functions and Fission will
|
||||
make it run on Kubernetes.
|
||||
By using consistent patterns and best practices, code is far more reusable across diverse projects.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<div class="card-shadow">
|
||||
<img src="/images/portable.svg" width="50px" class="img-card" />
|
||||
<h4 class="section-text-bold">
|
||||
Portable: Run your Lambda-like service, anywhere
|
||||
</h4>
|
||||
<h2><i class="fas fa-people-carry"></i></h2>
|
||||
<h4 class="section-text-bold">Teamwork</h4>
|
||||
<p class="section-text">
|
||||
Fission is open source under the Apache license. Fission works on a
|
||||
Kubernetes cluster anywhere: on your laptop, in any public cloud, or
|
||||
in a private data-center. Write your application with the
|
||||
flexibility of deploying it anywhere.
|
||||
If all code uses design patterns and best practices, it's simpler for new team members to ensure
|
||||
that code is correct, as well as making it easier to jump into a project.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<div class="card-shadow">
|
||||
<img src="/images/extensible.svg" width="50px" class="img-card" />
|
||||
<h4 class="section-text-bold">
|
||||
Extensible and<br />
|
||||
Customizable
|
||||
</h4>
|
||||
<h2><i class="fas fa-rocket"></i></h2>
|
||||
<h4 class="section-text-bold">Performance</h4>
|
||||
<p class="section-text">
|
||||
Fission is extensible to any programming language (Python, NodeJS,
|
||||
Go, C#, PHP are supported today). It abstracts away containers by
|
||||
default, but you can build your own containers if you need to.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="container">
|
||||
<div class="row feature-section">
|
||||
<div class="col-lg-12 center-text" style="margin-bottom: 50px">
|
||||
<h2 class="section-title">Features</h2>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<div class="feature-card">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/kubernetes-native.svg"
|
||||
width="36px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<h4 class="section-text-bold">Kubernetes Native</h4>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Fission is open source under the Apache License. It works on a
|
||||
Kubernetes cluster anywhere: in your private datacenter, in a public
|
||||
cloud, or on your laptop.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="feature-card">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/fast-cold.svg"
|
||||
width="36px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<h4 class="section-text-bold">Fast Cold-Start</h4>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Fission maintains a configurable pool of containers, so your
|
||||
functions have very low cold-start latencies, typically ~100msec.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="feature-card">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/declarative.svg"
|
||||
width="36px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<h4 class="section-text-bold">
|
||||
Declarative Application Specifications
|
||||
</h4>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Declarative specifications give the developer the capability to
|
||||
define a function once and then deploy it anywhere. Fission
|
||||
resources (functions, triggers etc.) can be checked into source
|
||||
control, and the application can be recreated from them.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="feature-card">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/administration.svg"
|
||||
width="36px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<h4 class="section-text-bold">
|
||||
Administration & Operational Simplicity
|
||||
</h4>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Fission aims for operational simplicity by incorporating logs
|
||||
directly into the CLI, via integration with Fluentd. It also
|
||||
integrates with Prometheus for metrics tracking and dashboard
|
||||
visibility.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="feature-card">
|
||||
<div class="card-header-custom">
|
||||
<img src="/images/istio.svg" width="36px" class="img-card-header" />
|
||||
<h4 class="section-text-bold">Istio Service-mesh Integration</h4>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Fission integrates with Istio, which is an open platform to connect,
|
||||
manage and secure micro-services. With Istio, users also get the
|
||||
ability to monitor function usage and trace request latency through
|
||||
dashboards.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="feature-card">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/language.svg"
|
||||
width="36px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<h4 class="section-text-bold">Wide Language Support</h4>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Fission is extensible to any programming language of your choice.
|
||||
Python, NodeJS, Go, C#, PHP are supported today, but you can build
|
||||
your own custom containers if you need to.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="feature-card">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/autoscaling.svg"
|
||||
width="36px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<h4 class="section-text-bold">Function Autoscaling</h4>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Fission provides autoscaling for functions based on CPU usage. In
|
||||
the future, custom metrics will be also supported for scaling
|
||||
functions. You can set the initial and maximum CPU for a function
|
||||
and target CPU at which autoscaling will be triggered.
|
||||
Many design patterns and best practices are also heavily focused on ensuring compliance with
|
||||
the latest performance recommendations to get the most out of every system.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="wide-image show-desktop">
|
||||
<img src="/images/wave.webp" class="big-waves" />
|
||||
</div>
|
||||
|
||||
<div class="body-container push-up">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-lg-12 center-text" style="margin-bottom: 50px">
|
||||
<h2 class="section-title">Use Cases</h2>
|
||||
</div>
|
||||
<div class="col-lg-10 center-text info-card" style="margin-bottom: 50px">
|
||||
<h3 class="section-text-bold">Build Serverless API Backends</h3>
|
||||
<p class="section-text">
|
||||
Create API backends for web and mobile apps without managing servers.
|
||||
Just write functions, and map them to HTTP routes. Fission takes care
|
||||
of the rest: deployment, routing, scalability, availability. Use
|
||||
Kubernetes service discovery and networking to interoperate with
|
||||
other services, like Redis, Postgres, Etcd etc.
|
||||
</p>
|
||||
<img
|
||||
src="/images/use-case-1.png"
|
||||
class="img-fluid"
|
||||
alt-text="Build Serverless API Backends use case diagram"
|
||||
/>
|
||||
<br /><br />
|
||||
</div>
|
||||
|
||||
<div class="col-lg-10 center-text info-card" style="margin-bottom: 50px">
|
||||
<h3 class="section-text-bold">Easily Implement Webhooks</h3>
|
||||
<p class="section-text">
|
||||
Webhooks are a popular way to integrate with third-party services.
|
||||
Slack provides webhooks that are triggered by certain words or
|
||||
messages; GitHub provides webhooks triggered by events in Git
|
||||
repositories. Fission is a great place to implement webhooks: just
|
||||
write the code, map it to a URL, and point the webhook at that URL.
|
||||
</p>
|
||||
<img
|
||||
src="/images/use-case-2.png"
|
||||
class="img-fluid"
|
||||
alt-text="Easily implement webhook use case diagram"
|
||||
/>
|
||||
<br /><br />
|
||||
</div>
|
||||
|
||||
<div class="col-lg-10 center-text info-card" style="margin-bottom: 50px">
|
||||
<h3 class="section-text-bold">Write Kubernetes Event Handlers</h3>
|
||||
<p class="section-text">
|
||||
By subscribing to Kubernetes watches, you can write custom automation
|
||||
for your Kubernetes infrastructure. Fission’s integration with
|
||||
Kubernetes watches allows you to monitor resources such as Pods and
|
||||
Services, and execute arbitrary functions when the watched set of
|
||||
resources change.
|
||||
</p>
|
||||
<img
|
||||
src="/images/use-case-3.png"
|
||||
class="img-fluid"
|
||||
alt-text="Write Kubernetes Event Handlers use case diagram"
|
||||
/>
|
||||
<br /><br />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="body-container whats-new">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
|
|
@ -338,19 +123,33 @@ images: ["images/og-image-fission.png"]
|
|||
</div>
|
||||
<div class="col-lg-4">
|
||||
<div class="card-shadow">
|
||||
<span class="card-badge">FISSION DZONE REFCARD</span>
|
||||
<span class="card-badge">PATTERN</span>
|
||||
<h4 class="section-text-bold mt-4">
|
||||
New! Download the <span class="d-lg-block">Fission.io Refcard</span>
|
||||
Event Bridge
|
||||
</h4>
|
||||
<div class="card-shadow-content">
|
||||
<p class="section-text">
|
||||
Get started with Serverless on Kubernetes in 5 minutes! Learn how
|
||||
to set up Fission, its key concepts, how to create and invoke a
|
||||
function, monitor its performance, and more.
|
||||
In the world of interfaces, it is important to preserve (certain) events over multiple implementation of the interface.
|
||||
</p>
|
||||
<a
|
||||
href="https://platform9.com/wp-content/uploads/2019/03/dzone-refcard-fissionio.pdf"
|
||||
><button class="hero-mid align-self-end">Download Now!</button></a
|
||||
<a href="/docs/patterns/event-bridge-pattern/">
|
||||
<button class="hero-mid align-self-end">Read Now</button>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="card-shadow">
|
||||
<span class="card-badge">BEST PRACTICE</span>
|
||||
<h4 class="section-text-bold mt-4">
|
||||
CASE Action on next line
|
||||
</h4>
|
||||
<div class="card-shadow-content">
|
||||
<p class="section-text">
|
||||
A CASE action should start on a line after the possibility.
|
||||
</p>
|
||||
<a href="/docs/bestpractices/case-actions/"
|
||||
><button class="hero-mid-2 align-self-end">Read Now</button></a
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -358,36 +157,17 @@ images: ["images/og-image-fission.png"]
|
|||
|
||||
<div class="col-lg-4">
|
||||
<div class="card-shadow">
|
||||
<span class="card-badge">BLOG</span>
|
||||
<span class="card-badge">PATTERN</span>
|
||||
<h4 class="section-text-bold mt-4">
|
||||
Fission PostgreSQL Database <span class="d-lg-block">Sample</span>
|
||||
Façade
|
||||
</h4>
|
||||
<div class="card-shadow-content">
|
||||
<p class="section-text">
|
||||
Learn how to use Fission functions with PostgreSQL database and
|
||||
perform basic operations on it.
|
||||
</p>
|
||||
<a href="/blog/how-to-use-postgresql-database-with-fission-functions/"
|
||||
><button class="hero-mid-2 align-self-end">Read More</button></a
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="card-shadow">
|
||||
<span class="card-badge">BLOG</span>
|
||||
<h4 class="section-text-bold mt-4">
|
||||
Next.js Application with <span class="d-lg-block">Fission</span>
|
||||
</h4>
|
||||
<div class="card-shadow-content">
|
||||
<p class="section-text">
|
||||
Learn how you can create a Next.js application with Fission.
|
||||
We create a Next.js blog in this tutorial.
|
||||
The intent of this pattern is to provide a unified API to a single or a collection of potentially complex subsystems.
|
||||
</p>
|
||||
<a
|
||||
href="/blog/serverless-next.js-example-blog-with-fission/"
|
||||
><button class="hero-mid-2 align-self-end">Read More</button></a
|
||||
href="/docs/patterns/facade-pattern/"
|
||||
><button class="hero-mid-2 align-self-end">Read Now</button></a
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -407,52 +187,38 @@ images: ["images/og-image-fission.png"]
|
|||
|
||||
<div class="show-mobile">
|
||||
<div class="community-cards">
|
||||
<a href="/slack"
|
||||
<a href="https://discord.gg/4wbfNv3"
|
||||
><div class="card-shadow">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/slack.svg"
|
||||
width="30px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<p class="section-text-bold">Slack</p>
|
||||
<h2 style="padding-right: 0.8rem;"><i class="fab fa-discord"></i></h2>
|
||||
<h2 class="section-text-bold">Discord</h2>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Join the Fission community to engage with the fission team,
|
||||
interact with other users, and contribute ideas and feedback.
|
||||
Join the BC Community to engage with other BC Professionals.
|
||||
</p>
|
||||
</div></a
|
||||
>
|
||||
|
||||
<a href="https://github.com/fission"
|
||||
<a href="https://github.com/microsoft/alguidelines"
|
||||
><div class="card-shadow">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/github.svg"
|
||||
width="30px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<p class="section-text-bold">GitHub</p>
|
||||
<h2 style="padding-right: 0.8rem;"><i class="fab fa-github"></i></h2>
|
||||
<h2 class="section-text-bold">GitHub</h2>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Dive into the code and learn more about Fission. Submit PRs
|
||||
Dive into the code. Submit PRs
|
||||
and collaborate with other like-minded contributors.
|
||||
</p>
|
||||
</div></a
|
||||
>
|
||||
<a href="https://twitter.com/fissionio"
|
||||
<a href="https://twitter.com/search?q=%23bcalhelp"
|
||||
><div class="card-shadow twitter-card" style="margin-left: auto">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/twitter.svg"
|
||||
width="36px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<p class="section-text-bold">Twitter</p>
|
||||
<h2 style="padding-right: 0.8rem;"><i class="fab fa-twitter"></i></h2>
|
||||
<h2 class="section-text-bold">Twitter</h2>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Follow us <b class="text-highlight">@fissionio</b> to stay up
|
||||
to date with Fission news.
|
||||
Chat about this with the <b class="text-highlight">#bcalhelp</b> hashtag.
|
||||
</p>
|
||||
</div></a
|
||||
>
|
||||
|
|
@ -463,58 +229,44 @@ images: ["images/og-image-fission.png"]
|
|||
<div class="col-lg-8 community-cards show-desktop">
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<a href="/slack"
|
||||
<a href="https://discord.gg/4wbfNv3"
|
||||
><div class="card-shadow">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/slack.svg"
|
||||
width="30px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<p class="section-text-bold">Slack</p>
|
||||
<h2 style="padding-right: 0.8rem;"><i class="fab fa-discord"></i></h2>
|
||||
<h2 class="section-text-bold">Discord</h2>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Join the Fission community to engage with the fission team,
|
||||
interact with other users, and contribute ideas and feedback.
|
||||
Join the BC Community to engage with other BC Professionals.
|
||||
</p>
|
||||
</div></a
|
||||
>
|
||||
</div>
|
||||
<div class="col-lg-6">
|
||||
<a href="https://github.com/fission"
|
||||
<a href="https://github.com/microsoft/alguidelines"
|
||||
><div class="card-shadow">
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/github.svg"
|
||||
width="30px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<p class="section-text-bold">GitHub</p>
|
||||
<h2 style="padding-right: 0.8rem;"><i class="fab fa-github"></i></h2>
|
||||
<h2 class="section-text-bold">GitHub</h2>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Dive into the code and learn more about Fission. Submit PRs
|
||||
Dive into the code. Submit PRs
|
||||
and collaborate with other like-minded contributors.
|
||||
</p>
|
||||
</div></a
|
||||
>
|
||||
</div>
|
||||
<div class="col-lg-6">
|
||||
<a href="https://twitter.com/fissionio"
|
||||
<a href="https://twitter.com/search?q=%23bcalhelp"
|
||||
><div
|
||||
class="card-shadow twitter-card-desktop"
|
||||
style="margin-left: auto"
|
||||
>
|
||||
<div class="card-header-custom">
|
||||
<img
|
||||
src="/images/twitter.svg"
|
||||
width="36px"
|
||||
class="img-card-header"
|
||||
/>
|
||||
<p class="section-text-bold">Twitter</p>
|
||||
<h2 style="padding-right: 0.8rem;"><i class="fab fa-twitter"></i></h2>
|
||||
<h2 class="section-text-bold">Twitter</h2>
|
||||
</div>
|
||||
<p class="section-text">
|
||||
Follow us <b class="text-highlight">@fissionio</b> to stay up
|
||||
to date with Fission news.
|
||||
Chat about this with the <b class="text-highlight">#bcalhelp</b> hashtag.
|
||||
</p>
|
||||
</div></a
|
||||
>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: "Event Bridge"
|
||||
tags: [""]
|
||||
tags: ["Interface"]
|
||||
categories: ["Pattern"]
|
||||
---
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue