Примечание: К сожалению, этот вопрос был закрыт, но я пытаюсь сохранить его на случай, если кто-то еще придет с тем же вопросом.
Я искал хорошее решение для разработки службы на Scala, которая будет располагаться между мобильными устройствами и существующими веб-службами.
Текущий список возможных вариантов:
] Вероятно, есть и другие варианты. Как решить, какой использовать? Каковы черты (извините за каламбур ;-) хорошего промежуточного программного обеспечения Scala. С одной стороны, я хотел бы выбрать Akka, потому что он является частью стека TypeSafe Scala, но с другой стороны, что-то вроде Finagle имеет богатый набор библиотек и упрощает работу с сантехникой. Спрей выглядит красиво и просто в использовании.
Мы будем благодарны за любые советы, идеи или опыт. Я уверен, что у кого-то должен быть некоторый опыт работы с некоторыми из них, которым они не будут возражать.
ОБНОВЛЕНИЕ:
Я бы хотел, чтобы этот вопрос был повторно открыт. Хороший ответ на этот вопрос поможет новым скалаторам избежать связанных ловушек.
ОБНОВЛЕНИЕ 2:
Это мой собственный опыт после того, как я задал этот вопрос:
Finagle - Я использовал Finagle для проекта, и он надежен.
Spray - В моем последнем проекте я использую Spray, и я очень счастлив. Последние выпуски построены на Akka 2, и вы можете запускать их напрямую с помощью библиотеки Spray-can, которая устраняет необходимость в веб-сервере. Spray - это набор библиотек, а не фреймворк, и он очень модульный. Видео Learn about Spray: REST на Akka дает отличный обзор, а этот блог на Cakesolutions показывает действительно хороший подход к разработке и архитектуру.
ОБНОВЛЕНИЕ 3:
Жизнь движется довольно быстро. Если вы не будете останавливаться и время от времени оглядываться, вы можете пропустить это. - Феррис Бьюллер
В наши дни выбор стал проще. По моему скромному мнению, Спрей выиграл битву. Он интегрируется в Akka , чтобы стать следующим Akka HTTP. Я использую Spray сейчас в нескольких проектах и могу честно сказать, что это фантастическое и лучшее поддерживаемое программное обеспечение, с которым я когда-либо сталкивался.
Это не отвечает на первоначальный вопрос, но, по крайней мере, дает некоторое представление о том, почему Spray кажется лучшим выбором в большинстве случаев. Он чрезвычайно гибкий, неблокирующий и очень стабильный. В нем есть как клиентские, так и серверные библиотеки, а также отличный тестовый набор. Кроме того, взгляните на эту статистику, чтобы получить представление о производительности: Тесты производительности Web Framework