41 min listen
128: Speedy like a Bandit
ratings:
Length:
60 minutes
Released:
Dec 6, 2022
Format:
Podcast episode
Description
The Phoenix 1.7 announcement blog post mentioned the ability to swap out Cowboy for another webserver like Bandit. We talked with Mat Trudel to learn more about his pure-Elixir webserver and find out how it works with Phoenix. We learn Bandit can be up to 5x faster by narrowly focusing on turning a request into a Plug connection and much more!
Show Notes online - http://podcast.thinkingelixir.com/128 (http://podcast.thinkingelixir.com/128)
Elixir Community News
- https://github.com/features/security/ (https://github.com/features/security/) – Github's Dependabot now supports private hex repositories.
- https://twitter.com/sorentwo/status/1595526317436452864 (https://twitter.com/sorentwo/status/1595526317436452864) – Parker Selbert brought this to our attention.
- https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#hex-repository (https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#hex-repository)
- https://hexdocs.pm/mix/Mix.Tasks.Deps.Unlock.html (https://hexdocs.pm/mix/Mix.Tasks.Deps.Unlock.html) – CI tip to check for unused mix lock entries
- https://twitter.com/RudManusachi/status/1597341690653999106 (https://twitter.com/RudManusachi/status/1597341690653999106) – Shared by Rudolf on Twitter
- mix deps.unlock --check-unused
- https://fly.io/phoenix-files/github-actions-for-elixir-ci/ (https://fly.io/phoenix-files/github-actions-for-elixir-ci/) – CI resource for Elixir projects on Github
- https://twitter.com/TechRecHayden/status/1595776257513373699 (https://twitter.com/TechRecHayden/status/1595776257513373699) – Hayden Evans spotted that Zoom is using Erlang in production for their chat platform.
- Mastadon instances to consider if looking for a Twitter alternative...
- https://genserver.social/about (https://genserver.social/about)
- https://hachyderm.io/explore (https://hachyderm.io/explore)
- https://fosstodon.org/ (https://fosstodon.org/)
- https://mastodon.social/explore (https://mastodon.social/explore)
- https://www.lambdadays.org/lambdadays2023 (https://www.lambdadays.org/lambdadays2023) – Lambda Days conference returns as an in-person only event to Kraków on 5-6 June 2023.
Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com)
Discussion Resources
- https://phoenixframework.org/blog/phoenix-1.7-released (https://phoenixframework.org/blog/phoenix-1.7-released) – Phoenix 1.7 blog post described at the end - “Alternative Webserver Support”
- https://github.com/mtrudel/bandit (https://github.com/mtrudel/bandit) – “Bandit is a pure Elixir HTTP server for Plug & WebSock applications”
- https://github.com/mtrudel/thousand_island (https://github.com/mtrudel/thousand_island) – “Thousand Island is a pure Elixir socket server, powering the layer underneath Bandit”
- https://ninenines.eu/docs/en/cowboy/2.9/guide/ (https://ninenines.eu/docs/en/cowboy/2.9/guide/) – Cowboy docs
- https://www.pagerduty.com/ (https://www.pagerduty.com/)
- https://github.com/ninenines/cowlib (https://github.com/ninenines/cowlib)
- https://www.youtube.com/watch?v=ZLjWyanLHuk (https://www.youtube.com/watch?v=ZLjWyanLHuk)
- https://github.com/crossbario/autobahn-testsuite (https://github.com/crossbario/autobahn-testsuite)
- https://en.wikipedia.org/wiki/Cyclicredundancycheck (https://en.wikipedia.org/wiki/Cyclic_redundancy_check)
- https://en.wikipedia.org/wiki/Cyclicredundancycheck#CRC-32_algorithm (https://en.wikipedia.org/wiki/Cyclic_redundancy_check#CRC-32_algorithm)
- https://github.com/phoenixframework/websock (https://github.com/phoenixframework/websock)
- https://hexdocs.pm/plug/Plug.Conn.html#upgrade_adapter/3 (https://hexdocs.pm/plug/Plug.Conn.html#upgrade_adapter/3)
- https://podcast.thinkingelixir.com/57 (https://podcast.thinkingelixir.com/57) – Scaling Live Chat with Cade Wa
Show Notes online - http://podcast.thinkingelixir.com/128 (http://podcast.thinkingelixir.com/128)
Elixir Community News
- https://github.com/features/security/ (https://github.com/features/security/) – Github's Dependabot now supports private hex repositories.
- https://twitter.com/sorentwo/status/1595526317436452864 (https://twitter.com/sorentwo/status/1595526317436452864) – Parker Selbert brought this to our attention.
- https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#hex-repository (https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#hex-repository)
- https://hexdocs.pm/mix/Mix.Tasks.Deps.Unlock.html (https://hexdocs.pm/mix/Mix.Tasks.Deps.Unlock.html) – CI tip to check for unused mix lock entries
- https://twitter.com/RudManusachi/status/1597341690653999106 (https://twitter.com/RudManusachi/status/1597341690653999106) – Shared by Rudolf on Twitter
- mix deps.unlock --check-unused
- https://fly.io/phoenix-files/github-actions-for-elixir-ci/ (https://fly.io/phoenix-files/github-actions-for-elixir-ci/) – CI resource for Elixir projects on Github
- https://twitter.com/TechRecHayden/status/1595776257513373699 (https://twitter.com/TechRecHayden/status/1595776257513373699) – Hayden Evans spotted that Zoom is using Erlang in production for their chat platform.
- Mastadon instances to consider if looking for a Twitter alternative...
- https://genserver.social/about (https://genserver.social/about)
- https://hachyderm.io/explore (https://hachyderm.io/explore)
- https://fosstodon.org/ (https://fosstodon.org/)
- https://mastodon.social/explore (https://mastodon.social/explore)
- https://www.lambdadays.org/lambdadays2023 (https://www.lambdadays.org/lambdadays2023) – Lambda Days conference returns as an in-person only event to Kraków on 5-6 June 2023.
Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com)
Discussion Resources
- https://phoenixframework.org/blog/phoenix-1.7-released (https://phoenixframework.org/blog/phoenix-1.7-released) – Phoenix 1.7 blog post described at the end - “Alternative Webserver Support”
- https://github.com/mtrudel/bandit (https://github.com/mtrudel/bandit) – “Bandit is a pure Elixir HTTP server for Plug & WebSock applications”
- https://github.com/mtrudel/thousand_island (https://github.com/mtrudel/thousand_island) – “Thousand Island is a pure Elixir socket server, powering the layer underneath Bandit”
- https://ninenines.eu/docs/en/cowboy/2.9/guide/ (https://ninenines.eu/docs/en/cowboy/2.9/guide/) – Cowboy docs
- https://www.pagerduty.com/ (https://www.pagerduty.com/)
- https://github.com/ninenines/cowlib (https://github.com/ninenines/cowlib)
- https://www.youtube.com/watch?v=ZLjWyanLHuk (https://www.youtube.com/watch?v=ZLjWyanLHuk)
- https://github.com/crossbario/autobahn-testsuite (https://github.com/crossbario/autobahn-testsuite)
- https://en.wikipedia.org/wiki/Cyclicredundancycheck (https://en.wikipedia.org/wiki/Cyclic_redundancy_check)
- https://en.wikipedia.org/wiki/Cyclicredundancycheck#CRC-32_algorithm (https://en.wikipedia.org/wiki/Cyclic_redundancy_check#CRC-32_algorithm)
- https://github.com/phoenixframework/websock (https://github.com/phoenixframework/websock)
- https://hexdocs.pm/plug/Plug.Conn.html#upgrade_adapter/3 (https://hexdocs.pm/plug/Plug.Conn.html#upgrade_adapter/3)
- https://podcast.thinkingelixir.com/57 (https://podcast.thinkingelixir.com/57) – Scaling Live Chat with Cade Wa
Released:
Dec 6, 2022
Format:
Podcast episode
Titles in the series (100)
7: Background Jobs with Miguel Palhas: We talk with Miguel Palhas about lessons learned while working with background jobs in production systems. He shares some tips he's learned through experience. We share other mistakes made and what we learn from them. We cover background job options, by Thinking Elixir Podcast