Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What's inside ResearchGate
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Bastian Hofmann
October 08, 2012
Technology
460
0
Share
What's inside ResearchGate
Bastian Hofmann
October 08, 2012
More Decks by Bastian Hofmann
See All by Bastian Hofmann
Monitoring in Kubernetes with Prometheus and Grafana
bastianhofmann
0
350
Creating a fast Kubernetes Development Workflow
bastianhofmann
0
140
Highly available cross-region deployments with Kubernetes
bastianhofmann
1
160
From source to Kubernetes in 30 minutes
bastianhofmann
0
190
Introduction to Kubernetes
bastianhofmann
1
140
CI/CD with Kubernetes
bastianhofmann
0
230
Creating a fast Kubernetes Development Workflow
bastianhofmann
1
280
Deploying your first Micro-Service application to Kubernetes
bastianhofmann
2
200
Creating a fast Kubernetes Development Workflow
bastianhofmann
0
260
Other Decks in Technology
See All in Technology
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
240
GCASアップデート(202603-202605)
techniczna
0
240
Python開発環境にハーネス適用を検討する
yuuka51
0
180
AIコーディングエージェントの活用で、コードは静かに肥大化した
yosukeshinoda
1
130
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
47k
論文紹介:Pixal3D (SIGGRAPH 2026)
tenten0727
0
640
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
160
Cortex(Code) を ML モデルの 精度改善サイクルに組み込む.pdf
oimo23
0
250
パーソルキャリア IT/テクノロジー職向け 会社紹介資料|Company Introduction Deck
techtekt
PRO
0
250
Gaussian Splattingの実用化 - 映像制作への展開
gpuunite_official
0
210
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.4k
ルール・ロール・ツールを創る / Creating Rules, Roles and Tools
ks91
PRO
0
140
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
70
39k
Paper Plane (Part 1)
katiecoart
PRO
0
7.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Mind Mapping
helmedeiros
PRO
1
190
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Skip the Path - Find Your Career Trail
mkilby
1
120
The Mindset for Success: Future Career Progression
greggifford
PRO
0
330
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
440
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
170
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Transcript
What's behind it? @BastianHofmann
None
ResearchGate gives science back to the people who make it
happen. We help researchers build reputation and accelerate scientific progress. On their terms. ‟
None
None
None
So let's talk about architecture
None
Normally these talks are about...
webserver loadbalancer pgsql memcached mongodb services Active MQ
Big Data
Terrabytes of data
Thousands of events per second
Not this one
Instead...
Logging
Measuring
Testing
Logging
Exceptions & Errors
Access Logs
Debug logs
Logging from cronjobs and event workers
$ tail -f error.log $ grep
None
Aggregate the logs in a central place
Make them easily full- text searchable
Correlate them
Structured Messages
{ "version": "1.0", "host": "www1", "short_message": "Short message", "full_message": "Backtrace
here\n \nmore stuff", "timestamp": 1291899928.412, "level": 1, "facility": "payment-backend", "file": "/var/www/somefile.rb", "line": 356, "_user_id": 42, "_something_else": "foo" }
Find out if something goes wrong and why it went
wrong quickly!
graylog2 http://graylog2.org/
None
18,000 messages/min
Measuring
Technical metrics
Business metrics
KPI
How do your users interact with the site?
None
https://metrics.librato.com/
Metric driven development
Continuous integration
Fast deployment
Continuous deployment
Metrics as a way of testing
Of course testing your code is still necessary
Testing
e.g. A/B Testing
Disadvantages
Bad conversion during test
Only works for temporary tests
Inflexible: changing of tests not supported
There are better methods with better results
Bandit Algorithm http://monospaced.posterous.com/stop-ab-testing-and- make-out-like-a-bandit
BUY IT BUY IT random decision $userId = 24 save
that option A was clicked save that option A is shown conversion = option A clicked / option A shown 1
BUY IT BUY IT 2 90% users best option rest
other options
Carefully define your goals!
None
Integrate it into your architecture
None
Self contained
Can be addressed and rendered separately
JS is part of the component
PHP Controller Mustache Template JavaScript view class Widget Providing data
Handling browser events Displaying data
None
Last but not least
None
None
h"p://twi"er.com/Bas2anHofmann h"p://profiles.google.com/bashofmann h"p://lanyrd.com/people/Bas2anHofmann h"p://speakerdeck.com/u/bas2anhofmann h"ps://github.com/bashofmann
[email protected]