ZeroMQ e Redis: soluzioni open source per l'integrazione di componenti

943 views

Published on

Realizzare software complessi con componenti semplici che interagiscono in forme ben definite è da sempre il modo per ottenere architetture robuste ed efficienti.

ZeroMQ e Redis permettono di implementare questo paradigma ed estenderlo alle reti, ai diversi linguaggi, alle diverse architetture hardware.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
943
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ZeroMQ e Redis: soluzioni open source per l'integrazione di componenti

  1. 1. Componenti ZeroMQ Redis Conclusioni ZeroMQ e Redis:soluzioni Open Source per l’integrazione di Componenti Matteo Fortini LinuxDay Ferrara, 27 Ottobre 2012 Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  2. 2. Componenti ZeroMQ Redis ConclusioniComponenti Riutilizzabili Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  3. 3. Componenti ZeroMQ Redis ConclusioniComponenti Testabili Singolarmente Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  4. 4. Componenti ZeroMQ Redis ConclusioniComponenti Scritti in diversi linguaggi Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  5. 5. Componenti ZeroMQ Redis ConclusioniComponenti Cross-platform Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  6. 6. Componenti ZeroMQ Redis ConclusioniComponenti Modulari Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  7. 7. Componenti ZeroMQ Redis ConclusioniComponenti Distribuibili Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  8. 8. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiThe Intelligent Transport Layer Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  9. 9. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiCome iniziano i progetti? Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  10. 10. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiCome finiscono? Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  11. 11. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiVantaggi di ZeroMQ• Serverless• Orientata ai messaggi• Cross platform• Cross linguaggio Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  12. 12. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiTrasparente• inproc:// → memoria, thread• ipc:// → UNIX R sockets, processi• tcp:// → rete Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  13. 13. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiPattern [ti costringe a pensare alle interazioni] Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  14. 14. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiREQ/REP Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  15. 15. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiPIPE Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  16. 16. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiPUB/SUB [anche multimaster → (e)pgm://] Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  17. 17. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiDevices• Forwarder → PUB/SUB• Streamer → PIPE• Broker → REQ/REP Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  18. 18. Componenti Evoluzione dei progetti ZeroMQ Caratteristiche di ZeroMQ Redis Pattern Conclusioni DifettiDifetti• Robustezza sulla rete• Uso di thread• assert()• Performance• Fork: http://crossroads.io Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  19. 19. Il problema dello stato Componenti Redis ZeroMQ Non solo Key-Value Redis Funzioni avanzate Conclusioni Distribuito DifettiRedis is an open source, advancedkey-value store.It is often referred to as a data structureserver since keys can contain strings, hashes,lists, sets and sorted sets. Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  20. 20. Il problema dello stato Componenti Redis ZeroMQ Non solo Key-Value Redis Funzioni avanzate Conclusioni Distribuito DifettiIl problema dello stato Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  21. 21. Il problema dello stato Componenti Redis ZeroMQ Non solo Key-Value Redis Funzioni avanzate Conclusioni Distribuito DifettiCos’è Redis• NoSQL• Key-Value• Piccolo• Efficiente• In-memory• Cross platform (server/clients)• Cross linguaggio (clients) Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  22. 22. Il problema dello stato Componenti Redis ZeroMQ Non solo Key-Value Redis Funzioni avanzate Conclusioni Distribuito DifettiNon solo Key-Value• HASH• LIST• SET/ORDERED SET• BITSET Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  23. 23. Il problema dello stato Componenti Redis ZeroMQ Non solo Key-Value Redis Funzioni avanzate Conclusioni Distribuito DifettiFunzioni avanzate• Transazioni• INC/DEC atomici• PUB/SUB• EXPIRE• MONITOR• Lua scripting Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  24. 24. Il problema dello stato Componenti Redis ZeroMQ Non solo Key-Value Redis Funzioni avanzate Conclusioni Distribuito DifettiDistribuito• Master/Slave• Sentinel Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  25. 25. Il problema dello stato Componenti Redis ZeroMQ Non solo Key-Value Redis Funzioni avanzate Conclusioni Distribuito DifettiDifetti• Limitato dalla RAM Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  26. 26. Componenti ZeroMQ Redis Conclusioni[Piccola demo...]Grazie!Domande? Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C
  27. 27. Componenti ZeroMQ Redis ConclusioniAcknowledgements • Clones Army image by Fred Dunn https://secure.flickr.com/photos/gratapictures/ • Dandelion image by undergroundbastard https://secure.flickr.com/photos/undergroundbastard/ • Pattern image by Akbar Sim https://secure.flickr.com/photos/akbar2/ • Gears image by freefotouk https://secure.flickr.com/photos/freefoto/ • Pipes image by Domiriel https://secure.flickr.com/photos/domiriel/ • Antenna image by Janne Aaltonen https://secure.flickr.com/photos/janneaaltonen/ • Map pin image by joebuzzica https://secure.flickr.com/photos/63352809@N02/ Matteo Fortini ZeroMQ e Redis: soluzioni Open Source per l’integrazione di C

×