Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

The New New Thing


April 2002: The New New Thing


[click for larger image]

This programming environment employs diagramming to quickly assemble your applications for deployment on the Covigo platform, composed of "foundation" (Workflow and Integration) servers and "enhancement" (Deployment and Analysis) servers.

First PC apps. Then client/server. Then the Web. Now it's wireless and voice. The "New Thing" gets tacked on each time, but it's rarely integrated. So developers construct a new application from the data out to the presentation layer. Covigo wants to change that: They'd like to sell you on a single server architecture that can adapt to multiple output channels (the Web, wireless and voice) and different levels of "real-time": right now, off-line or alerts.

The Covigo Studio (shown) is the programming environment; it employs diagramming to quickly assemble your various applications for deployment on the Covigo platform, which is composed of "foundation" servers (Workflow and Integration) as well as "enhancement" servers (Deployment and Analysis).

Contact Covigo for pricing.

Covigo Inc., 2350 Mission College Blvd., Suite 490, Santa Clara, CA 95054, Tel: (800) 501-4571, Fax: (408) 566-4101 www.covigo.com

—Rick Wayne

Mercury Put to Shame
"Don't reinvent the wheel." How many times have we heard that? Nevertheless, many of us persist in reinventing not just the wheel, but lug nuts, tire rubber and incredible new inflation gases, when all we're supposed to be doing is driving to the grocery store for a gallon of skim milk.

If you build distributed enterprise systems and you're more interested in getting somewhere than in inventing a vehicle, Sonic Software can definitely sell you the whole automobile. They've built their reputation in messaging by paying attention to things like performance, scalability and the level of abstraction offered to programmers. You don't have to invent application code to deal with an interrupted connection—they did that. You don't have to puzzle out protocols for getting the UK sales office's server to talk to the Arizona product warehouse—they did that, too.

SonicMQ implements the Java Message Service standard-a means of seamlessly enabling Java applications to talk to each other at a high level. Sonic has extended JMS to provide a secure, scalable, fault-tolerant infrastructure that goes beyond the usual JMS hub-and-spoke setup; not only can the message brokers talk to their clients, their patent-pending Dynamic Routing Architecture lets message brokers chat, too, via a guaranteed-delivery channel. Messages move transparently from source to destination, regardless of physical or organizational boundaries. Of course, they haven't forgotten security: Applications can use digital certificates or logon/password authentication, and messages are encrypted. In fact, says Bill Cullen, Sonic's VP of engineering, "Our customers feel comfortable with deploying message server out in the DMZ, so that applications never have to open an inbound port through the firewall."

Version 4.0 of SonicMQ introduces messaging over HTTP, allowing SonicMQ to interoperate with non-JMS architectures. Both inbound and outbound HTTP requests are supported with full security. A new JMS client provides message persistence, which guarantees that client failures and interrupted connections won't lose messages. Furthermore, if you prefer, the sending application doesn't even have to deal with the break; once connectivity is restored, the conversation proceeds as if nothing had happened. SonicMQ now supports multipart messages as well as arbitrarily large ones.

SonicXQ is a brand-new product, although it builds on Sonic's strengths. "We decided to separate the up-and-coming, business-to-business, company-to-company stuff from the communications infrastructure," says Cullen, "and XQ is the result." In fact, SonicXQ isn't just a new product, it's a new product category: a whole toolset for building enterprise-level, secure, 24x7-reliable XML document-exchange applications. (We'd better come up with a snappy acronym for that category pretty soon—I don't want to say that again.)

SonicXQ supports existing Web services standards like SOAP, WSDL and UDDI, but provides more than just call-and-response semantics. It's designed to allow distributed applications, implemented on Web and application servers, to exchange XML documents securely, reliably and quickly. SonicXQ emphasizes configurability at deployment time, instead of requiring you to wire implementation dependencies into code. Some interesting features include:

  • Content-based routing, where scripting code inside a message can control its destination(s).
  • Built-in Extensible Stylesheet Language Transformation capabilities.
  • Message flow automation, so that each message can be routed to a whole itinerary of destinations.
  • A built-in SOAP processor that can hook into Java Connector Architecture calls made to legacy systems.

SonicMQ runs on Windows 2000 and NT 4.0 SP5, Solaris 2.6 or 2.8, Red Hat Linux 7.1, AIX 4.3.3.10 and HP-UX 11.0. SonicXQ is available for Windows 2000, NT 4.0 and Solaris 2.8. Contact Sonic Software for pricing.

Sonic Software Corp., 14 Oak Park, Bedford, MA 01730, Tel: (781) 999-7000, www.sonicsoftware.com

—Rick Wayne

With Eyes Aflame
"And hast thou hacked the Jabberwock, my son?"

Like so many software projects, Jabber was born to scratch someone's personal itch: Jeremie Miller wanted to bridge incompatible instant messaging protocols. The XML-based lingua franca became highly popular, so an O'Reilly book was inevitable. In Programming Jabber: Extending XML Messaging (2001), author DJ Adams lays out the technology inside Jabber, how to set up a server, and how to utilize its protocols for building your own P2P applications (the "Pointers For Future Development" chapter covers browsing LDAP and running XML-RPC over Jabber, for example). Programming Jabber is $39.95 from O'Reilly.

O'Reilly Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472, Tel: (800) 998-9938, www.oreilly.com/catalog/jabber/

—Rick Wayne

Mythical Heroes Need Not Apply
Thomas Sterling and Donald Becker probably wouldn't have invented Beowulf clusters if they'd had their druthers—but they had champagne computing needs and a beer budget. So they rifled their organization's computer graveyards, invested a heroic amount of hackery, and proved that even obsolete, commodity PCs could band together into a supercomputer.

If you're a little less inclined to invent, say, channel-bonded Ethernet drivers yourself, but still want Linux cluster power for number-crunching, take a look at The Portland Group's Cluster Development Kit (CDK). According to the company, version 3.3 puts everything but the hardware and Linux together for you if you're building a Linux cluster. You put on the operating system—they supply the optimized, parallelized, number-whomping compilers, libraries and tools to kick some serious numerical keister. They claim to accommodate legacy Fortran 77 with Cray, DEC or IBM extensions, as well as interoperating with plain old GNU g77. They also supply Pentium-optimized Fortran 90, High Performance Fortran (HPF) and C++ compilers. You can exploit parallel computation via the Message Passing Interface (MPI) standard, or use explicit HPF or OpenMP directives. The F77 and F90 compilers also support automatic parallelization for symmetric multiprocessor (SMP) workstations, should your budget include those in your cluster. Naturally, they claim outstanding performance, 30% better than g77/egcs on the SPECFP_base95 benchmark.

Pricing for the CDK depends on number of CPUs (up to 256), the number of simultaneous users (up to 50), and whether you're a business, academic or government organization. For example, 16 CPUs for two users for, say, our group at the University of Wisconsin (Dr. Norman, are you reading this?) is $1,999; a 256-CPU license for 10 government users is $24,698.

The Portland Group, Tel (503) 682-2806, www.pgroup.com

—Rick Wayne

All Together Now
Sun's Forte programming tools have a pretty good reputation. They've had tools for C/C++, Java and Fortran for awhile now; Forte Developer 7 integrates them all into a single IDE, hooked up to power the Sun Open Network Environment (ONE) architecture. The whole thing is based on the open-source NetBeans codebase whence Forte for Java sprang. The unified environment lets developers like me, who have to context-switch between languages, change their language gears without popping the clutch.

Forte Developer 7 is designed to ease the pain of bringing legacy C and C++ applications into today's Web-based world, enabling you to wrap them either as Java classes (including EJBs) or as XML-based services. This is done via a Native Connector Tool that lets you exploit the Java Connector Architecture instead of puzzling JNI voodoo late into the night or recoding your legacy logic in Java (yay!).

Other improvements in version 7 include a stand-alone performance analyzer and OpenMP parallelization support in C++.

Sun Microsystems Inc., 901 San Antonio Road, Palo Alto, CA 94303, Tel: (650) 960-1300, www.sun.com

—Rick Wayne


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.