★ wanayoo — archive 1999 http://developer.java.sun.com/developer/community/chat/JavaLive/1997/jl1007.htmlNouvelle recherche | Portail wanayoo
Java Technology Home Page
A-Z Index

Java Developer Connection(SM)
Chat

Downloads, APIs, Documentation
Java Developer Connection
Tutorials, Tech Articles, Training
Online Support
Community Discussion
News & Events from Everywhere
Products from Everywhere
How Java Technology is Used Worldwide
 
JavaLive Transcripts Index

Java Live
NetDynamicsTM
October 07, 1997

Moderator (MDR): MDR-Andrea

Guest Speaker (SPK): SPK-Ofer

MDR-Andrea: Hello everyone, and welcome to Java Live. Today's guest is Ofer Ben-Shachar, the founder and CTO of NetDynamics. He is here today to talk about enterprise network applications, and how Java fits into the picture. Please feel free to start sending in questions. Ofer, perhaps you would like to tell us about NetDynamics, why it exists and how you are involved.

SPK-Ofer: Hello. Let me tell you a little bit about NetDynamics. NetDynamics provides an enterprise network application platform. The platform includes five main components: a Java-based server, that provides scalability and availability; a component integration SDK to integrate legacy data business applications and databases; a command center to provide management and monitering for the server; and a Java Object Framework to ease development and an integrated development studio. The product is now used by over 500 fortune1000 customers. You can get more details about the product and the company at http://www.netdynamics.com. Last week, we introduced NetDynamics 4.0 that includes a CORBA-based server, a Java-based command center, and a studio that generates client-side Java or HTML and Java for the server. My role at NetDynamics is to set the technology and product direction for the company. I'm also involved in communicating the technology vision of NetDynamics to customers, partners and industries. Our vision at NetDynamics is to leverage technology to provide solutions to the marketplace. We are not in the business of reinventing technology, but rather we try to use open standards in order to provide solutions for customers.

MDR-Andrea: What role does Java play in the NetDynamics product line?

SPK-Ofer: Two years ago we made a significant decision for the company, which was to use Java as a base language for our server product. At that time, there was JDK 1.0 Alpha in the marketplace, and we decided that we would like to create a tool to create HTML on the client-side, but use Java for the server-side business logic. At that time, Java was very young, and we thought it was premature to use it on the client-side. However, we saw that people would eventually use Java on the client-side. Given that, what would they need to use on the server? If they used any other language on the server, then they had one development and debugging environment for the client-side and a different one for the server-side.
Furthermore, they couldn't move logically between the client and the server. If you use Java for both the client and the server, then you can have consistent development and debugging for both the client and server, and it easily partitions business logic between the server and the client. In addition, you have a great object-oriented language to use for your server-side development. Many people criticize us for the performance of server-side Java. In reality, the performance is highly affected by caching of objects and database connections, and the performance of the database, and much less by the performance of the business-logic language itself.

Joubin: This question is a bit tongue-in-cheek, but is serious:
What is the relevance of CORBA after Java? I understand that CORBA is about heterogenous computing. But what I am getting at is: Isn't it easier and more elegant to simply replace the "space" between language/process nodes with a distributed-Java ORB? (i.e. Java as the NetOS?)

SPK-Ofer: CORBA provides two main advantages. 1.) Robust object-oriented communication protocol between network clients and network servers. 2.) Support for integration of heterogenous systems. For example, you can integrate new business logic developed in Java, but also connect to Legacy systems in other languages such as C or C++.

kslater: What kind of monitoring tools can your platform be connected to?

SPK-Ofer: We will be connected to CA Unicenter Monitor tool in the future, via a Java management API to other monitor tools. Our own command center is targeted to provide installation configuration and monitoring that is tightly integrated with our server, but we absolutely see the need to connect to enterprise-wide network management tools.

calvin: What do you think of RMI?

SPK-Ofer: RMI provides a Java-native, easy-to-use object-level communication protocol. However from tests that we've done internally, the speed of a transmission is about 10 times slower than things such as IIOP. It seems also that there is a big industry momentum behind CORBA and much less so for RMI. We feel that eventually JavaBeansTM will provide the API for object-oriented protocols, while IIOP can provide a transport. A few more words about CORBA. As we said before, CORBA is established as a standard, it is fast and provides access to heterogeneous systems. However developing for CORBA is hard. And once you develop an application, it's hard to deploy and manage. In NetDynamics 4.0, we provide a platform that uses CORBA for its advantages, but provides a Java-object framework and studio on top of it to make it easy to use. In fact, NetDynamics developers do not have to be aware that they are using CORBA underneath. In addition, with NetDynamics, you can easily manage the application and configure it to use as many machines processes or threads all in deployment time without changing your code.

calvin: Do you use the JavaTM Web ServerTM, or do you have your own implementation?

SPK-Ofer: We interface via either lightweight CGI, or NSAPI, or MSAPI to any web server.

JWBito: I haven't really looked at the state of the industry with respect to IIOP support. I wonder how easy it will be for me to get firewall support for IIOP connections to the outside. Will I find support for IIOP over SSL, or maybe a more optimal secure transmission medium?

SPK-Ofer: Visigenic currently ships SSL support on top of IIOP. In terms of firewall support, most firewall vendors include, or will soon include, support for IIOP.

arybicki: Do you provide a scalable PeopleSoft connectivity solution? Do you use PeopleSoft's third-party API?

SPK-Ofer: Yes to both questions. Every service that integrates into the NetDynamics server gets all the server benefits, including business-object caching, connection caching, scalability, availability, complete management via the command center, and visualization via the studio.

jeffs: Sorry for signing in late. This question may have already been asked. Can you give an overview of your product, and what your target market is. For example, is NetDynamics attempting to be the "Forte" of Java?

SPK-Ofer: I already provided a description in the beginning. You can also look at our website http://www.netdynamics.com. In fact, I like your characterization of NetDynamics. I would just frame it as a "Forte" trying to be NetDynamics for network applications, where NetDynamics provides a open-native, web solution—leveraging CORBA with Visigenic inside, with support of both HTML and Java on the client-side, and Java on the server-side.

JoeSam: From studies done by IBM and others, it seems fairly clear that garbage collection, at least in its current form, may be an "Achilles' Heel" for Java, in terms of transaction processing and other enterprise level operations. Any comments? Also, what are your thoughts on allowing programmers to manage memory, to the extent of deleting unused objects with garbage collection as a safety net?

SPK-Ofer: We have serveral sites that have many thousands of users every hour deployed with NetDynamics. And we haven't experienced any major problems with Java garbage collection. As stated before, the issue with performance is mainly caching of business objects, database connections, load balancing, and database performance. We experience almost no issues with performance of the business logic itself. Admittedly Java on the server is about 1.5 to 2 times slower than C, but so is C slower than Assembly language. And there a lot of reasons to use a higher-level object-oriented language such as Java.

Joubin: Follow up: Is there any reason why Java cannot be used to create a similiar robust OO communication protocol? I assume the JNI subsystem will take care of the network to node flow of objects, to allow for connectivity to other languages. Something similiar to IBM's JEmpower can be used to go from non-Java environments to Java. Given the above (I would appreciate your pointing out any errors), are there performance or ease-of-use issues, or any other criteria that would make such an approach undesirable? Thanks again.

SPK-Ofer: Visigenic has a pure Java implementation of CORBA, both on the server-side and on the client-side. In fact, NetDynamics' Java-based clients are 100% Pure JavaTM and use that implementation. In addition, most of NetDyanamics' server is done in Java, and is using the Visigenic CORBA-based Java server. Just to summarize, you can provide your Java solution with CORBA.

dhallman: What level of compliance have you achieved in regards to the OMG standards?

SPK-Ofer: With Visigenic inside, we are compliant with both IIOP and most other CORBA services. We will leverage CORBA services, such as security service, from third-party vendors. We can interoperate via IIOP with most other CORBA vendors. In addition, we are an OMG member.
How important is CORBA and Java for the type of applications that you are developing?

JLGriffiths: Our company is beginning a search for an enterprise-wide client/server security system to front-end our applications. We also need it to work with our Java applets through a Browser. Any suggestions?

SPK-Ofer: Obviously you can use NetDynamics to develop your applets and connect them to your application on the server. In addition, NetDynamics is integrated with several security solutions from companies such as Gradient and Encommerce. You can also interface to an access list database to get your access list from NetDynamics.

jeffs: I strongly agree that CORBA authoring needs to be simplified. Coding up IDL, generating stubs, etc. is a tedious process. Hopefully, tools like yours will give Java developers the same capability that ActiveX programmers have today with VB 5.0. So, how complex is your Java object framework? (number of methods, classes to learn, etc.) Do you have any estimates on time saved using your solution vs. writing CORBA directly, etc.? Also, do you plan to provide any interoperability with "legacy" OLE/COM servers?

SPK-Ofer: Our Java Object Framework consists of about 400 classes and provides services for database access, interaction with HTML, Java applets, session management for HTML pages, security, and a bunch of utilities. With our development studio, you can develop a few page application in a matter of minutes. The studio will generate attribute files and code to subclass the built-in classes. You can then maintain the application etiher from the development studio, or by Java coding. You can do Java coding by adding business logic to our bulit-in events, such as before the display of a text field or subclassing of our classes. We can connect to an OLE object either as a Bean if you use the Microsoft JVM, or via a CORBA/DCOM bridge.

dhallman: The entire issue of "remote-ing" objects and maintaining consistency with a database is very crucial to the tools and applications I am developing. We have modeled a simple system, but have many problems with managing user sessions and caching information between the client and database, since there is no connection maintained (via HTTP). Any suggestions? Does CORBA offer a solution? Sorry I can't reveal the type of application.

SPK-Ofer: CORBA does not provide any solution for session management for HTML pages. However, NetDynamics provides an extensive solution for that. By default, we store a session ID on every HTML page we deliver, and we let the developer associate any Java class hierarchy with that session ID. For example, if you have a shopping cart application, you can associate an array of shopping cart items with the session ID using a single-function call. By the way, NetDynamics has provided this solution since NetDynamics version 2.0.

Thanks for your participation. If you have any further questions, please send me email to ofer@netdynamics.com.

MDR-Andrea: Thanks, everyone, for joining. As I mentioned earlier, this the transcript of this chat will be available at the end of the week. Have a great day, and come back next week with questions about the Java Web Server, available for Early Access download on the JDC.


[ This page was updated: 12-Jan-2000 ]
Products & APIs | Developer Connection | Docs & Training | Online Support
Community Discussion | Industry News | Solutions Marketplace | Case Studies
Glossary - Applets - Tutorial - Employment - Business & Licensing - Java Store - Java in the Real World
FAQ | Feedback | Map | A-Z Index
For more information on Java technology
and other software from Sun Microsystems, call:
(800) 786-7638
Outside the U.S. and Canada, dial your country's AT&T Direct Access Number first.
Sun Microsystems, Inc.
Copyright © 1995-2000 Sun Microsystems, Inc.
All Rights Reserved. Terms of Use. Privacy Policy.