Информация об изменениях

Сообщение Re[5]: gRPC-Web vs. Web API от 07.08.2020 18:57

Изменено 07.08.2020 19:00 Serginio1

Re[5]: gRPC-Web vs. Web API
Здравствуйте, takTak, Вы писали:

T>>>да, сорри, я перепутал: т.е. я не gRPC-Web, а gRPC использовал, всё равно по сравнению с локальным вызовом как-то долго получается...


НС>>А ты хотел чтобы вызов через несколько процессов и через стек TCP/IP был сопоставим по скорости с локальным? Серьезно?


T>что значит "несколько процессов" ? речь идёт о коммуникации без сетевого трафика между двумя процессами на одной и той же машине, прочём с использованием бинарной сериализации, у меня на боевой машине получается разница в 15 -40 раз, откуда такое берётся ?! ну раза в 2-3 ещё куда ни шло...


Ну я так понял из кода, что SomeLegacyService вызывается из текущего процесса

public class SomeLegacyService: IService
    {
        public Result CalculateSomething(RequestDto request)
        {
            try
            {
                //Thread.Sleep(TimeSpan.FromMilliseconds(10));

                return FakeDataProvider.Instance.GetResult();
                
             }
            catch (Exception ex)
            {
                throw;
            }
        }
    }


А вэб и gRPC подключаются к отдельным процессам.
Хоть и говорят, что gRPC прирост за счет постоянного соединения, но у меня максимум в 2 раза получилось. Хотя на TCP/IP на одной машине разница раз в 15
https://ru.stackoverflow.com/questions/630653/tcp-ip-%d1%81%d0%ba%d0%be%d1%80%d0%be%d1%81%d1%82%d1%8c-%d0%be%d0%b1%d0%bc%d0%b5%d0%bd%d0%b0
Re[5]: gRPC-Web vs. Web API
Здравствуйте, takTak, Вы писали:

T>>>да, сорри, я перепутал: т.е. я не gRPC-Web, а gRPC использовал, всё равно по сравнению с локальным вызовом как-то долго получается...


НС>>А ты хотел чтобы вызов через несколько процессов и через стек TCP/IP был сопоставим по скорости с локальным? Серьезно?


T>что значит "несколько процессов" ? речь идёт о коммуникации без сетевого трафика между двумя процессами на одной и той же машине, прочём с использованием бинарной сериализации, у меня на боевой машине получается разница в 15 -40 раз, откуда такое берётся ?! ну раза в 2-3 ещё куда ни шло...


Ну я так понял из кода, что SomeLegacyService вызывается из текущего процесса

public class SomeLegacyService: IService
    {
        public Result CalculateSomething(RequestDto request)
        {
            try
            {
                //Thread.Sleep(TimeSpan.FromMilliseconds(10));

                return FakeDataProvider.Instance.GetResult();
                
             }
            catch (Exception ex)
            {
                throw;
            }
        }
    }


А вэб и gRPC подключаются к отдельным процессам.
Хоть и говорят, что gRPC прирост за счет постоянного соединения, но у меня максимум в 2 раза получилось. Хотя на TCP/IP на одной машине разница раз в 15
https://ru.stackoverflow.com/questions/630653/tcp-ip-%d1%81%d0%ba%d0%be%d1%80%d0%be%d1%81%d1%82%d1%8c-%d0%be%d0%b1%d0%bc%d0%b5%d0%bd%d0%b0/634019#634019