Voglio testare le prestazioni (richiesta per sec) di haskell warp http server. Non so nulla di haskell. Io voglio fare lo stesso come nel codice Erlang di seguito:Haskell Warp Performance vs Erlang Misultin testing (come caricare il contenuto di un file una volta e servire in risposta)
- carico "page.txt" solo una volta dal disco (file 100kB ascii)
- servono contenuto di tale file su ogni richiesta, ma senza ricaricare dal disco
Come fare questo in haskell?
Erlang:
-module(test).
-export([start/0]).
start() ->
{ok, Bin} = file:read_file("page.txt"),
misultin:start_link([{port, 3000}, {loop, fun(Req) -> Req:ok(Bin) end}]).
mi sono imbattuto in questo esempio Haskell e ho bisogno di modificata in modo da utilizzare i contenuti caricati da un file.
Haskell:
{-# LANGUAGE OverloadedStrings #-}
import Network.Wai
import Network.Wai.Handler.Warp
import Blaze.ByteString.Builder (fromByteString)
import Network.HTTP.Types (status200)
main = run 3000 $ const $ return $ ResponseBuilder
status200
[("Content-Type", "text/plain"), ("Content-Length", "4")]
$ fromByteString "TEST"
Aiutateci! :)
Quando si hanno dei risultati di riferimento, si prega di pubblicarli da qualche parte. – augustss