Одним из преимуществ, которое дает REST между передним и внутренним уровнями, является гибкость добавления промежуточного слоя кеширования HTTP для повышения производительности без необходимости изменения любого из существующих слоев. То же самое относится и к балансировке нагрузки для масштабирования серверной части, поскольку балансировщики нагрузки HTTP очень хорошо понятны и просты в развертывании.
Эти два преимущества REST могут привести к значительному преимуществу по сравнению с более традиционными методами сериализации RPC, в зависимости от ситуации, особенно если у вас есть "медленные" внутренние процессы, которые могут извлечь выгоду из кэширования или быть сбалансированными по нагрузке.
Другое место, где REST выигрывает, - это если вам нужно расширить клиентскую базу с помощью серверных сервисов (на что, я думаю, вы намекали с желанием независимости языка). Уровень обслуживания на основе REST не только позволяет свободно смешивать языки клиентов, но также позволяет легко открывать свой API сторонним разработчикам практически без без дополнительных усилий . Наличие платформы , на которую могут опираться другие, оказалось чрезвычайно успешным в качестве бизнес-модели, и никогда не помешает сделать вашу разработку максимально открытой и гибкой.