Известны ли проблемы с использованием Scala с Apache Camel? - PullRequest
6 голосов
/ 04 ноября 2010

Я знаю, что есть поддерживаемый Scala DSL для Camel.Кроме этого

  • Реально ли полностью заменить Java (язык) на Scala для проекта на базе Camel?

  • Какой тип известногоИзвестно, что проблемы существуют?

  • Какие обходные пути существуют для этих проблем (кроме использования Java)?

Я в основном ищу меньше проблемкод.

Ответы [ 3 ]

8 голосов
/ 05 ноября 2010

Akka предлагает стабильную Scala-idiomatic Верблюжий интеграция .

Модуль Акка-верблюд позволяет актерам, нетипизированные актеры и набранные актеры получать и отправлять сообщения через большой Разнообразие протоколов и API. это раздел дает краткий обзор общие идеи, стоящие за верблюдом модуль, остальные разделы идут в детали. Помимо родного Scala и Java актер API, актеры могут теперь обмениваться сообщениями с другими системы по большому количеству протоколов и API, такие как HTTP, SOAP, TCP, FTP, SMTP или JMS, чтобы упомянуть несколько. На момент, около 80 протоколов и API поддерживаются.

Кроме того, я уверен, что эта замена возможна из-за хорошего взаимодействия, и вряд ли могут быть какие-то специфичные для Scala проблемы, не свойственные Java. Например, Akka Актеры, используемые для публикации / использования с конечных точек Camel, основаны на java.util.concurrency, и единственная проблема, о которой я могу думать, это исправляемая ошибка в библиотеке.

1 голос
/ 05 ноября 2011

Тем временем для Camel , был разработан относительно простой Scala DSL, который должен обладать функциональностью Java DSL .

Чтобы решить, реалистично ли это для вас, подумайте:
- Качество поддержки IDE для языков
- Сложность языка Scala
- популярность языка Scala / Java
- Возможности расширения DSL. В Scala должна быть возможность (с некоторой магией Scala) расширить DSL (добавить дополнительные элементы DSL)

Если вы решите попробовать это, было бы здорово, если бы вы поделились своим опытом с сообществом Apache Camel о своих впечатлениях: code readability, code maintainability, code efficiency, developer satisfaction, code size, число "man-days".

0 голосов
/ 18 сентября 2016

С тех пор (2010-2011 гг.) Теперь (сентябрь 2016 г.) существует недавняя инициатива, названная Akka Streams Integration, кодовое имя Alpakka .

Мы считаем, что Akka Streams может стать инструментом для создания современной альтернативы Apache Camel . Это не произойдет само по себе в одночасье, и это призыв к сообществу присоединиться к нам в этой миссии. Самый большой актив Camel - его богатый набор компонентов конечной точки . Мы хотели бы видеть, что аналогичные конечные точки разработаны для Akka Streams.

См. "akka/akka-stream-contrib".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...