{-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} {-# OPTIONS_GHC -fno-warn-missing-signatures #-} {-# OPTIONS_GHC -fno-warn-unused-binds #-} import Control.Monad import Network.GRPC.LowLevel import Network.GRPC.LowLevel.Call import qualified Network.GRPC.LowLevel.Client.Unregistered as U import System.Environment echoMethod = MethodName "/echo.Echo/DoEcho" _unregistered c = U.clientRequest c echoMethod 1 "hi" mempty main = withGRPC $ \g -> withClient g (ClientConfig "localhost" 50051 []) $ \c -> do rm <- clientRegisterMethod c echoMethod Normal replicateM_ 100000 $ clientRequest c rm 5 "hi" mempty >>= \case Left e -> error $ "Got client error: " ++ show e _ -> return ()