WebAssembly and Containers

แชร์
ฝัง
  • เผยแพร่เมื่อ 7 ต.ค. 2024
  • Get familiar with WebAssembly and containers in this demo. Get started with Docker and try it for yourself → dockr.ly/3QqFtmJ
    WebAssembly (Wasm) has generated buzz as the next cloud technology. In this talk, we focus on Wasm's promise and where it fits into the cloud. We conclude with examples of Docker and Wasm complementing each other.
    WebAssembly is a promising technology for many reasons, including language neutrality, cross-platform/architecture support, a security sandbox, small binary sizes, and great performance. Seizing on these positives, many of us have begun developing cloud-centered Wasm tools - tools that run on the server, not in a web browser. And we've seen Wasm’s virtues come through in surprising ways. The enthusiasm toward WebAssembly is justified!
    But we’ve been disappointed to see pundits and newcomers pit WebAssembly against Docker in a zero-sum game. Wasm is wrongly touted as a "replacement for Docker," when, in fact, Wasm complements Docker. It can do some things Docker can’t, but isn’t able to do many things that have long made Docker the most attractive way of developing cloud applications.
    This talk introduces Wasm, focusing on its promise in cloud contexts. Then we go on to illustrate how Docker containers and the burgeoning Wasm ecosystem work together. We show examples of a microservice architecture that uses Wasm and Docker, then conclude with some speculation about what a future WebAssembly+Docker ecosystem might look like.
    • Speaker:
    Matt Butcher
    Find him on Twitter - / technosophos
    Find him on LinkedIn - / mattbutcher
    • References :
    Play Finicky Whiskers → finickywhisker...
    Checkout Spin → spin.fermyon.dev
    GitHub Repository → github.com/fer...
    Follow them Fermyon on Twitter → / fermyontech
    --
    Join the conversation!
    LinkedIn → dockr.ly/LinkedIn
    Twitter → dockr.ly/Twitter
    Facebook → dockr.ly/Facebook
    Instagram → dockr.ly/Insta...

ความคิดเห็น • 21

  • @TheDataMuseum
    @TheDataMuseum ปีที่แล้ว +4

    Absolute game changer! Can't believe this hasn't been talked nearly enough as it should

  • @karelhrkal8753
    @karelhrkal8753 2 ปีที่แล้ว +15

    7:25 "The characteristics that make it great for the browser also make it great for the cloud". Coincidence? I think not!
    You described cloud computing earlier as "running your code on someone else's computer securely", but that's *exactly* what a browser does. Putting JS or WASM into a webpage is, in a fact, a form of cloud computing - you are running your code on someone else's (the client's) computer.

  • @bjugdbjk
    @bjugdbjk 2 ปีที่แล้ว +5

    Excellenet presentation, Now got the picture of Docker & Webassembly , This is like a fight between Apple Vs Microsoft in 90's ...Actually, truth is both does different things nd both needs to be there in the ecosystem serving different purpose.

  • @Wfmike
    @Wfmike ปีที่แล้ว +1

    Somehow WebAssembly makes it feel like introducing compiled language to JavaScript developer for the first time ever whereas rest of the industry's been doing for years.

    • @KManAbout
      @KManAbout ปีที่แล้ว

      Js developers have been doing compiling for years

  • @karelhrkal8753
    @karelhrkal8753 2 ปีที่แล้ว +12

    I'm interested if docker containers could run in WASM in the browser one day. That would be truly amazing.

    • @TheCardil
      @TheCardil 2 ปีที่แล้ว +6

      Why would you like that? Browsers could run Wasm already without a Docker as middle man. Any middleman would only add overhead.

    • @ryanleemartin7758
      @ryanleemartin7758 2 ปีที่แล้ว

      You want docker containers to run in wasm in the browser? For what purpose? Isn't docker essentially isolating linux user space? It still needs a kernel to operate. Am I missing something? I'm intrigued but I don't grasp the concept

    • @karelhrkal8753
      @karelhrkal8753 2 ปีที่แล้ว +2

      @@ryanleemartin7758 You could run programs that can be dockerized, but that do not compile to wasm. Also, I can just grab any docker container and just run it, I don't need to get the sources, optimize them for wasm, etc etc etc.
      Also, file IO could be implmeneted with local storage.

    • @ryanleemartin7758
      @ryanleemartin7758 2 ปีที่แล้ว

      @@karelhrkal8753 That sounds very cool but you'd still need a linux kernel. How could that work?

    • @karelhrkal8753
      @karelhrkal8753 2 ปีที่แล้ว

      @@ryanleemartin7758 And what is Linux kernel implemented in? C, probably. And C can compile to WASM.

  • @meepk633
    @meepk633 ปีที่แล้ว

    I don't know what it is, but containerization just scratches some weird itch. I love the idea of portable environments and static volumes. It almost feels transgressive lol

  • @RichM1967
    @RichM1967 2 ปีที่แล้ว +1

    What is the difference between wasm running in docker and a golang binary running in a scratch Docker container? I have a web server I wrote in Go in that scratch docker container with a resulting size of 7MB. This web server has served 100,000 requests and transferred 10 gigs of data in 34 seconds.

    • @saidinesh5
      @saidinesh5 2 ปีที่แล้ว

      The wasm will still have to be run by an interpreter.. which is written in probably C++ or rust or even go.
      So it will obviously be slower than your go lang binary running in a scratch docker container.
      However, if your golang binary is supposed to serve requests based on code written by someone else.. you can use a webassembly interpreter inside your golang binary and load their code compiled to wasm and make those interpreters handle the incoming requests.

  • @alexandershemelin6605
    @alexandershemelin6605 2 ปีที่แล้ว +1

    lovely

  • @_dinesh
    @_dinesh ปีที่แล้ว +1

    Now I know how Azure container apps can scale down to zero :)

  • @daemond7746
    @daemond7746 ปีที่แล้ว

    nice

  • @edgeeffect
    @edgeeffect 2 ปีที่แล้ว +1

    Good grief! Your cat is GREEDY!

  • @markokraljevic1590
    @markokraljevic1590 ปีที่แล้ว +1

    hey man, this is useless, you need to give 3 minutes high level overview with main points and not 25 minutes of useless blabbing without structure