简单的问题考虑最简单的斯科蒂应用:关于斯科蒂Haskell的Web框架
{-# LANGUAGE OverloadedStrings #-}
import Web.Scotty
import Data.Monoid (mconcat)
main = scotty 3000 $ do
get "/:word" $ do
beam <- param "word"
html $ mconcat ["<h1>Scotty, ", beam, " me up!</h1>"]
我把这个代码放到app.hs
并与GHC编译。我用./app
运行它。简单。
当人们访问该网站时真的发生了什么?这只是一个
./app
正在运行。每当用户触发get "/:word" $ do
行时,是否会在此应用程序中创建新线程?有多少这样的线程可以存在?千?万?运行后
./app
显示消息Setting phasers to stun... (port 3000) (ctrl-c to quit)
。但它没有显示任何更多。它不输出传入的Web请求。我怎样才能做到这一点?这对于日志记录很有用。
谢谢,这个工程。如果你知道如何回答我关于nginx背后的一个scotty应用程序的下一个问题,请感受一下:https://stackoverflow.com/questions/25537495/logging-when-scotty-haskell-web-app-is-running-behind-nginx – stackoverflowuser 2014-08-27 21:48:26
什么管理这些绿色线程?什么决定什么时候和多少人创造和杀死? – 2016-04-22 16:13:44