SlideShare a Scribd company logo
1 of 30
www.jarn.com
Matthew Wilkes
Jarn
www.jarn.com
High Performance made easy
Some tips and tricks that defy conventional wisdom
www.jarn.com
About
me
Matthew Wilkes
Former Bristolian
living in Berlin
Working at Jarn
Plone 4 FWT
member
www.jarn.com
Old wives’ tales
www.jarn.com
Performance ‘is’…
… never waking an object
… avoiding adapter lookups
… heavily optimising your python code
www.jarn.com
What’s really important
•Planning
• What will be the profile of reads/writes be?
•Agility
• Defer optimisation as late as you can
www.jarn.com
What’s really important
•Cacheability
• Can the design be made more cacheable?
•Analysis
• Real world numbers, not just profiling code
www.jarn.com
Know your users
Find out expected usage
patterns
Are accesses distributed evenly
or are there some content
hotspots?
Are you using the right
technologies for the load?
www.jarn.com
Heard it on the grapevine!
FACT: The catalogue is fast
MYTH: “You should never wake objects”
www.jarn.com
BURN HIM
www.jarn.com
No, really. Look.
What if we want some basic
information from some
specific objects?
Waking them is faster for up to
about 50 objects 0
40
80
120
160
200
0 10 20 30 40 50 60 70 80 90
Single attribute, known location
Traversal Catalogue
www.jarn.com
No, really. Look.
Or we might want to show a
folder listing
Catalogue is faster for much
smaller object sets
0
20
40
60
80
100
0 10 20 30 40 50 60 70 80 90
5 attributes, known location
Traversal Catalogue
www.jarn.com
I should forget the catalog?
NO! Remember agility.
Not catalogue specific, make more decisions based
on real numbers.
Until you’ve written your code you don’t know if you
should use the catalog or not.
www.jarn.com
Become a catalogue agnostic
www.jarn.com
(be indifferent to brains)
Photo: Kevin Dooley
www.jarn.com
What does that mean?
Catalogue brains are very different to real objects
We can’t call methods
The same data is exposed differently
ZCA is designed to allow us to be implementation
agnostic
www.jarn.com
Tip: Register an adapter!
Your content has an interface anyway, right?
Register an adapter from ICatalogBrain to it
Implement data from the catalogue directly
Use a custom __getattr__ to allow fallback
www.jarn.com
Tip: Register an adapter!
Your code doesn’t know if it is dealing with a brain
or a real object – your catalogue fiddling is deferred
Reduces the amount of stuff you need to keep in
your head
www.jarn.com
www.jarn.com
Real numbers
Use Apache CustomLog or HAProxy logs to get
request times
Good: If you’re iterating with a customer run it there
Better: Soft-launch with a subset of users and run
there!
www.jarn.com
Varnish HTTP Cache
HTTP caching is the
single most powerful
trick we have
Improves read
performance by 2-3
orders of magnitude
Leaves the instances
free for writes
www.jarn.com
Anonymous users
Easiest to cache for - Varnish + plone.app.caching
Almost everything can be kept in the cache
Need to balance longer TTLs with difficulty of
getting PURGE right.
www.jarn.com
Authenticated users
Only images, JS and CSS cacheable at first glance
Pages refer to the username and some things are
role dependent.
No way to solve this problem in the general case
www.jarn.com
Page composition
But we don’t care about the
general case
We know the site we’re making
Use ESIs to separate content
that varies between users from
the common things
www.jarn.com
If we didn’t plan out what parts of each page are
cacheable it might be impossible to split it out
efficiently.
Keep the blocks that are user-specific small, few and
separate.
Make those sections send cache-control: private
The main page should send cache-control: public
www.jarn.com
Easy to hack into existing sites if you’re in a pickle
Can bring authenticated accesses up to the same
speed as cached anonymous users
Tip: Use ESI
www.jarn.com
Any template code backed by a Python class will do.
Custom __call__ method that checks for a header
turning on ESI and if it is being rendered directly
Return an ESI tag or the full content
Makes it easy to enable/disable if needed
Tip: Make use of views
www.jarn.com
Change is good
www.jarn.com
Often the big changes in terms of performance are
small changes to the client
Should a page have 5 items or 20?
Can we simplify the workflow?
Both cut down the number of page loads needed
www.jarn.com
Any questions?

More Related Content

Viewers also liked

Zawya Business Pulse - Raising the Bar of Audit (6Dec15)
Zawya Business Pulse - Raising the Bar of Audit (6Dec15)Zawya Business Pulse - Raising the Bar of Audit (6Dec15)
Zawya Business Pulse - Raising the Bar of Audit (6Dec15)Baqir Hussain
 
PR Shape_brochure_english_29maj
PR Shape_brochure_english_29majPR Shape_brochure_english_29maj
PR Shape_brochure_english_29majPeter Rudling
 
OPPO Media coverage BOOK
OPPO Media coverage BOOKOPPO Media coverage BOOK
OPPO Media coverage BOOKKevin Law
 
Using a One Health approach to promote food and nutrition security in Tanzani...
Using a One Health approach to promote food and nutrition security in Tanzani...Using a One Health approach to promote food and nutrition security in Tanzani...
Using a One Health approach to promote food and nutrition security in Tanzani...Global Risk Forum GRFDavos
 
Kimia - Ruang Lingkup Dan Perkembangan Ilmu Kimia
Kimia - Ruang Lingkup Dan Perkembangan Ilmu KimiaKimia - Ruang Lingkup Dan Perkembangan Ilmu Kimia
Kimia - Ruang Lingkup Dan Perkembangan Ilmu KimiaRahthino Giovanni
 
Личность участника как предиктор истощения выборки: исследование с двумя волн...
Личность участника как предиктор истощения выборки: исследование с двумя волн...Личность участника как предиктор истощения выборки: исследование с двумя волн...
Личность участника как предиктор истощения выборки: исследование с двумя волн...Sergei Shchebetenko
 
21 Ex Rpc Checks
21 Ex Rpc Checks21 Ex Rpc Checks
21 Ex Rpc Checkskhlarsen
 
International standards for the professional practice of internal auditing (s...
International standards for the professional practice of internal auditing (s...International standards for the professional practice of internal auditing (s...
International standards for the professional practice of internal auditing (s...Jason Sookram
 
Standards math 8
Standards math 8Standards math 8
Standards math 8Carisa Koch
 

Viewers also liked (16)

08del-pg21-0
08del-pg21-008del-pg21-0
08del-pg21-0
 
Zawya Business Pulse - Raising the Bar of Audit (6Dec15)
Zawya Business Pulse - Raising the Bar of Audit (6Dec15)Zawya Business Pulse - Raising the Bar of Audit (6Dec15)
Zawya Business Pulse - Raising the Bar of Audit (6Dec15)
 
PR Shape_brochure_english_29maj
PR Shape_brochure_english_29majPR Shape_brochure_english_29maj
PR Shape_brochure_english_29maj
 
Ninja viral good
Ninja viral goodNinja viral good
Ninja viral good
 
OPPO Media coverage BOOK
OPPO Media coverage BOOKOPPO Media coverage BOOK
OPPO Media coverage BOOK
 
СallBack Hunter Partner
СallBack Hunter Partner СallBack Hunter Partner
СallBack Hunter Partner
 
5084
50845084
5084
 
Using a One Health approach to promote food and nutrition security in Tanzani...
Using a One Health approach to promote food and nutrition security in Tanzani...Using a One Health approach to promote food and nutrition security in Tanzani...
Using a One Health approach to promote food and nutrition security in Tanzani...
 
Kimia - Ruang Lingkup Dan Perkembangan Ilmu Kimia
Kimia - Ruang Lingkup Dan Perkembangan Ilmu KimiaKimia - Ruang Lingkup Dan Perkembangan Ilmu Kimia
Kimia - Ruang Lingkup Dan Perkembangan Ilmu Kimia
 
Cenicienta
CenicientaCenicienta
Cenicienta
 
Личность участника как предиктор истощения выборки: исследование с двумя волн...
Личность участника как предиктор истощения выборки: исследование с двумя волн...Личность участника как предиктор истощения выборки: исследование с двумя волн...
Личность участника как предиктор истощения выборки: исследование с двумя волн...
 
21 Ex Rpc Checks
21 Ex Rpc Checks21 Ex Rpc Checks
21 Ex Rpc Checks
 
Pancreatitis
Pancreatitis Pancreatitis
Pancreatitis
 
International standards for the professional practice of internal auditing (s...
International standards for the professional practice of internal auditing (s...International standards for the professional practice of internal auditing (s...
International standards for the professional practice of internal auditing (s...
 
Standards math 8
Standards math 8Standards math 8
Standards math 8
 
Presentacion epc
Presentacion  epcPresentacion  epc
Presentacion epc
 

Similar to High performance sites made easy

Managing Memory in Swift (Yes, that's a thing)
Managing Memory in Swift (Yes, that's a thing)Managing Memory in Swift (Yes, that's a thing)
Managing Memory in Swift (Yes, that's a thing)Carl Brown
 
2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with BlackfireMarko Mitranić
 
Drupal Security for Coders and Themers - XSS and CSRF
Drupal Security for Coders and Themers - XSS and CSRF Drupal Security for Coders and Themers - XSS and CSRF
Drupal Security for Coders and Themers - XSS and CSRF knaddison
 
2019 PHP Serbia - Boosting your performance with Blackfire
2019 PHP Serbia - Boosting your performance with Blackfire2019 PHP Serbia - Boosting your performance with Blackfire
2019 PHP Serbia - Boosting your performance with BlackfireMarko Mitranić
 
Building reusable components with generics and protocols
Building reusable components with generics and protocolsBuilding reusable components with generics and protocols
Building reusable components with generics and protocolsDonny Wals
 
2012 03 27_philly_jug_rewrite_static
2012 03 27_philly_jug_rewrite_static2012 03 27_philly_jug_rewrite_static
2012 03 27_philly_jug_rewrite_staticLincoln III
 
The Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with androidThe Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with androidStanojko Markovik
 
SEO for Large/Enterprise Websites - Data & Tech Side
SEO for Large/Enterprise Websites - Data & Tech SideSEO for Large/Enterprise Websites - Data & Tech Side
SEO for Large/Enterprise Websites - Data & Tech SideDominic Woodman
 
Clustering In The Wild
Clustering In The WildClustering In The Wild
Clustering In The WildSergio Bossa
 
Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Jess Coburn
 
Growing Up MongoDB
Growing Up MongoDBGrowing Up MongoDB
Growing Up MongoDBMongoDB
 
Fundamental Design Patterns.pptx
Fundamental Design Patterns.pptxFundamental Design Patterns.pptx
Fundamental Design Patterns.pptxJUNSHIN8
 
Unbreaking Your Django Application
Unbreaking Your Django ApplicationUnbreaking Your Django Application
Unbreaking Your Django ApplicationOSCON Byrum
 
Terracotta Ch'ti Jug
Terracotta Ch'ti JugTerracotta Ch'ti Jug
Terracotta Ch'ti JugCh'ti JUG
 
Memory Heap Analysis with AppDynamics - AppSphere16
Memory Heap Analysis with AppDynamics - AppSphere16Memory Heap Analysis with AppDynamics - AppSphere16
Memory Heap Analysis with AppDynamics - AppSphere16AppDynamics
 
Dependency injection& comparative study
Dependency injection& comparative studyDependency injection& comparative study
Dependency injection& comparative studypallavs20
 

Similar to High performance sites made easy (20)

SEO for Large Websites
SEO for Large WebsitesSEO for Large Websites
SEO for Large Websites
 
Managing Memory in Swift (Yes, that's a thing)
Managing Memory in Swift (Yes, that's a thing)Managing Memory in Swift (Yes, that's a thing)
Managing Memory in Swift (Yes, that's a thing)
 
2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire
 
Drupal Security for Coders and Themers - XSS and CSRF
Drupal Security for Coders and Themers - XSS and CSRF Drupal Security for Coders and Themers - XSS and CSRF
Drupal Security for Coders and Themers - XSS and CSRF
 
2019 PHP Serbia - Boosting your performance with Blackfire
2019 PHP Serbia - Boosting your performance with Blackfire2019 PHP Serbia - Boosting your performance with Blackfire
2019 PHP Serbia - Boosting your performance with Blackfire
 
Building reusable components with generics and protocols
Building reusable components with generics and protocolsBuilding reusable components with generics and protocols
Building reusable components with generics and protocols
 
2012 03 27_philly_jug_rewrite_static
2012 03 27_philly_jug_rewrite_static2012 03 27_philly_jug_rewrite_static
2012 03 27_philly_jug_rewrite_static
 
The Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with androidThe Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with android
 
SEO for Large/Enterprise Websites - Data & Tech Side
SEO for Large/Enterprise Websites - Data & Tech SideSEO for Large/Enterprise Websites - Data & Tech Side
SEO for Large/Enterprise Websites - Data & Tech Side
 
Clustering In The Wild
Clustering In The WildClustering In The Wild
Clustering In The Wild
 
Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11
 
Growing Up MongoDB
Growing Up MongoDBGrowing Up MongoDB
Growing Up MongoDB
 
Introduction to django
Introduction to djangoIntroduction to django
Introduction to django
 
Fundamental Design Patterns.pptx
Fundamental Design Patterns.pptxFundamental Design Patterns.pptx
Fundamental Design Patterns.pptx
 
Unbreaking Your Django Application
Unbreaking Your Django ApplicationUnbreaking Your Django Application
Unbreaking Your Django Application
 
Fast mobile web apps
Fast mobile web appsFast mobile web apps
Fast mobile web apps
 
Hibernate Advance Interview Questions
Hibernate Advance Interview QuestionsHibernate Advance Interview Questions
Hibernate Advance Interview Questions
 
Terracotta Ch'ti Jug
Terracotta Ch'ti JugTerracotta Ch'ti Jug
Terracotta Ch'ti Jug
 
Memory Heap Analysis with AppDynamics - AppSphere16
Memory Heap Analysis with AppDynamics - AppSphere16Memory Heap Analysis with AppDynamics - AppSphere16
Memory Heap Analysis with AppDynamics - AppSphere16
 
Dependency injection& comparative study
Dependency injection& comparative studyDependency injection& comparative study
Dependency injection& comparative study
 

More from Matthew Wilkes

"We fixed it ourselves" - ZODB corruption recovery
"We fixed it ourselves" - ZODB corruption recovery"We fixed it ourselves" - ZODB corruption recovery
"We fixed it ourselves" - ZODB corruption recoveryMatthew Wilkes
 
Privacy best practice and Plone
Privacy best practice and PlonePrivacy best practice and Plone
Privacy best practice and PloneMatthew Wilkes
 
Open Source Security – A vendor's perspective
Open Source Security – A vendor's perspectiveOpen Source Security – A vendor's perspective
Open Source Security – A vendor's perspectiveMatthew Wilkes
 
Progressive Enhancement using WSGI
Progressive Enhancement using WSGIProgressive Enhancement using WSGI
Progressive Enhancement using WSGIMatthew Wilkes
 
How Plone's Security Works
How Plone's Security WorksHow Plone's Security Works
How Plone's Security WorksMatthew Wilkes
 
Performance for Product Developers
Performance for Product DevelopersPerformance for Product Developers
Performance for Product DevelopersMatthew Wilkes
 

More from Matthew Wilkes (6)

"We fixed it ourselves" - ZODB corruption recovery
"We fixed it ourselves" - ZODB corruption recovery"We fixed it ourselves" - ZODB corruption recovery
"We fixed it ourselves" - ZODB corruption recovery
 
Privacy best practice and Plone
Privacy best practice and PlonePrivacy best practice and Plone
Privacy best practice and Plone
 
Open Source Security – A vendor's perspective
Open Source Security – A vendor's perspectiveOpen Source Security – A vendor's perspective
Open Source Security – A vendor's perspective
 
Progressive Enhancement using WSGI
Progressive Enhancement using WSGIProgressive Enhancement using WSGI
Progressive Enhancement using WSGI
 
How Plone's Security Works
How Plone's Security WorksHow Plone's Security Works
How Plone's Security Works
 
Performance for Product Developers
Performance for Product DevelopersPerformance for Product Developers
Performance for Product Developers
 

Recently uploaded

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
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 Takeoffsammart93
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 

Recently uploaded (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 

High performance sites made easy