大規模な JSON を suave で返す可能性のあるクエリがあります。
let queryCustomers(term, sorted:string) =
use db = DbClient.openConn()
let sort = sorted |> Customers.strToSorted
CustomerDb.querySearch(db, term, sort) |>JsonUtils.toJson
クエリは Seq を返します。
ここで、すべてのクエリを 1 つのステップで JSON に変換しますが、操作全体を高速化し、結果をストリーミングして返すことができるかどうか疑問に思います。
let doReq route request action =
path route >=> setCORSHeaders >=> request (fun r -> action(r) |> setJson)
doReq "/customers" request (fun r -> queryCustomers(r |> getTerm, r |> getSort))