Какую технологию использовать для fast cache API в .net

#.net #asp.net-core #wcf #grpc

#.net #asp.net-ядро #wcf #grpc

Вопрос:

У меня есть сложный механизм кэширования, который находится внутри моего приложения и использует словари для извлечения данных. Код загружает данные из базы данных и сохраняет их в словарях в памяти самого приложения. Я хочу удалить кеш из приложения и создать cache API.

Причины:

  1. Сократите время, необходимое для запуска приложения
  2. Уменьшите объем памяти приложения.
  3. Чтобы другие приложения могли получать данные из кэша.

Самое главное в новом cache API — это скорость API. Я перехожу из словарей в памяти приложения во внешний API, и это замедлит работу приложения.

Какой вариант даст мне максимальную скорость?

  1. .Net Core Rest API
  2. GRPC
  3. WCF
  4. Другой вариант?

Спасибо.

Комментарии:

1. WFC основан на SOAP и использует стандартную схему XML, которая может быть медленнее. С другой стороны, Web API может использовать любой текстовый формат, поэтому он быстрее и является первым выбором для легковесных сервисов. WCF — идеальный выбор, когда вам нужно создавать службы, поддерживающие уникальные решения, такие как дуплексная связь и односторонний обмен сообщениями. Когда вам нужно использовать HTTP для создания ресурсоориентированных сервисов, которые могут использовать все возможности HTTP, вам следует выбрать Web API.

2. gRPC использует HTTP / 2, который намного быстрее, чем HTTP / 1.1, используемый в REST по умолчанию. gRPC использует буферы протокола для сериализации данных полезной нагрузки, которые являются двоичными и небольшими. Но у gRPC также есть недостатки. В настоящее время не все браузеры поддерживают gRPC.