Hi there, I am pretty new in Ruby on Rails world. Current, I am working with a single tier ROR application. Came from J2EE world, just wonder how Multi-Tier Architecture works in ROR world? Can anyone share your experience with me? Thanks
On Wed, Oct 28, 2009 at 5:47 PM, Suki <sukio5o1-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> > Hi there, > > I am pretty new in Ruby on Rails world. Current, I am working with a > single tier ROR application. Came from J2EE world, just wonder how > Multi-Tier Architecture works in ROR world? Can anyone share your > experience with me?RoR is an MVC implementation. It is a multi tier framework. -- Leonardo Mateo. There''s no place like ~
Right. It''s MVC, rather than three-tiered. It is fairly flexible to different architectures, as it''s easy to map external RESTful resources in or out using ActiveResource or other gems. Using Passenger as your Rails server takes care of serving a lot of your static content without the overhead of touching your Rails instances (and depending on how complex your Apache config is, it can be optimized). Even then, though, I''m not sure that qualifies as what I''m assuming you mean by ''multi-tiered.'' On Oct 28, 3:41 pm, Leonardo Mateo <leonardoma...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> On Wed, Oct 28, 2009 at 5:47 PM, Suki <sukio...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > Hi there, > > > I am pretty new in Ruby on Rails world. Current, I am working with a > > single tier ROR application. Came from J2EE world, just wonder how > > Multi-Tier Architecture works in ROR world? Can anyone share your > > experience with me? > > RoR is an MVC implementation. It is a multi tier framework. > > -- > Leonardo Mateo. > There''s no place like ~
I think what Suki means is distributed architecture, as in: database server, caching server, application server(s) and web farm. In most enterprise environments you would connect distributed applications to a middle-tier server using SOA (UDDI/WSDL/SOAP), but the Ruby/Rails ilk seem to reject the SOAP stack (and WS-*) and favor the less rigorous REST/XML-RPC/JSON styles. They see the network through HTTP-protocol colored glasses. Personally, I wish that the REST/XML option had a (design-by-contract) approach, i.e, expose interface metadata (like WSDL) that can be consumed by a client application. There is a legacy SOAP-RPC stack for Rails 1.x called ActionWebServices (AWS), but it was dropped by the core Rails 2.x API in favor of HTTP-REST. AWS does have limited WSDL and XSD support, but it''s not capable of SOAP-DOC style (the preferred serialization format). I do like how it is implemented however, you can define data-transfer-objects using a built-in Struct type, that are used to infer XSD types in the interface metadata. There are a few forks of the AWS code on GitHub that have been updated to support Rails 2.3.x. There''s also WSO2, which uses a native DLL that provides SOAP-DOC with WS-* extensions. However, it is a pain to install, there is no easy gem install for it; also the documentation for it is anemic. -- Posted via http://www.ruby-forum.com/.
On Thu, Oct 29, 2009 at 2:31 AM, Kris Williams <rails-mailing-list-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> > I think what Suki means is distributed architecture, as in: database > server, caching server, application server(s) and web farm. > > In most enterprise environments you would connect distributed > applications to a middle-tier server using SOA (UDDI/WSDL/SOAP), but the > Ruby/Rails ilk seem to reject the SOAP stack (and WS-*) and favor the > less rigorous REST/XML-RPC/JSON styles. They see the network through > HTTP-protocol colored glasses. > > Personally, I wish that the REST/XML option had a (design-by-contract) > approach, i.e, expose interface metadata (like WSDL) that can be > consumed by a client application. > > There is a legacy SOAP-RPC stack for Rails 1.x called ActionWebServices > (AWS), but it was dropped by the core Rails 2.x API in favor of > HTTP-REST. AWS does have limited WSDL and XSD support, but it''s not > capable of SOAP-DOC style (the preferred serialization format). I do > like how it is implemented however, you can define data-transfer-objects > using a built-in Struct type, that are used to infer XSD types in the > interface metadata. There are a few forks of the AWS code on GitHub > that have been updated to support Rails 2.3.x. > > There''s also WSO2, which uses a native DLL that provides SOAP-DOC with > WS-* extensions. However, it is a pain to install, there is no easy gem > install for it; also the documentation for it is anemic.I think that''s because what your''re talking about here is a completly different architecture that the one Rails is designed for. If you want to use that architecture, you better not use Rails for that, use a tool designed for that architecture. -- Leonardo Mateo. There''s no place like ~
For SOAP support on Rails see Torquebox project based on JBoss Seam (Rails(2.3.4)/ScheduledJobs/TaskQueue/SOAP/Telecom supports) all under JRuby... http://torquebox.org/ Some presentation slides: http://torquebox.org/news/2009/10/torquebox-presentation-from-strange-loop-in-st-louis Hope this helps...> On Thu, Oct 29, 2009 at 2:31 AM, Kris Williams > <rails-mailing-list-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote: > >> I think what Suki means is distributed architecture, as in: database >> server, caching server, application server(s) and web farm. >> >> In most enterprise environments you would connect distributed >> applications to a middle-tier server using SOA (UDDI/WSDL/SOAP), but the >> Ruby/Rails ilk seem to reject the SOAP stack (and WS-*) and favor the >> less rigorous REST/XML-RPC/JSON styles. They see the network through >> HTTP-protocol colored glasses. >> >> Personally, I wish that the REST/XML option had a (design-by-contract) >> approach, i.e, expose interface metadata (like WSDL) that can be >> consumed by a client application. >> >> There is a legacy SOAP-RPC stack for Rails 1.x called ActionWebServices >> (AWS), but it was dropped by the core Rails 2.x API in favor of >> HTTP-REST. AWS does have limited WSDL and XSD support, but it''s not >> capable of SOAP-DOC style (the preferred serialization format). I do >> like how it is implemented however, you can define data-transfer-objects >> using a built-in Struct type, that are used to infer XSD types in the >> interface metadata. There are a few forks of the AWS code on GitHub >> that have been updated to support Rails 2.3.x. >> >> There''s also WSO2, which uses a native DLL that provides SOAP-DOC with >> WS-* extensions. However, it is a pain to install, there is no easy gem >> install for it; also the documentation for it is anemic. >> > > I think that''s because what your''re talking about here is a completly > different architecture that the one Rails is designed for. > If you want to use that architecture, you better not use Rails for > that, use a tool designed for that architecture. > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---