spring integration hazelcast extension
TRANSCRIPT
![Page 1: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/1.jpg)
SPRINGONE2GXWASHINGTON, DC
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/
Spring Integration Hazelcast Extension
By Eren Avşaroğullarıerenavsarogullari @eavsarogullari
![Page 2: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/2.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 2
About Me
Work :Senior Software Engineer @ Worked in telecomunication, finance domains last ten years
Open Source / Tech Community : Spring Integration Committer erenavsarogullari Blog => onlinetechvision.com /
![Page 3: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/3.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 3
Agenda
What is Hazelcast? Spring Integration(SI) Hazelcast(HZ) Inbound Channel Adapter Continuous Query(CQ) Inbound Channel Adapter Cluster Monitor(CM) Inbound Channel Adapter Distributed SQL(DS) Inbound Channel Adapter Outbound Channel Adapter Summary
![Page 4: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/4.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 4
What is Hazelcast?
In-Memory Data Grid - JCache Provider - Apache 2 License - Small jar(7 MB) Distributed Data Structures Distributed Events Distributed Query JCache Provider Spring Support Client API
![Page 5: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/5.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 5
Agenda What is Hazelcast? Spring Integration(SI) Hazelcast(HZ) Inbound Channel
Adapter Continuous Query(CQ) Inbound Channel Adapter Cluster Monitor(CM) Inbound Channel Adapter Distributed SQL(DS) Inbound Channel Adapter Outbound Channel Adapter Summary
![Page 6: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/6.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/
SI - HZ Inbound Channel Adapter
SI App I
Hz Instance II
Hazelcast
Instance I
Hz Inbound Channel AdapterSI App II
Hz Instance IIIHz Inbound Channel Adapter
Hazelcast Cluster
6
![Page 7: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/7.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/
SI - HZ Inbound Channel Adapter
SI App I
Hz Instance II
External(Non-SI) HZ Events
distributedMap.put("key1", "value1"); Hazelca
stInstanc
e I
Hz Inbound Channel AdapterSI App II
Hz Instance IIIHz Inbound Channel Adapter
Hazelcast Cluster
7
![Page 8: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/8.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/
SI - HZ Inbound Channel Adapter
SI App I
Hz Instance II
External(Non-SI) HZ Events
distributedMap.put("key1", "value1"); Hazelca
stInstanc
e I
Hz Inbound Channel AdapterSI App II
Hz Instance IIIHz Inbound Channel Adapter
Hazelcast Cluster
Internal HZ Events
distributedMap.put("key2", "value2");
8
![Page 9: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/9.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 9
SI - HZ Inbound Channel Adapter
Supported Cache Types : IMap, MultiMap, ReplicatedMap, IList, ISet, IQueue, ITopic.
Supported Cache Event Types :
IMap and MultiMap => ADDED, REMOVED, UPDATED, EVICTED, EVICT_ALL and CLEAR_ALL.ReplicatedMap => ADDED, REMOVED, UPDATED, EVICTED.IList, ISet and IQueue => ADDED, REMOVED / ITopic => Not required
Xml based configuration
![Page 10: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/10.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 10
SI - HZ Inbound Channel AdapterJavaConfig based configuration
![Page 11: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/11.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 11
Agenda
What is Hazelcast? Spring Integration(SI) Hazelcast(HZ) Inbound Channel Adapter Continuous Query(CQ) Inbound Channel Adapter Cluster Monitor(CM) Inbound Channel Adapter Distributed SQL(DS) Inbound Channel Adapter Outbound Channel Adapter Summary
![Page 12: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/12.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 12
CQ Inbound Channel Adapter
Supported Cache Types : IMapSupported Cache Event Types :
ADDED, REMOVED, UPDATED, EVICTED, EVICT_ALL and CLEAR_ALL.
Xml based configuration
![Page 13: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/13.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 13
CQ Inbound Channel AdapterJavaConfig based configuration
![Page 14: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/14.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 14
Agenda
What is Hazelcast? Spring Integration(SI) Hazelcast(HZ) Inbound Channel Adapter Continuous Query(CQ) Inbound Channel Adapter Cluster Monitor(CM) Inbound Channel Adapter Distributed SQL(DS) Inbound Channel Adapter Outbound Channel Adapter Summary
![Page 15: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/15.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 15
CM Inbound Channel Adapter
Supported Monitor Types :
MEMBERSHIP, DISTRIBUTED_OBJECT, MIGRATION, LIFECYCLE, CLIENT
Xml based configuration
![Page 16: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/16.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 16
CM Inbound Channel Adapter
JavaConfig based configuration
![Page 17: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/17.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 17
Agenda
What is Hazelcast? Spring Integration(SI) Hazelcast(HZ) Inbound Channel Adapter Continuous Query(CQ) Inbound Channel Adapter Cluster Monitor(CM) Inbound Channel Adapter Distributed SQL(DS) Inbound Channel Adapter Outbound Channel Adapter Summary
![Page 18: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/18.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 18
DS Inbound Channel Adapter
Supported Cache Types : IMap
Supported Iteration Types : ENTRY, KEY, LOCAL_KEY, VALUE.
Xml based configuration
![Page 19: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/19.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 19
DS Inbound Channel AdapterJavaConfig based configuration
![Page 20: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/20.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 20
Agenda
What is Hazelcast? Spring Integration(SI) Hazelcast(HZ) Inbound Channel Adapter Continuous Query(CQ) Inbound Channel Adapter Cluster Monitor(CM) Inbound Channel Adapter Distributed SQL(DS) Inbound Channel Adapter Outbound Channel Adapter Summary
![Page 21: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/21.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 21
Outbound Channel Adapter
Supported Cache Types :
IMap, MultiMap, ReplicatedMap, IList, ISet, IQueue, ITopic.
Xml based configuration
![Page 22: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/22.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 22
Outbound Channel Adapter
JavaConfig based configuration
![Page 23: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/23.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 23
Agenda
What is Hazelcast? Spring Integration(SI) Hazelcast(HZ) Inbound Channel Adapter Continuous Query(CQ) Inbound Channel Adapter Cluster Monitor(CM) Inbound Channel Adapter Distributed SQL(DS) Inbound Channel Adapter Outbound Channel Adapter Summary
![Page 24: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/24.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 24
SummaryIf we need to :
listen Hazelcast distributed objects events => Hazelcast Inbound Channel Adapter
listen Hazelcast cluster events => Cluster Monitor(CM) Inbound Channel Adapter
listen modifications on specific map entries => Continues Query(CQ) Inbound Channel Adapter
run distributed sql on specific map entries => Distributed Sql(DS) Inbound Channel Adapter
distribute SI messages through Hazelcast distributed objects=> Outbound Channel Adapter
![Page 25: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/25.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 25
Github => https://github.com/spring-projects/spring-integration-extensions/tree/master/spring-integration-hazelcast
SI Reference Manual => http://docs.spring.io/spring-integration/reference/htmlsingle/
Hazelcast Reference Manual => http://docs.hazelcast.org/docs/3.5/manual/html/
References
![Page 26: Spring Integration Hazelcast Extension](https://reader035.vdocuments.us/reader035/viewer/2022062311/58742e791a28ab72188b71cd/html5/thumbnails/26.jpg)
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/l icenses/by-nc/3.0/ 26
THANKS Applied Spring Integration, Spring AMQP and RabbitMQ in Spring XD
Spring Integration Java DSL
Learn More. Stay Connected.
@springcentral Spring.io/video