Dan Ivovich from SmartLogic - Elixir in Production episode artwork

EPISODE · Feb 28, 2019 · 28 MIN

Dan Ivovich from SmartLogic - Elixir in Production

from Elixir Wizards · host SmartLogic LLC

We talk with developers from the team here at SmartLogic about our current practices on deploying Elixir and Phoenix in production. Dan Ivovich - Director of Development Operations @ SmartLogic Learn more about how SmartLogic uses Phoenix and Elixir. 00:00 - Fade In 00:30 - Introductions to Eric, Dan and SmartLogic Dan Ivovich - Director of Development Operations @ SmartLogic Eric Oestrich - Developer, Elixir Lead @ SmartLogic Justus Eapen - Full stack developer @ SmartLogic Introduced to Elixir by an old colleague. 1:20 - What Elixir projects do you have in production? Several client projects in production. Several Mobile Apps with APIs powered by Phoenix and Elixir. Baltimore Water Taxi. A digital marketplace. And more! 1:57 - Advantages and disadvantages to using Elixir. We made the switch when a colleague was stoked about Functional Programming and introduced us to Elixir. We were won over by the performance and rich feature sets, OTP, etc. 2:43 - Where are we hosting our Elixir Apps? Heroku AWS Linode Digital Ocean 6:20Deployment process, tools, scripting Ansible - for underlying VPS’s, servers, and more recently deployment itself. (Similar to Capistrano). Distillery Mix.release 7:18 - Zero Downtime Deployments Old school load balancers and rolling restarts 7:46 - What are the performance metrics like? Comparatively. Ruby ends up with memory leaks. That doesn’t happen with Elixir. Memory utilization is flat and low no matter what. “Phenomenal response times” 8:54 - How does Eric think about clustered applications in Elixir? Going Multi Node (https://www.youtube.com/watch?v=lCUKQnkjajo) Pg2 - process groups Mnesia distributed database (beware!) “Just sending messages to pids because Erlang is great” Swarm / Horde 12:40 - How do we handle background tasks? Started with verk Recently becoming more comfortable with spinning up GenServers “The language itself is built to be concurrent.” 15:06 What libraries are we using in prod? First thing: You don’t need a whole lot because the language is so well designed. Phoenix - web framework Ecto - sort of an ORM Distillery - for releases Bamboo - for sending emails Quantum - for task scheduling Timex - for dates and times, and timezones Cachex - for caching 18:20- What third party integrations have we attempted Stripe Square Twilio Mindbody Always building our own clients.  Using HTTPoison 19:58Has Elixir ever saved the day in production? It’s saved many days by PREVENTING ISSUES. Systems are architected for reliability and fault-tolerance. 21:48 - Where do supervision trees come from? What is OTP? OTP is an Erlang standard lib Includes supervision trees, genservers, ETS, and a lot of stuff we don’t even know about! gen_tcp Mnesia dets 23:43- Tips for devs considering running elixir in production. Jump in and read the docs Understand how systems boot, distillery releases, config providers, etc. “Good server monitoring hygiene” “DIVE IN!” 19:54 Outro Learn more about how SmartLogic uses Phoenix and Elixir.Special Guest: Dan Ivovich.

We talk with developers from the team here at SmartLogic about our current practices on deploying Elixir and Phoenix in production. Dan Ivovich - Director of Development Operations @ SmartLogic Learn more about how SmartLogic uses Phoenix and Elixir. 00:00 - Fade In 00:30 - Introductions to Eric, Dan and SmartLogic Dan Ivovich - Director of Development Operations @ SmartLogic Eric Oestrich - Developer, Elixir Lead @ SmartLogic Justus Eapen - Full stack developer @ SmartLogic Introduced to Elixir by an old colleague. 1:20 - What Elixir projects do you have in production? Several client projects in production. Several Mobile Apps with APIs powered by Phoenix and Elixir. Baltimore Water Taxi. A digital marketplace. And more! 1:57 - Advantages and disadvantages to using Elixir. We made the switch when a colleague was stoked about Functional Programming and introduced us to Elixir. We were won over by the performance and rich feature sets, OTP, etc. 2:43 - Where are we hosting our Elixir Apps? Heroku AWS Linode Digital Ocean 6:20Deployment process, tools, scripting Ansible - for underlying VPS’s, servers, and more recently deployment itself. (Similar to Capistrano). Distillery Mix.release 7:18 - Zero Downtime Deployments Old school load balancers and rolling restarts 7:46 - What are the performance metrics like? Comparatively. Ruby ends up with memory leaks. That doesn’t happen with Elixir. Memory utilization is flat and low no matter what. “Phenomenal response times” 8:54 - How does Eric think about clustered applications in Elixir? Going Multi Node (https://www.youtube.com/watch?v=lCUKQnkjajo) Pg2 - process groups Mnesia distributed database (beware!) “Just sending messages to pids because Erlang is great” Swarm / Horde 12:40 - How do we handle background tasks? Started with verk Recently becoming more comfortable with spinning up GenServers “The language itself is built to be concurrent.” 15:06 What libraries are we using in prod? First thing: You don’t need a whole lot because the language is so well designed. Phoenix - web framework Ecto - sort of an ORM Distillery - for releases Bamboo - for sending emails Quantum - for task scheduling Timex - for dates and times, and timezones Cachex - for caching 18:20- What third party integrations have we attempted Stripe Square Twilio Mindbody Always building our own clients.  Using HTTPoison 19:58Has Elixir ever saved the day in production? It’s saved many days by PREVENTING ISSUES. Systems are architected for reliability and fault-tolerance. 21:48 - Where do supervision trees come from? What is OTP? OTP is an Erlang standard lib Includes supervision trees, genservers, ETS, and a lot of stuff we don’t even know about! gen_tcp Mnesia dets 23:43- Tips for devs considering running elixir in production. Jump in and read the docs Understand how systems boot, distillery releases, config providers, etc. “Good server monitoring hygiene” “DIVE IN!” 19:54 Outro Learn more about how SmartLogic uses Phoenix and Elixir.Special Guest: Dan Ivovich.Links:Going Multi-Node PG2 mnesia Swarm Horde Verk Bamboo Quantum Cachex

NOW PLAYING

Dan Ivovich from SmartLogic - Elixir in Production

0:00 28:28

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

REWIND: The Musician’s Podcast - How to Grow Your Music Career Amit Weiner Welcome to Rewind!An optimistic podcast that will help you in your successful Career in Music!Amit Weiner hosts musicians, composers, professors, and sound wizards, as they share their life stories and career decisions.Stay tuned, it’s gonna be epic! Behind The Irishman Netflix Go behind the scenes of Martin Scorsese’s The Irishman with this official companion podcast from Netflix. Hosted by comedian and The Irishman co-star Sebastian Maniscalco (“Crazy Joe” Gallo), this three-part series features interviews with cast and crew, including Martin Scorsese, Robert De Niro, Al Pacino, and Joe Pesci. Hear the story of Frank “The Irishman” Sheeran from the man he chose to tell it—and how Scorsese and De Niro fought for years to bring that story to the screen. Plus, learn about the brand-new technology the visual effects wizards at Industrial Light and Magic built to bring this epic tale to life. This podcast was produced by Netflix with FannieCo and Crossroad Productions. Thinking Elixir Podcast ThinkingElixir.com The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community. Whether you are already experienced with Elixir or just exploring the language, this show is created with you in mind. We discuss community news, Functional Programming, transitioning from OOP, coding conventions, and more. Guests visit the show to help challenge our assumptions, learn about new developments and grow in the process. Subscribe to join us on this journey! The Magic Academy John Fletcher, Russell Earnshaw Supporting coaching wizards! Rusty and Fletch love to hang with rockstars from the coaching world and get them sharing through some pretty cool questions

Frequently Asked Questions

How long is this episode of Elixir Wizards?

This episode is 28 minutes long.

When was this Elixir Wizards episode published?

This episode was published on February 28, 2019.

What is this episode about?

We talk with developers from the team here at SmartLogic about our current practices on deploying Elixir and Phoenix in production. Dan Ivovich - Director of Development Operations @ SmartLogic Learn more about how SmartLogic uses Phoenix and...

Is there a transcript available for this episode?

Yes, a full transcript is available for this episode. You can read the complete transcript on the episode page.

Can I download this Elixir Wizards episode?

Yes, you can download this episode by clicking the download button on the episode player, or subscribe to the podcast in your preferred podcast app for automatic downloads.
URL copied to clipboard!