SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
KNOTX.io
Knot.x 1.X
@knotx_project
https://github.com/Cognifide/knotx/projects/6
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
Data Bridge
@knotx_project
Knot.x 1.4.0
https://github.com/Knotx/knotx-data-bridge
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
Data Bridge
employees from the HTTP REST service
transactions from the HTTP SOAP service
salaries from the PostgreSQL database
search results connected from Solr
KNOTX.io
Data Bridge
KNOTX.io
Forms
@knotx_project
Knot.x 1.5.0-SNAPSHOT
https://github.com/Knotx/knotx-forms
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
Wizards
password
token
home
page
KNOTX.io
Template Engine
@knotx_project
Knot.x 1.5.0-SNAPSHOT
https://github.com/Knotx/knotx-template-engine
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
More engines
KNOTX.io
Snippet metamorphose
1. Knots names
2. Attributes names
3. (Optional in 1.X) Snippet tag
4. (Optional in 1.X) Attribute prefix
KNOTX.io
Fallback mechanism
@knotx_project
Knot.x 1.5.0-SNAPSHOT
https://github.com/Cognifide/knotx/pull/468
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
KNOTX.io
JUnit 5
@knotx_project
Knot.x 1.4.0
https://github.com/Knotx/knotx-junit5
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
XX
2
1
KNOTX.io
Knot.x 2.X
@knotx_project
https://github.com/Cognifide/knotx/projects/5
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
Knot.x Core: Open API specification
@knotx_project
Knot.x 2.0-SNAPSHOT
https://github.com/Cognifide/knotx/issues/430
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
Reactive RESTful HTTP Server
* https://github.com/Cognifide/knotx/tree/project/knotx-2
KNOTX.io
Standardized & HTTP
OpenAPI
Specification
KNOTX.io
Standardized & HTTP
OpenAPI
Specification
URLFile
KNOTX.iohttps://github.com/Knotx/knotx-example-project/pull/30
Configurable & RESTful
openapi.yaml
business logic
KNOTX.iohttps://github.com/Knotx/knotx-example-project/pull/30
Configurable & RESTful
{
operationId = te-local-get
handlers = ${routing.commonHandlers.request} [
...
] ${routing.commonHandlers.response}
}
server.conf
KNOTX.iohttps://github.com/Knotx/knotx-example-project/pull/30
Configurable & RESTful
{
operationId = te-local-get
handlers = ${routing.commonHandlers.request} [
…
] ${routing.commonHandlers.response}
}
{
name = repositoryHandler
config.proxyAddress = ${global.repositories.fileSystemRepo.address}
},
{
name = splitterHandler
config.proxyAddress = ${global.splitter.address}
}
{
name = knotEngineHandler
config.routing = {
proxyAddress = ${global.forms.address},
onTransition.next {
address = ${global.bridge.address},
onTransition.next {
address = ${global.hbs.address}
}
}
}
}
{
name = assemblerHandler
config.proxyAddress = ${global.assembler.address}
}
KNOTX.io
Knot.x Core: Pluggable Fragments
@knotx_project
Knot.x 2.0-SNAPSHOT
https://github.com/Cognifide/knotx/issues/466#issuecomment-43531179
0
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
KNOTX.io
Knot.x Core: Optimisations
@knotx_project
Knot.x 2.0-SNAPSHOT
https://github.com/Cognifide/knotx/issues/XYZ
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
Core optimisations
- Internal traffic between Repository, Splitter and Assembler
- “PDP optimisation” - many snippets with same data
KNOTX.io
Circuit breaker & cache
@knotx_project
Knot.x 2.0-SNAPSHOT
https://github.com/Cognifide/knotx/issues/454
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
CIRCUIT
BREAKER
REDIS
HEALTH
CHECKER
BUSINESS
LOGIC
KNOTX.io
CIRCUIT
BREAKER
REDIS
HEALTH
CHECKER
BUSINESS
LOGIC
HEALTH
CHECKER
KNOTX.io
CIRCUIT
BREAKER
REDIS
HEALTH
CHECKER
BUSINESS
LOGIC
HEALTH
CHECKER
KNOTX.io
CIRCUIT
BREAKER
REDIS
HEALTH
CHECKER
BUSINESS
LOGIC
KNOTX.io
Goodbye to:
- Gateway API
- “default” and “custom” flow
- <script>
- Knots: Service, Action, Handlebars
KNOTX.io
Example project
@knotx_project
Knot.x 2.0-SNAPSHOT
https://github.com/Knotx/knotx-example-project
Marcin Czeczko | Maciej Laskowski | Tomasz Michalak
KNOTX.io
Example project content
- Backend integration
- Client side integration via web sockets
- Forms example
- Custom snippet syntax (non handlebars)
- Project Starter Kit (how to use Knot.x in project) with Gradle and Maven
- Docker image with sample cluster config
KNOTX.io
Q&A

Mais conteúdo relacionado

Mais procurados

Info 2402 assignment 2_ crawler
Info 2402 assignment 2_ crawlerInfo 2402 assignment 2_ crawler
Info 2402 assignment 2_ crawler
Shahriar Rafee
 
Share
ShareShare
Share
NX21
 

Mais procurados (17)

Decentralized storage IPFS & Ulord
Decentralized storage   IPFS & UlordDecentralized storage   IPFS & Ulord
Decentralized storage IPFS & Ulord
 
My Heart Began To Sync: A Story About Progress Bars
My Heart Began To Sync: A Story About Progress BarsMy Heart Began To Sync: A Story About Progress Bars
My Heart Began To Sync: A Story About Progress Bars
 
Spatial MongoDB, Node.JS, and Express - server-side JS for your application
Spatial MongoDB, Node.JS, and Express - server-side JS for your applicationSpatial MongoDB, Node.JS, and Express - server-side JS for your application
Spatial MongoDB, Node.JS, and Express - server-side JS for your application
 
Info 2402 assignment 2_ crawler
Info 2402 assignment 2_ crawlerInfo 2402 assignment 2_ crawler
Info 2402 assignment 2_ crawler
 
Monitoramento com ELK - Elasticsearch - Logstash - Kibana
Monitoramento com ELK - Elasticsearch - Logstash - KibanaMonitoramento com ELK - Elasticsearch - Logstash - Kibana
Monitoramento com ELK - Elasticsearch - Logstash - Kibana
 
A Method for Dynamic Packing of Data Blocks for Over-the-Network Indexing
A Method for Dynamic Packing of Data Blocks for Over-the-Network IndexingA Method for Dynamic Packing of Data Blocks for Over-the-Network Indexing
A Method for Dynamic Packing of Data Blocks for Over-the-Network Indexing
 
Mongodb beijingconf yottaa_3.3
Mongodb beijingconf yottaa_3.3Mongodb beijingconf yottaa_3.3
Mongodb beijingconf yottaa_3.3
 
Building a professional, maintainable rest api architecture with asp.net core...
Building a professional, maintainable rest api architecture with asp.net core...Building a professional, maintainable rest api architecture with asp.net core...
Building a professional, maintainable rest api architecture with asp.net core...
 
ClickHouse Defense Against the Dark Arts - Intro to Security and Privacy
ClickHouse Defense Against the Dark Arts - Intro to Security and PrivacyClickHouse Defense Against the Dark Arts - Intro to Security and Privacy
ClickHouse Defense Against the Dark Arts - Intro to Security and Privacy
 
Share
ShareShare
Share
 
Back to Basics Spanish 4 Introduction to sharding
Back to Basics Spanish 4 Introduction to shardingBack to Basics Spanish 4 Introduction to sharding
Back to Basics Spanish 4 Introduction to sharding
 
Side by Side with Elasticsearch and Solr
Side by Side with Elasticsearch and SolrSide by Side with Elasticsearch and Solr
Side by Side with Elasticsearch and Solr
 
[GCP Summit 2018] Kubernetes with Nginx and Elasticsearch on GCP
[GCP Summit 2018] Kubernetes with Nginx and Elasticsearch on GCP[GCP Summit 2018] Kubernetes with Nginx and Elasticsearch on GCP
[GCP Summit 2018] Kubernetes with Nginx and Elasticsearch on GCP
 
Back to Basics Webinar 3: Introduction to Replica Sets
Back to Basics Webinar 3: Introduction to Replica SetsBack to Basics Webinar 3: Introduction to Replica Sets
Back to Basics Webinar 3: Introduction to Replica Sets
 
Scrapy
ScrapyScrapy
Scrapy
 
Back to Basics Spanish Webinar 3 - Introducción a los replica sets
Back to Basics Spanish Webinar 3 - Introducción a los replica setsBack to Basics Spanish Webinar 3 - Introducción a los replica sets
Back to Basics Spanish Webinar 3 - Introducción a los replica sets
 
Elasticsearch und die Java-Welt
Elasticsearch und die Java-WeltElasticsearch und die Java-Welt
Elasticsearch und die Java-Welt
 

Semelhante a Knot.x 1.X / 2.0 roadmap

Блохин Леонид - "Mist, как часть Hydrosphere"
Блохин Леонид - "Mist, как часть Hydrosphere"Блохин Леонид - "Mist, как часть Hydrosphere"
Блохин Леонид - "Mist, как часть Hydrosphere"
Provectus
 

Semelhante a Knot.x 1.X / 2.0 roadmap (20)

Webinaire 2 de la série « Retour aux fondamentaux » : Votre première applicat...
Webinaire 2 de la série « Retour aux fondamentaux » : Votre première applicat...Webinaire 2 de la série « Retour aux fondamentaux » : Votre première applicat...
Webinaire 2 de la série « Retour aux fondamentaux » : Votre première applicat...
 
Back to Basics Webinar 2 - Your First MongoDB Application
Back to  Basics Webinar 2 - Your First MongoDB ApplicationBack to  Basics Webinar 2 - Your First MongoDB Application
Back to Basics Webinar 2 - Your First MongoDB Application
 
Back to Basics Webinar 2: Your First MongoDB Application
Back to Basics Webinar 2: Your First MongoDB ApplicationBack to Basics Webinar 2: Your First MongoDB Application
Back to Basics Webinar 2: Your First MongoDB Application
 
Sandboxing WebKitGTK (GUADEC 2019)
Sandboxing WebKitGTK (GUADEC 2019)Sandboxing WebKitGTK (GUADEC 2019)
Sandboxing WebKitGTK (GUADEC 2019)
 
Блохин Леонид - "Mist, как часть Hydrosphere"
Блохин Леонид - "Mist, как часть Hydrosphere"Блохин Леонид - "Mist, как часть Hydrosphere"
Блохин Леонид - "Mist, как часть Hydrosphere"
 
Practical Use of MongoDB for Node.js
Practical Use of MongoDB for Node.jsPractical Use of MongoDB for Node.js
Practical Use of MongoDB for Node.js
 
Conceptos básicos. Seminario web 2: Su primera aplicación MongoDB
 Conceptos básicos. Seminario web 2: Su primera aplicación MongoDB Conceptos básicos. Seminario web 2: Su primera aplicación MongoDB
Conceptos básicos. Seminario web 2: Su primera aplicación MongoDB
 
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + KubernetesMongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
 
AFUP Lorraine - Symfony Webpack Encore
AFUP Lorraine - Symfony Webpack EncoreAFUP Lorraine - Symfony Webpack Encore
AFUP Lorraine - Symfony Webpack Encore
 
Back to Basics, webinar 2: La tua prima applicazione MongoDB
Back to Basics, webinar 2: La tua prima applicazione MongoDBBack to Basics, webinar 2: La tua prima applicazione MongoDB
Back to Basics, webinar 2: La tua prima applicazione MongoDB
 
Managing Your Content with Elasticsearch
Managing Your Content with ElasticsearchManaging Your Content with Elasticsearch
Managing Your Content with Elasticsearch
 
Data science at the command line
Data science at the command lineData science at the command line
Data science at the command line
 
OSCON 2011 CouchApps
OSCON 2011 CouchAppsOSCON 2011 CouchApps
OSCON 2011 CouchApps
 
MongoDB.local DC 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local DC 2018: MongoDB Ops Manager + KubernetesMongoDB.local DC 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local DC 2018: MongoDB Ops Manager + Kubernetes
 
Service Discovery using etcd, Consul and Kubernetes
Service Discovery using etcd, Consul and KubernetesService Discovery using etcd, Consul and Kubernetes
Service Discovery using etcd, Consul and Kubernetes
 
OSCON 2011 Learning CouchDB
OSCON 2011 Learning CouchDBOSCON 2011 Learning CouchDB
OSCON 2011 Learning CouchDB
 
GraphConnect 2014 SF: From Zero to Graph in 120: Scale
GraphConnect 2014 SF: From Zero to Graph in 120: ScaleGraphConnect 2014 SF: From Zero to Graph in 120: Scale
GraphConnect 2014 SF: From Zero to Graph in 120: Scale
 
SharePoint for the .NET Developer
SharePoint for the .NET DeveloperSharePoint for the .NET Developer
SharePoint for the .NET Developer
 
How sitecore depends on mongo db for scalability and performance, and what it...
How sitecore depends on mongo db for scalability and performance, and what it...How sitecore depends on mongo db for scalability and performance, and what it...
How sitecore depends on mongo db for scalability and performance, and what it...
 
Nodejs and WebSockets
Nodejs and WebSocketsNodejs and WebSockets
Nodejs and WebSockets
 

Último

Último (20)

Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

Knot.x 1.X / 2.0 roadmap