Использование веб-потоков Grails / Spring в Rails - PullRequest
0 голосов
/ 01 сентября 2011

Каков наилучший способ обработки основанного на разговорах веб-потока в Rails?Мне интересно, есть ли что-то похожее на http://grails.org/doc/1.0.x/guide/single.html#6.5%20Web%20Flow


Веб-поток - это диалог, который охватывает несколько запросов и сохраняет состояние для области действия потока.Веб-поток также имеет определенное начальное и конечное состояние.

Веб-потоки не требуют сеанса HTTP, а вместо этого сохраняют свое состояние в сериализованной форме, которая затем восстанавливается с использованием ключа выполнения потока, который передает Grailsвокруг в качестве параметра запроса.Это делает потоки гораздо более масштабируемыми, чем другие формы приложений с сохранением состояния, которые используют HttpSession и его наследующую память и проблемы кластеризации.

Веб-поток по сути представляет собой продвинутый конечный автомат, который управляет «потоком» выполнения из одного состояния вследующий.Поскольку состояние управляется для вас, вам не нужно заботиться о том, чтобы пользователи вводили действие в середине некоторого многоступенчатого потока, поскольку веб-поток управляет этим для вас.Это делает веб-поток идеальным для вариантов использования, таких как корзины покупок, бронирование гостиниц и любые приложения, которые имеют многостраничные рабочие потоки.

1 Ответ

0 голосов
/ 13 апреля 2012

Я только начал изучать этот вопрос сам, но с точки зрения СУХОГО просмотра кода. Много не нахожу, но есть:

https://github.com/jcoglan/action_flow, что может потребовать перенастройки для новых Rails

http://rubyforge.org/frs/?group_id=2769, который не имеет документов и выглядит альфа

Возраст и уровни активности в каждом проекте заставляют меня думать, что они были заброшены.

Соединение потоков в виде двухточечных связей императивных вызовов с маршрутами / контроллерами / действиями / представлениями, которые делают фиксированные предположения о том, где они попадают в цепочку (или, что еще хуже, увлекают множество условий для работы с различными потоками), это, конечно, один из способов, которым я видел это. Все еще задаюсь вопросом, является ли это привилегированной акцией в торговле в мире Rails, или есть ли другие идиомы, которые вытесняют ее, о которой я просто не знаю.

...