SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
e
GLASS: A Share Everything
Architecture for Seaside
Dale Henrichs
8/28/2008
2 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
What is GLASS?
GemStone, Linux, Apache, Seaside,
Smalltalk
 Persistence and scalability for Seaside
applications
 FREE for commercial use
• http://seaside.gemstone.com/downloads.html
3 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
What is GLASS?
GLASS
 self-contained development environment
for GemStone/S
• Monticello for source code control
• OminiBrowser-based development tools
 Easy to move apps from Squeak to GLASS
 FREE for commercial use
4 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
What is GLASS?
Appliance
 VMWare running an instance of GLASS
• 3 Seaside VMs
• 1 Maintenance VM
• 1 (or more) development Vms connected to
Squeak
 FREE for commercial use
5 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Share Nothing Architecture
Scaling Story
 Every time you need data, you hit the data
base
 Distributed computing and distributed data
• add additional resources to meet demand
 Well suited to stateless web servers and
uncomplicated data models
6 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Share Nothing Architecture
Drawbacks
 Scaling limited by available electricity
 distributed data constrains model
complexity
7 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Share Nothing Architecture
Smalltalk is not Share Nothing
8 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Share Everything
Smalltalk is
 Share Everything inside the image
 Share Nothing outside the image
9 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
GemStone/S
GemStone/S is designed for
 very large images
 shared between multiple VMs
 running on multiple computers
GemStone/S is the perfect vehicle for
doing Share Everything with Share
Nothing scalability
10 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Seaside Scalability Options
Persistent Session State
Optional _s and _k
One Session per VM
11 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Scalability – Persistent Session State
Scaling Story
 store/share Seaside session state in
repository
 deploy any number of VMs
 round robin requests without session
affinity
12 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Scalability – Persistent Session State
Drawbacks
 request rate limited by commit rate
• depending upon hardware limit kicks in at about
10-100 commits/second
 scaling requires investment in more
sophisticated hardware
• NOT commodity hardware
13 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Scalability – Optional _k _s
Scaling Story
 Avoid saving 'unnecessary' session state
• reduce commit rate
 Performance Potential
• 7K requests/second
• 128 VMs
• 72 CPUs
• 7 machines
14 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Scalability – Optional _k _s
Drawbacks
 application must be changed (RESTful)
15 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Scalability – One Session per VM
Scaling Story
 session state in temporary memory
 VM dedicated to session for its lifetime
 performance similar to Optional _k _s
16 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Scalability – One Session per VM
Drawbacks
 need more characterization work
 swap/real memory limitiations
• need to characterize tradeoffs
17 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
GLASS
A Seaside application written to run in
Squeak can be ported to GLASS
'without modification'
 Transparent Persistence
 Transparent Scalability
• persistent session state
• one session per vm
18 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Transparent Development
Multi-image development support
 auto commit
 object log
 debugging
• breakpoints
 profiling
19 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Demo
20 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Futures
GemStone 3.0
 non-Tranlogged objects
 Native code generation
 Improved Exception Handling
 Foreign Function Interface
...and Beyond?
 sharding for GemStone/S
21 Copyright © 2008, GemStone Systems Inc. All Rights Reserved.
Questions?
http://seaside.st
http://seaside.gemstone.com
http://gemstonesoup.wordpress.com

Mais conteúdo relacionado

Destaque

Glass architecture
Glass architectureGlass architecture
Glass architectureChristy
 
Glass presentation
Glass presentationGlass presentation
Glass presentationShourya Puri
 
Glass manufacture
Glass manufactureGlass manufacture
Glass manufacturecspurush
 
Different types of glasses
Different types of glassesDifferent types of glasses
Different types of glassesKrishna Sahit
 

Destaque (6)

Glass architecture
Glass architectureGlass architecture
Glass architecture
 
Glass presentation
Glass presentationGlass presentation
Glass presentation
 
Glass manufacture
Glass manufactureGlass manufacture
Glass manufacture
 
Glass
GlassGlass
Glass
 
Different types of glasses
Different types of glassesDifferent types of glasses
Different types of glasses
 
Google glass ppt
Google glass pptGoogle glass ppt
Google glass ppt
 

Semelhante a GLASS: A Share Everything Architecture for Seaside

Glass
GlassGlass
GlassESUG
 
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0xKinAnx
 
INDUSTRY-LEADING TECHNOLOGY FOR LONG TERM RETENTION OF BACKUPS IN THE CLOUD
INDUSTRY-LEADING  TECHNOLOGY FOR LONG TERM RETENTION OF BACKUPS IN THE CLOUDINDUSTRY-LEADING  TECHNOLOGY FOR LONG TERM RETENTION OF BACKUPS IN THE CLOUD
INDUSTRY-LEADING TECHNOLOGY FOR LONG TERM RETENTION OF BACKUPS IN THE CLOUDEMC
 
Presentation integration vmware with emc storage
Presentation   integration vmware with emc storagePresentation   integration vmware with emc storage
Presentation integration vmware with emc storagesolarisyourep
 
Gemstone RoadMap
Gemstone RoadMapGemstone RoadMap
Gemstone RoadMapESUG
 
Virtualization on IBM Blade Center
Virtualization on IBM Blade CenterVirtualization on IBM Blade Center
Virtualization on IBM Blade CenterErik Bussink
 
Gemstone 64 Product Overview
Gemstone 64 Product OverviewGemstone 64 Product Overview
Gemstone 64 Product OverviewESUG
 
Efektywna Witualizacja Citrix na macierzach dyskowych NetApp
Efektywna Witualizacja Citrix na macierzach dyskowych NetAppEfektywna Witualizacja Citrix na macierzach dyskowych NetApp
Efektywna Witualizacja Citrix na macierzach dyskowych NetAppPeter Ocasek
 
Running a High-Performance Kubernetes Cluster with Amazon EKS (CON318-R1) - A...
Running a High-Performance Kubernetes Cluster with Amazon EKS (CON318-R1) - A...Running a High-Performance Kubernetes Cluster with Amazon EKS (CON318-R1) - A...
Running a High-Performance Kubernetes Cluster with Amazon EKS (CON318-R1) - A...Amazon Web Services
 
Vx Rack : L'hyperconvergence avec l'experience VCE
Vx Rack : L'hyperconvergence avec l'experience VCEVx Rack : L'hyperconvergence avec l'experience VCE
Vx Rack : L'hyperconvergence avec l'experience VCERSD
 
Virtualización en la Red del Data Center - Extreme Networks
Virtualización en la Red del Data Center - Extreme NetworksVirtualización en la Red del Data Center - Extreme Networks
Virtualización en la Red del Data Center - Extreme NetworksAEC Networks
 
Transforming Mission Critical Applications
Transforming Mission Critical ApplicationsTransforming Mission Critical Applications
Transforming Mission Critical ApplicationsCenk Ersoy
 
The Java Evolution Mismatch by Gil Tene, CTO at Azul Systems
The Java Evolution Mismatch by Gil Tene, CTO at Azul SystemsThe Java Evolution Mismatch by Gil Tene, CTO at Azul Systems
The Java Evolution Mismatch by Gil Tene, CTO at Azul SystemszuluJDK
 
Presentazione SimpliVity @ VMUGIT UserCon 2015
Presentazione SimpliVity @ VMUGIT UserCon 2015Presentazione SimpliVity @ VMUGIT UserCon 2015
Presentazione SimpliVity @ VMUGIT UserCon 2015VMUG IT
 
OSSEU18: From Handcraft to Unikraft: Simpler Unikernelization of Your Applica...
OSSEU18: From Handcraft to Unikraft: Simpler Unikernelization of Your Applica...OSSEU18: From Handcraft to Unikraft: Simpler Unikernelization of Your Applica...
OSSEU18: From Handcraft to Unikraft: Simpler Unikernelization of Your Applica...The Linux Foundation
 
Presentation symmetrix vmax family with enginuity 5876
Presentation   symmetrix vmax family with enginuity 5876Presentation   symmetrix vmax family with enginuity 5876
Presentation symmetrix vmax family with enginuity 5876solarisyougood
 
EMC Symmetrix VMAX: An Introduction to Enterprise Storage: Brian Boyd, Varrow...
EMC Symmetrix VMAX: An Introduction to Enterprise Storage: Brian Boyd, Varrow...EMC Symmetrix VMAX: An Introduction to Enterprise Storage: Brian Boyd, Varrow...
EMC Symmetrix VMAX: An Introduction to Enterprise Storage: Brian Boyd, Varrow...Brian Boyd
 
How to deploy SQL Server on an Microsoft Azure virtual machines
How to deploy SQL Server on an Microsoft Azure virtual machinesHow to deploy SQL Server on an Microsoft Azure virtual machines
How to deploy SQL Server on an Microsoft Azure virtual machinesSolarWinds
 

Semelhante a GLASS: A Share Everything Architecture for Seaside (20)

Glass
GlassGlass
Glass
 
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
 
INDUSTRY-LEADING TECHNOLOGY FOR LONG TERM RETENTION OF BACKUPS IN THE CLOUD
INDUSTRY-LEADING  TECHNOLOGY FOR LONG TERM RETENTION OF BACKUPS IN THE CLOUDINDUSTRY-LEADING  TECHNOLOGY FOR LONG TERM RETENTION OF BACKUPS IN THE CLOUD
INDUSTRY-LEADING TECHNOLOGY FOR LONG TERM RETENTION OF BACKUPS IN THE CLOUD
 
Presentation integration vmware with emc storage
Presentation   integration vmware with emc storagePresentation   integration vmware with emc storage
Presentation integration vmware with emc storage
 
Gemstone RoadMap
Gemstone RoadMapGemstone RoadMap
Gemstone RoadMap
 
Virtualization on IBM Blade Center
Virtualization on IBM Blade CenterVirtualization on IBM Blade Center
Virtualization on IBM Blade Center
 
Gemstone 64 Product Overview
Gemstone 64 Product OverviewGemstone 64 Product Overview
Gemstone 64 Product Overview
 
Efektywna Witualizacja Citrix na macierzach dyskowych NetApp
Efektywna Witualizacja Citrix na macierzach dyskowych NetAppEfektywna Witualizacja Citrix na macierzach dyskowych NetApp
Efektywna Witualizacja Citrix na macierzach dyskowych NetApp
 
Running a High-Performance Kubernetes Cluster with Amazon EKS (CON318-R1) - A...
Running a High-Performance Kubernetes Cluster with Amazon EKS (CON318-R1) - A...Running a High-Performance Kubernetes Cluster with Amazon EKS (CON318-R1) - A...
Running a High-Performance Kubernetes Cluster with Amazon EKS (CON318-R1) - A...
 
Vx Rack : L'hyperconvergence avec l'experience VCE
Vx Rack : L'hyperconvergence avec l'experience VCEVx Rack : L'hyperconvergence avec l'experience VCE
Vx Rack : L'hyperconvergence avec l'experience VCE
 
Virtualización en la Red del Data Center - Extreme Networks
Virtualización en la Red del Data Center - Extreme NetworksVirtualización en la Red del Data Center - Extreme Networks
Virtualización en la Red del Data Center - Extreme Networks
 
Transforming Mission Critical Applications
Transforming Mission Critical ApplicationsTransforming Mission Critical Applications
Transforming Mission Critical Applications
 
The Java Evolution Mismatch by Gil Tene, CTO at Azul Systems
The Java Evolution Mismatch by Gil Tene, CTO at Azul SystemsThe Java Evolution Mismatch by Gil Tene, CTO at Azul Systems
The Java Evolution Mismatch by Gil Tene, CTO at Azul Systems
 
Presentazione SimpliVity @ VMUGIT UserCon 2015
Presentazione SimpliVity @ VMUGIT UserCon 2015Presentazione SimpliVity @ VMUGIT UserCon 2015
Presentazione SimpliVity @ VMUGIT UserCon 2015
 
Symm.63
Symm.63Symm.63
Symm.63
 
OSSEU18: From Handcraft to Unikraft: Simpler Unikernelization of Your Applica...
OSSEU18: From Handcraft to Unikraft: Simpler Unikernelization of Your Applica...OSSEU18: From Handcraft to Unikraft: Simpler Unikernelization of Your Applica...
OSSEU18: From Handcraft to Unikraft: Simpler Unikernelization of Your Applica...
 
Presentation symmetrix vmax family with enginuity 5876
Presentation   symmetrix vmax family with enginuity 5876Presentation   symmetrix vmax family with enginuity 5876
Presentation symmetrix vmax family with enginuity 5876
 
Jetty Vs Tomcat
Jetty Vs TomcatJetty Vs Tomcat
Jetty Vs Tomcat
 
EMC Symmetrix VMAX: An Introduction to Enterprise Storage: Brian Boyd, Varrow...
EMC Symmetrix VMAX: An Introduction to Enterprise Storage: Brian Boyd, Varrow...EMC Symmetrix VMAX: An Introduction to Enterprise Storage: Brian Boyd, Varrow...
EMC Symmetrix VMAX: An Introduction to Enterprise Storage: Brian Boyd, Varrow...
 
How to deploy SQL Server on an Microsoft Azure virtual machines
How to deploy SQL Server on an Microsoft Azure virtual machinesHow to deploy SQL Server on an Microsoft Azure virtual machines
How to deploy SQL Server on an Microsoft Azure virtual machines
 

Mais de ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingESUG
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in PharoESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapESUG
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsESUG
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector TuningESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FutureESUG
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the DebuggerESUG
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing ScoreESUG
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptESUG
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsESUG
 

Mais de ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Último

Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...ScyllaDB
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimaginedpanagenda
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxFIDO Alliance
 
Your enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jYour enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jNeo4j
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxFIDO Alliance
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideStefan Dietze
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Hiroshi SHIBATA
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxFIDO Alliance
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfUK Journal
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfFIDO Alliance
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandIES VE
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptxFIDO Alliance
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024Lorenzo Miniero
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FIDO Alliance
 
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPTiSEO AI
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?Mark Billinghurst
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceSamy Fodil
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 

Último (20)

Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
Your enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jYour enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4j
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & Ireland
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 

GLASS: A Share Everything Architecture for Seaside

  • 1. Copyright © 2008, GemStone Systems Inc. All Rights Reserved. e GLASS: A Share Everything Architecture for Seaside Dale Henrichs 8/28/2008
  • 2. 2 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. What is GLASS? GemStone, Linux, Apache, Seaside, Smalltalk  Persistence and scalability for Seaside applications  FREE for commercial use • http://seaside.gemstone.com/downloads.html
  • 3. 3 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. What is GLASS? GLASS  self-contained development environment for GemStone/S • Monticello for source code control • OminiBrowser-based development tools  Easy to move apps from Squeak to GLASS  FREE for commercial use
  • 4. 4 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. What is GLASS? Appliance  VMWare running an instance of GLASS • 3 Seaside VMs • 1 Maintenance VM • 1 (or more) development Vms connected to Squeak  FREE for commercial use
  • 5. 5 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Share Nothing Architecture Scaling Story  Every time you need data, you hit the data base  Distributed computing and distributed data • add additional resources to meet demand  Well suited to stateless web servers and uncomplicated data models
  • 6. 6 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Share Nothing Architecture Drawbacks  Scaling limited by available electricity  distributed data constrains model complexity
  • 7. 7 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Share Nothing Architecture Smalltalk is not Share Nothing
  • 8. 8 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Share Everything Smalltalk is  Share Everything inside the image  Share Nothing outside the image
  • 9. 9 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. GemStone/S GemStone/S is designed for  very large images  shared between multiple VMs  running on multiple computers GemStone/S is the perfect vehicle for doing Share Everything with Share Nothing scalability
  • 10. 10 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Seaside Scalability Options Persistent Session State Optional _s and _k One Session per VM
  • 11. 11 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Scalability – Persistent Session State Scaling Story  store/share Seaside session state in repository  deploy any number of VMs  round robin requests without session affinity
  • 12. 12 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Scalability – Persistent Session State Drawbacks  request rate limited by commit rate • depending upon hardware limit kicks in at about 10-100 commits/second  scaling requires investment in more sophisticated hardware • NOT commodity hardware
  • 13. 13 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Scalability – Optional _k _s Scaling Story  Avoid saving 'unnecessary' session state • reduce commit rate  Performance Potential • 7K requests/second • 128 VMs • 72 CPUs • 7 machines
  • 14. 14 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Scalability – Optional _k _s Drawbacks  application must be changed (RESTful)
  • 15. 15 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Scalability – One Session per VM Scaling Story  session state in temporary memory  VM dedicated to session for its lifetime  performance similar to Optional _k _s
  • 16. 16 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Scalability – One Session per VM Drawbacks  need more characterization work  swap/real memory limitiations • need to characterize tradeoffs
  • 17. 17 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. GLASS A Seaside application written to run in Squeak can be ported to GLASS 'without modification'  Transparent Persistence  Transparent Scalability • persistent session state • one session per vm
  • 18. 18 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Transparent Development Multi-image development support  auto commit  object log  debugging • breakpoints  profiling
  • 19. 19 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Demo
  • 20. 20 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Futures GemStone 3.0  non-Tranlogged objects  Native code generation  Improved Exception Handling  Foreign Function Interface ...and Beyond?  sharding for GemStone/S
  • 21. 21 Copyright © 2008, GemStone Systems Inc. All Rights Reserved. Questions? http://seaside.st http://seaside.gemstone.com http://gemstonesoup.wordpress.com