[et_pb_section fb_built=”1″ _builder_version=”3.22″ custom_padding=”0|0px|0|0px|false|false”][et_pb_row _builder_version=”3.25″][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” custom_padding__hover=”|||”][et_pb_post_title comments=”off” featured_image=”off” _builder_version=”4.9.7″][/et_pb_post_title][/et_pb_column][/et_pb_row][et_pb_row column_structure=”2_3,1_3″ make_equal=”on” _builder_version=”3.25″][et_pb_column type=”2_3″ module_class=”vertical-center” _builder_version=”3.25″ custom_padding=”|||” custom_padding__hover=”|||”][et_pb_text _builder_version=”4.9.7″ background_size=”initial” background_position=”top_left” background_repeat=”repeat” custom_padding=”|||” hover_enabled=”0″ sticky_enabled=”0″]
Rafal Leszko is the Tech Lead of the Cloud-Native Team at Hazelcast, author of the book “Continuous Delivery with Docker and Jenkins”, trainer, and conference speaker. He specializes in Java development, Cloud environments, and Continuous Delivery. A former employee in a number of companies and scientific organizations: Google, CERN, AGH University, and more. Website: rafalleszko.com
[/et_pb_text][/et_pb_column][et_pb_column type=”1_3″ module_class=”vertical-center” _builder_version=”3.25″ custom_padding=”|||” custom_padding__hover=”|||”][et_pb_image src=”https://voxxedromania.ams3.cdn.digitaloceanspaces.com/2021VDROM/Speakeri/Rafal%20Leszko.jpg” url_new_window=”on” align=”right” align_tablet=”center” align_phone=”” align_last_edited=”on|desktop” _builder_version=”4.9.7″ custom_margin=”0px|||” hover_enabled=”0″ border_radii=”on|0%|0%|0%|0%” border_color_left=”#18b9f0″ box_shadow_style=”preset1″ box_shadow_blur=”15px” box_shadow_color=”#18b9f0″ sticky_enabled=”0″][/et_pb_image][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” custom_padding__hover=”|||”][et_pb_text _builder_version=”4.9.7″ hover_enabled=”0″ sticky_enabled=”0″]
Some say that there is no such thing as “distributed lock”. Still, sooner or later, you’d encounter a problem that only one of your application replicas may execute the given operation at the given time. How to do it right and safely using Java?
In this session I’ll present the following aspects of distributed locking:
– using distributed locking libraries (Redis, Hazelcast, Zookeeper)
– optimistic vs pessimistic locking
– making locking safe with fencing
– split-brain issue and the rescue with consensus algorithms
– real-life use-cases for distributed locking
[/et_pb_text][et_pb_button button_url=”https://romania.voxxeddays.com/voxxed-days-romania-2021/#speakers” url_new_window=”on” button_text=”SEE ALL OUR SPEAKERS” button_alignment=”center” _builder_version=”4.9.7″ custom_button=”on” button_font=”||||||||” button_use_icon=”off” box_shadow_style=”preset1″ button_text_color_hover=”#ffffff” button_bg_color_hover=”#18b9f0″ button_text_size__hover_enabled=”off” button_one_text_size__hover_enabled=”off” button_two_text_size__hover_enabled=”off” button_text_color__hover_enabled=”on” button_text_color__hover=”#ffffff” button_one_text_color__hover_enabled=”off” button_two_text_color__hover_enabled=”off” button_border_width__hover_enabled=”off” button_one_border_width__hover_enabled=”off” button_two_border_width__hover_enabled=”off” button_border_color__hover_enabled=”off” button_one_border_color__hover_enabled=”off” button_two_border_color__hover_enabled=”off” button_border_radius__hover_enabled=”off” button_one_border_radius__hover_enabled=”off” button_two_border_radius__hover_enabled=”off” button_letter_spacing__hover_enabled=”off” button_one_letter_spacing__hover_enabled=”off” button_two_letter_spacing__hover_enabled=”off” button_bg_color__hover_enabled=”on” button_bg_color__hover=”#18b9f0″ button_one_bg_color__hover_enabled=”off” button_two_bg_color__hover_enabled=”off”][/et_pb_button][et_pb_button button_url=”https://romania.voxxeddays.com/voxxed-days-romania-2021/#pricing” url_new_window=”on” button_text=”BUY TICKET” button_alignment=”center” _builder_version=”4.9.7″ custom_button=”on” button_text_size=”28px” button_text_color=”#FFFFFF” button_bg_use_color_gradient=”on” button_font=”||||||||” button_use_icon=”off” box_shadow_style=”preset1″ button_text_color_hover=”#ffffff” button_bg_color_hover=”#18b9f0″ button_text_size__hover_enabled=”off” button_one_text_size__hover_enabled=”off” button_two_text_size__hover_enabled=”off” button_text_color__hover_enabled=”on” button_text_color__hover=”#ffffff” button_one_text_color__hover_enabled=”off” button_two_text_color__hover_enabled=”off” button_border_width__hover_enabled=”off” button_one_border_width__hover_enabled=”off” button_two_border_width__hover_enabled=”off” button_border_color__hover_enabled=”off” button_one_border_color__hover_enabled=”off” button_two_border_color__hover_enabled=”off” button_border_radius__hover_enabled=”off” button_one_border_radius__hover_enabled=”off” button_two_border_radius__hover_enabled=”off” button_letter_spacing__hover_enabled=”off” button_one_letter_spacing__hover_enabled=”off” button_two_letter_spacing__hover_enabled=”off” button_bg_color__hover_enabled=”on” button_bg_color__hover=”#18b9f0″ button_one_bg_color__hover_enabled=”off” button_two_bg_color__hover_enabled=”off”][/et_pb_button][/et_pb_column][/et_pb_row][/et_pb_section]