YOUR FEEDBACK
SOA Feature Story: Real-Time SOA Starts with the Messaging Bus!
Gerardo Pardo-Castellote wrote: Regarding the previous comment about "TCP ...
AJAXWorld RIA Conference
$300 Savings Expire July 25
Register Today and SAVE!


2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TOP LINKS YOU MUST CLICK ON


Bringing Ruby to the Enterprise
Is Ruby Ready?

Digg This!

Page 2 of 2   « previous page

There are several options for database access where legacy database schemas are too complex for ActiveRecord to handle. The first is a mature ORM called Lafcadio. One of its design goals is to offer strong support for legacy schemas. Another option is to fall back from ORMs to direct database connections. Ruby includes a database abstraction layer called DBI, which is similar to JDBC in Java, and allows for database independence. Of course, another option would be to use a database driver directly. Note that ActiveRecord provides access to these other layers, so variations from ActiveRecord's preferred style of schema design can be handled without losing ActiveRecord's benefits.

Note that for working with Rails, the presentation tier doesn't require either ActiveRecord or any database for that matter. Rails can easily be used as a front-end to a Service Oriented Architecture (SOA) or any external service-based API that Ruby can connect to. In this tiered approach, there's a clean separation between the Rails presentation layer and the service and data layers. Different teams can develop the different layers using different technologies.

Ruby offers a number of options for integration with enterprise services. Ruby can be bridged to existing JMS messaging systems that support STOMP (the Streaming Text Orientated Messaging Protocol). STOMP is an open messaging protocol that provides publish/subscribe services, as well as receipt and transaction services. Ruby has good SOAP support, and Ruby classes can be generated from WSDL. It also has a very complete XML-RPC library.

Ruby has excellent base HTTP client support for custom HTTP messaging integration. It offers a WEBrick embedded Web server/servlet container for message exchange. WEBrick can also be easily integrated with existing CGI scripts and provides HTTPS/SSL support.

There are several areas where direct Ruby support for enterprise technologies is lacking. There's no standard Ruby service comparable to JMX for application management. There's also no support for a standard authentication/authorization service. Distributed transactions aren't available through any Ruby transaction manager. There's also no real CORBA support in Ruby. Finally, internationalization support isn't unified like it is in Java. Although there are libraries available to bridge some of the gaps, custom i18n development may be required, depending on the application.

In these areas where Ruby lacks native integration support, there are Ruby-Java bridges available for direct integration with existing Java code, or for bridging to services that Java's better at.

MomentumSI Recommendations
It can be a challenge to decide whether Ruby makes sense for a particular enterprise project. MomentumSI offers guidance on using Ruby on projects according to various enterprise application categories:

  • Mission critical/non-stop processing: Ruby's not ready for an environment that includes integrating with transaction monitors or CICS/IMS interfaces.
  • Complex transactional: Ruby's suitability in a complex transactional environment depends on the nature of the transactions. While Ruby doesn't offer native XA support natively, it can be integrated into transactional messaging systems. This opens up the possibility of using Ruby for enterprise application integration.
  • SOA/Web Services: Ruby can be used as both a producer and a consumer of SOAP-based Web Services, enabling it to be used in Service Oriented Architectures.
  • Data-intensive: Ruby has been proven in data-intensive applications. Examples include space shuttle simulations done by NASA and meteorological number crunching done by NOAA.
  • Web applications: Ruby on Rails is a productivity leader in database-backed Web applications. It scales well and has excellent developer support.
  • Workgroup software: Software in the enterprise targeted at workgroups usually requires rapid prototyping, which is a Ruby strength.
Conclusion
MomentumSI recommends that those businesses looking for a competitive advantage consider using Ruby in an enterprise environment. While Ruby isn't ready to be used in every aspect of the enterprise, it can fit into many areas of an application strategy. By doing so a business can reap the productivity gains from the agility that the Ruby platform offers.


Page 2 of 2   « previous page

About Brad Banister
Brad Banister is a principal consultant in the service-oriented architecture practice at MomentumSI. His current research is in applying agile methods and technologies in the implementation of service-oriented architectures.

ENTERPRISE OPEN SOURCE MAGAZINE LATEST STORIES . . .
SOA Company IONA Partners with Chariot Solutions
IONA has announced that Chariot Solutions has become a FUSE Partner. Chariot Solutions, as a FUSE Partner, will resell IONA's FUSE family of Open Source services and solutions to address customers' enterprise Open Source requirements.
IONA and Chariot Solutions Accelerate Adoption of Enterprise Open Source
IONA announced that Chariot Solutions has become a FUSE Partner. Chariot Solutions, as a FUSE Partner, will resell IONA's FUSE family of Open Source services and solutions to address customers' enterprise Open Source requirements. As a FUSE Partner, Chariot Solutions' consulting custom
DeathWish Might Have Been a Better Name
As predictable as the bet that night will follow day, Apple sued a little widely watched wannabe Mac cloner in Florida called Psystar that's been selling a $399 box called Open Computer for the last few months.
Red Hat Solutions Deliver Flexibility and Reliability for InfoCamere
Red Hat announced that InfoCamere, an organization responsible for managing the IT systems that connect and secure over 100 Italian Chambers of Commerce, relies on Red Hat and JBoss solutions for flexibility, reliability and ease of use for its mission-critical systems.
Virtualization, Microsoft, Yahoo & Google
Citrix has tapped its VP of channels and emerging product sales Al Monserrat to replace its departing sales chief John Burris, who, as previously reported, is going to Sourcefire as CEO. A couple of years ago Monserrat was responsible for Citrix' North American sales. Meanwhile, Citrix
Zoho Signs Swisscom to Six-Month Pilot
Zoho, the online Office wannabe, has gotten Swisscom, the telephone side of the old Swiss PTT monopoly, to offer its 300,000 business customers a suite of Zoho's SaaS applications as part of a six-month pilot through its Teamnet portal. The Zoho Business suite, including Zoho Writer, S
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON FEATURED WHITEPAPERS

ADS BY GOOGLE