SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
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

Más contenido relacionado

Destacado

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
 

Destacado (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
 

Similar 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
 

Similar 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
 

Más 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
 

Más 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

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 

Último (20)

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 

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