hello waf, hello phoenix

Click here to load reader

  • date post

    17-Jan-2017
  • Category

    Technology

  • view

    1.138
  • download

    0

Embed Size (px)

Transcript of hello waf, hello phoenix

PowerPoint

Hello WebApp,Hello Phoenix2016/8/31 tokyo.ex#5

Agenda|> |> Phoenix?|> web?|> web|> Phoenix|> Why |> Why |> Why |> /|> |>

@[email protected]/Elixir/Erlang/Ruby/Lisp/etcElixir: :2/: 1Elixir: 1/v:1.0.0 -> 1.3.1(elixir)Phoenix: 1/v:1.0.0 -> 1.2.0(phoenix)

(Elixir is ? )Web is ? Phoenix is ? WebPhoenixPhoenixWebPhoenix()

PhoenixElixirMVCWebwebchannel/websocket

Web/webEx) wikiblogECetc/

Web(Web)Web

RequestResponse

6

Web

WebWebHTTPWebSocketetcnginxApacheh2ocowboyetcI/FPython: WSGIPerl: PSGIRuby: RackClojure: RingLisp: clackHaskell: WAIScala: SSGIElixir: PlugPython: DjangoPerl: CatalystRuby: RailsClojure: CompojureLisp: caveman2Hskell: YesoldScala: PlayElixir: PhoenixDB/ORMPython: -Perl: -Ruby: ActiveRecordClojure: java.jdbcLisp: CLSQL/CL-DBIHskell: HDBCScala: SlickElixir: Ecto

Web

WebController

RouterActionModel

Bussiness LogicDatabaseView

TemplateDB driverORMWAF I/FControllerModelViewPushMVCPush

Phoenix

cowboyEndpointModel

DatabaseView

TemplateEctoPlugViewRouterControllerPipelinePlug.ConnPlug.Conn/plugplug:Plug.ConnPlug.Connfunction)

endpoint

router/pipeline

controller

Why

cowboyEndpointModel

DatabaseView

TemplateEctoPlugViewRouterControllerPipeline(accept)Erlang(,OS)Phoenixcowboy/ranchPhoenixcowboy/plug + OSHeavy

Phoenix

cowboyEndpointModel

DatabaseView

TemplateEctoPlugViewRouterControllerPipelinefunction)View:html/json/etc/renderTemplate:+Elixir//etceexcompile

Why

cowboyEndpointModel

DatabaseView

TemplateEctoPlugViewRouterControllerPipelinefunction)compileLinked List()()WAFElixir

view/template

Phoenix

cowboyEndpointModel

DatabaseView

TemplateEctoPlugViewRouterControllerPipelineErlang VM

Why

cowboyEndpointModel

DatabaseView

TemplateEctoPlugViewRouterControllerPipelineOSErlangVMOTPcowboyEctoPhoenixplug

etc

/

//mix/

//mixMVC: web:Input: web/staticOutput: privbrunch.io()

Elixir

Elixir http://www.modulecounts.com

/

/

WebPhoenixPhoenix ElixirElixir