SlideShare una empresa de Scribd logo
1 de 49
Descargar para leer sin conexión
Przyszłość webu?
     Wiktor Schmidt
    wiktor@netguru.pl
O czym?

nowe trendy w

• data-storage
• languages / frameworks
• development process
Data storage
Files
S3
CDN (CloudFront)
Application Data
Nowe wymagania


• szybkość i skalowalność
• mniejsze wymagania co do
  persistence, integrity, etc.
Document store
Document store

• najbardziej zbliżony do SQLa, duże
  możliwości filtrowania

• łatwy sharding i replikacja

• brak JOINów,
Better Key-Value


• Redis
• memcacheDB
• Riak
Better Key-Value

• prosty
• bardzo łatwy sharding

• brak JOINów, brak filtrowania
“MapReduce”

• Cassandra - Facebook, Digg, Twitter,
  OpenX, Reddit

• HBase - Mahalo, yahoo, stumbleUpon,
  ning
“MapReduce”
• Potencjalnie wysokie możliwości
  filtrowania i agregacji danych

• przechowywanie dużych ilości danych
• auto-scaling, auto-sharding

• bardzo skomplikowane
Application layer
Application layer
Nowe wymagania


• real-time web
• logika po stronie klienta
• high concurency
Whatʼs hot?
pierwsza połowa
     2010
rapid development
 rapid prototyping
druga połowa 2010
Dlaczego “hot”?

• javascript
• V8 (chrome) engine
• evented, non-blocking I/O
• native HTTP support
Javascript

• dynamiczny
• powszechnie znany
• bezpieczny
• “dziwny”
Evented vs. Threaded
Evented vs. Threaded
Non-blocking I/O
Native HTTP server
Procesy
QA oraz Deployment
Ewolucja procesów
       QA
• “u mnie działa” aka SOA#1
• “wrzucam na produkcje i klikam”
• staging server - testy ręczne
• unit, integration, functional tests
• ...
Ewolucja procesów
  deploymentu
• “sie koduje i sie wrzuca na eFTePa”
• VCS (SVN), svn update na serwerze,
  rsync, nfs

• scripted deployment - multiserver,
  (semi-)automated

• ...
Continuous...


• integration
• deployment
Continuous
       Integration

• automated tests after each commit
• always ready for deployment
Korzyści

• szybki feedback
• eliminacja “złego” kodu w repo
• “usystematyzowanie” jakości
Niebezpieczeństwa

• poprawnie działąjące testy !=
  poprawnie działająca aplikacja

• nie można testować reguł
  “biznesowych”
Continuous
       Deployment

• automated tests after each commit
• automated deployment
  after each commit
Procesy
Case
• IMVU
• commit -> test -> deploy
• 15k test cases
• 70 deploys/day
• 1 mln tests/day
• 30-40 test servers
Case
• IMVU
• commit -> test -> deploy
• 15k test cases
• 70 deploys/day
• 1 mln tests/day
• 30-40 test servers
Deploy

• initial deploy (small % of users)
• metrics sampling (load, cpu, etc.)
• (some time)
• sampling and compare
• deploy to 100% or rollback
Jak to wygląda
    u nas?
Deployment
• “master” branch
 • automated tests
• staging server
 • manual testing
• beta server
 • manual testing
• production server
Korzyści

• szybki i konkretny feedback
• dalsze “usystematyzowanie” jakości
• eliminacja “strachu” przed
  deploymentem

• TTR - time to recovery
Dziękuje
              pytania/uwagi?




Wiktor Schmidt / netguru / wiktor@netguru.pl

Más contenido relacionado

Destacado

2010 national-geographic
2010 national-geographic2010 national-geographic
2010 national-geographicpsjlew
 
The wiseoldman
The wiseoldmanThe wiseoldman
The wiseoldmanpsjlew
 
廁所對聯
廁所對聯廁所對聯
廁所對聯psjlew
 
一生受用不盡的經驗
一生受用不盡的經驗一生受用不盡的經驗
一生受用不盡的經驗psjlew
 
肉類千萬不能吃的8個部位
肉類千萬不能吃的8個部位肉類千萬不能吃的8個部位
肉類千萬不能吃的8個部位psjlew
 
从恋爱到结婚
从恋爱到结婚从恋爱到结婚
从恋爱到结婚worldhema
 
病毒大作战
病毒大作战病毒大作战
病毒大作战worldhema
 
走 史深_~圆明_
走  史深_~圆明_走  史深_~圆明_
走 史深_~圆明_psjlew
 
chinese poem music
chinese poem musicchinese poem music
chinese poem musicpsjlew
 
可能“致命”的家常菜(非常實用)
可能“致命”的家常菜(非常實用)可能“致命”的家常菜(非常實用)
可能“致命”的家常菜(非常實用)psjlew
 
0527含有dehp產品項目表 附表二
0527含有dehp產品項目表 附表二0527含有dehp產品項目表 附表二
0527含有dehp產品項目表 附表二psjlew
 
Les p di a l'aula ii
Les p di a l'aula iiLes p di a l'aula ii
Les p di a l'aula iisusana
 
Guangxi
GuangxiGuangxi
Guangxipsjlew
 
In honor of 9/11
In honor of 9/11In honor of 9/11
In honor of 9/11JMMika
 
L中国古代风俗百图
L中国古代风俗百图L中国古代风俗百图
L中国古代风俗百图psjlew
 

Destacado (19)

2010 national-geographic
2010 national-geographic2010 national-geographic
2010 national-geographic
 
The wiseoldman
The wiseoldmanThe wiseoldman
The wiseoldman
 
廁所對聯
廁所對聯廁所對聯
廁所對聯
 
一生受用不盡的經驗
一生受用不盡的經驗一生受用不盡的經驗
一生受用不盡的經驗
 
TABVLA ADIECTIVORVM
TABVLA ADIECTIVORVMTABVLA ADIECTIVORVM
TABVLA ADIECTIVORVM
 
Lektion 13 april
Lektion 13 aprilLektion 13 april
Lektion 13 april
 
肉類千萬不能吃的8個部位
肉類千萬不能吃的8個部位肉類千萬不能吃的8個部位
肉類千萬不能吃的8個部位
 
从恋爱到结婚
从恋爱到结婚从恋爱到结婚
从恋爱到结婚
 
病毒大作战
病毒大作战病毒大作战
病毒大作战
 
走 史深_~圆明_
走  史深_~圆明_走  史深_~圆明_
走 史深_~圆明_
 
chinese poem music
chinese poem musicchinese poem music
chinese poem music
 
可能“致命”的家常菜(非常實用)
可能“致命”的家常菜(非常實用)可能“致命”的家常菜(非常實用)
可能“致命”的家常菜(非常實用)
 
0527含有dehp產品項目表 附表二
0527含有dehp產品項目表 附表二0527含有dehp產品項目表 附表二
0527含有dehp產品項目表 附表二
 
Les p di a l'aula ii
Les p di a l'aula iiLes p di a l'aula ii
Les p di a l'aula ii
 
Guangxi
GuangxiGuangxi
Guangxi
 
Recursos retóricos TLRIID III
Recursos retóricos TLRIID IIIRecursos retóricos TLRIID III
Recursos retóricos TLRIID III
 
In honor of 9/11
In honor of 9/11In honor of 9/11
In honor of 9/11
 
L中国古代风俗百图
L中国古代风俗百图L中国古代风俗百图
L中国古代风俗百图
 
Genre
GenreGenre
Genre
 

Przyszłość technologii webowych i podejścia do realizacji projektów internetowych. Przyszłość, którą musisz znać już teraz. - Wiktor Schmidt -TechStandard