Bir GrPC sunucusunu konsol daemon olarak çalıştırmaya çalışıyorum. Bu gRPC sunucusu, bir docker kabında çalışan bir microservice'dir.Dotnet Core Grpc Server'ı konsol uygulaması olarak mı çalıştırıyorsunuz?
örneklerin hepsi ben faydalanmak bulabilirsiniz şunlardır:
Console.ReadKey();
Bu gerçekten ana iş parçacığı engellemek ve çalışan ancak aşağıdaki hata ile docker çalışmaz tutar kapsamaz:
"Cannot read keys when either application does not have a console or when console input has been redirected. Try Console.Read."
Şimdi, özellikle docker için bir geçici çözüm bulmaya çalışabilirim, ancak bu hala doğru değil. Hizmeti çalıştırmak için iyi bir "üretim hazır" yolu bilen var mı?
:
Örneğinsenin olayda, şöyle bir şey hayal docker kabı. Bu sizin için işe yaramazsa, sadece thread.leep (Timeout.Infinite) ' –
Docker konteyner bir bulut platformunda bir kubernetes küme içine yerleştirilir ile ana iş parçacığı uyuyabilirsiniz. Etkileşimli kapsayıcılar bir seçenek değildir. Thread.Sleep ile ilgili sorun, örneğin konteyner durdurulduğunda, grpc sunucusunun zarif bir şekilde kapatılmamasıdır. –