webinar: scaling coldfusion (cfml) applications with couchbase nosql server
DESCRIPTION
In modern applications, scalability is one of the most important keys to success. High availability requires distributed systems that can scale with load and data size. Couchbase has been recognized to be one of the fastest and easiest to scale NoSQL databases. Ortus Solutions has developed plugins for CFML applications (powered by ColdFusion and/or Railo) and Couchbase to bring this power to your CFML applications. Many modern applications are using NoSQL document stores for rapid development and flexible data models. Many data needs can be satisfied by storing JSON documents that allow for on-the-fly modifications. You can index JSON documents of any structure using map reduce functions, and execute queries against them. Couchbase will bring both scalability, flexible data models and much more to your CFML applications. In this webinar you'll see: Overview of Couchbase Server and NoSQL Document store Overview of ColdFusion (CFML) Applications Distribute Java EE sessions with Couchbase Railo Extension Leverage NoSQL JSON Document store from CFML Leverage Couchbase as a distributed cache from any CFML application.TRANSCRIPT
![Page 1: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/1.jpg)
Scaling ColdFusion (CFML) Apps with Couchbase
Tugdual “Tug” Grall
Technical Evangelist
Couchbase
Brad Wood
Technical Evangelist
Ortus Solutions
![Page 2: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/2.jpg)
Agenda
• Introduction to Couchbase• Company and Projects• NoSQL Database• Couchbase Architecture
• Ortus Solutions• Company and Projects• ColdFusion Markup Language• CFML Applications and Couchbase
• Q&A
![Page 3: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/3.jpg)
Couchbase Open Source Project
• Leading NoSQL database project focused on distributed database technology and surrounding ecosystem
• Supports both key-value and document-oriented use cases
• All components are available under the Apache 2.0 Public License
• Obtained as packaged software in both enterprise and community editions.
Couchbase Open Source
Project
![Page 5: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/5.jpg)
Couchbase Handles Real World Scale
![Page 6: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/6.jpg)
Easy Scalability
Consistent High Performance
Always On 24x365
Grow cluster without application changes, without downtime with a single click
Consistent sub-millisecond read and write response times with consistent high throughput
No downtime for software upgrades, hardware maintenance, etc.
Flexible Data Model
JSON document model with no fixed schema.
Couchbase Server Core Principles
![Page 7: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/7.jpg)
• Database stays online, no downtime for schema changes• Records can have different structures, there is no fixed schema• Model Data easier and faster -- agile rapid application
development
{ “ID”: 1, “FIRST”: “Dipti”, “LAST”: “Borkar”, “ZIP”: “94040”, “CITY”: “MV”, “STATE”: “CA”
}JSON
JSONJSON JSON
Flexible Data Model
![Page 8: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/8.jpg)
33 2
Write (‘set’) Operation2
Managed Cache
Dis
k Q
ueue
Disk
Replication Queue
App Server
Couchbase Server Node
Doc 1Doc 1
Doc 1
To other node
![Page 9: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/9.jpg)
COUCHBASE SERVER CLUSTER
Cluster-wide Basic Operation
• Docs distributed evenly across servers
• Each server stores both active and replica docsOnly one server active at a time
• Client library provides app with simple interface to database
• Cluster map provides map to which server doc is onApp never needs to know
• App reads, writes, updates docs
• Multiple app servers can access same document at same time
User Configured Replica Count = 1
READ/WRITE/UPDATE
ACTIVE
Doc 5
Doc 2
Doc
Doc
Doc
SERVER 1
ACTIVE
Doc 4
Doc 7
Doc
Doc
Doc
SERVER 2
Doc 8
ACTIVE
Doc 1
Doc 2
Doc
Doc
Doc
REPLICA
Doc 4
Doc 1
Doc 8
Doc
Doc
Doc
REPLICA
Doc 6
Doc 3
Doc 2
Doc
Doc
Doc
REPLICA
Doc 7
Doc 9
Doc 5
Doc
Doc
Doc
SERVER 3
Doc 6
APP SERVER 1
COUCHBASE Client Library
CLUSTER MAP
COUCHBASE Client Library
CLUSTER MAP
APP SERVER 2
Doc 9
![Page 10: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/10.jpg)
www.couchbase.com/develop
Go Clojure
Community SDKs
PythonRuby
Official SDKs
Couchbase SDK
![Page 11: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/11.jpg)
Ortus Solution and CFML Apps
![Page 12: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/12.jpg)
Ortus Solution
• CFML Gurus
• ColdBox MVC Platform and ContentBox CMS
• Consulting/Server Tuning
• Custom Development
• Training & Mentoring
![Page 13: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/13.jpg)
What is CFML?
• ColdFusion Markup Language
![Page 14: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/14.jpg)
What is CFML?
• ColdFusion Markup Language
• Supports templating & scripting
![Page 15: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/15.jpg)
What is CFML?
• ColdFusion Markup Language
• Supports templating & scripting
• Direct-compiles to bytecode
![Page 16: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/16.jpg)
What is CFML?
• ColdFusion Markup Language
• Supports templating & scripting
• Direct-compiles to bytecode
• Runs on JVM in a servlet container
![Page 17: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/17.jpg)
What is CFML?
• ColdFusion Markup Language
• Supports templating & scripting
• Direct-compiles to bytecode
• Runs on JVM in a servlet container
• Deep integration with Java
![Page 18: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/18.jpg)
CFML Vendor Platforms
![Page 19: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/19.jpg)
CFML Vendor Platforms
![Page 20: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/20.jpg)
CFML Vendor Platforms
![Page 21: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/21.jpg)
CFML Vendor Platforms
![Page 22: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/22.jpg)
Couchbase in CFML
?
![Page 23: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/23.jpg)
Couchbase in CFMLORM 2nd Level Cache
![Page 24: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/24.jpg)
Couchbase in CFMLORM 2nd Level Cache
![Page 25: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/25.jpg)
Couchbase in CFMLCacheBox Cache Aggregator and API
![Page 26: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/26.jpg)
Couchbase in CFMLCacheBox Cache Aggregator and API
![Page 27: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/27.jpg)
Couchbase in CFMLCacheBox Cache Aggregator and API
![Page 28: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/28.jpg)
Couchbase in CFMLCacheBox Cache Aggregator and API
![Page 29: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/29.jpg)
Couchbase in CFMLCacheBox Cache Aggregator and API
![Page 30: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/30.jpg)
Couchbase in CFMLCacheBox Cache Aggregator and API
![Page 31: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/31.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
![Page 32: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/32.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
![Page 33: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/33.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
![Page 34: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/34.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
![Page 35: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/35.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
![Page 36: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/36.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
![Page 37: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/37.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
![Page 38: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/38.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
![Page 39: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/39.jpg)
Couchbase in CFMLOrtus Couchbase Railo Extension
- JSON Marshalling
- Store/Retrieve Documents
- Create/Query Views
- Map/Reduce
![Page 40: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/40.jpg)
Demonstration
![Page 41: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/41.jpg)
Conclusion• Couchbase is a Scalable NoSQL Database
• Key/Value and Document Store• Supported by many languages including Java and CFML• http://www.couchbase.com/download
• Ortus Solutions• Has integrated Couchbase to CFML Ecosystem• Including an easy to install and configure extension for Railo• http://www.ortussolutions.com/products
• CFML Developers can now:• Create NoSQL/JSON based application• Use Couchbase as distributed Cache
![Page 42: Webinar: Scaling ColdFusion (CFML) Applications with Couchbase NoSQL Server](https://reader035.vdocuments.net/reader035/viewer/2022070316/555c23c1d8b42a0b418b4b4f/html5/thumbnails/42.jpg)