You are not logged in.

1

Monday, May 10th 2004, 11:22pm

Client/Server and QT

I'm trying to find a suitable development platform to implement a client side GUI to a fairly elaborate multi platform (Linux/Windows/HP-UX) server implemented in C++.

Originally, the server was a Windows Service with a COM interface. We implemented an IIS/ASP web that provided a thin client front end to our server application. We also implemented some utilities in Visual Basic to talk to the server via DCOM.

In the meantime, we have modified the server so that it also runs as a Unix daemon. We now have to address the front end issue as IIS/ASP, COM/DCOM nor Visual Basic are no longer feasible options. Alternatives that spring to mind are JSP, Java, SOAP, CORBA, multi platform GUI's like QT or a combination of these.

I'm particularly interested in QT because it is C++ and therefore, we should be able to use the same class framework on both client and server side (perhaps with the help of SOAP). Before I delve into this area in order to assess the implications of such an implementation, I'd love to hear any comments from any other QT users who have some experience with similar projects.

Many thanks in advance!

Posts: 2,162

Location: Graz, Austria

Occupation: Student

  • Send private message

2

Tuesday, May 11th 2004, 7:40am

At the company I am working for whe have several server and client programs using Qt, some servers using event loop based networking (QSocket), some thread based (QSocketDevice).

UDP as well as TCP

Between our processes, that is between servers and servers and clients, we use a message based protocol based on QDataStream (serialising message classes into the stream)

For communication with other services we use adaptor process that communicate with our services usign our internal protocol and the respective protocol on the other side.

So far this is working very nicely, across operatingsystem and architecture (32 bit vs 64 bit) borders.

Cheers,
_
Qt/KDE Developer
Debian User

3

Tuesday, May 18th 2004, 12:21am

So do you think distributed computing techniques such as CORBA, SOAP or XMLRPC are of no benefit to QT applications as internal mechanisms provide the same (or even better) means?

My server maintains a repository of objects and clients are expected to connect to individual objects in the repository. I don't want the client to obtain a copy of an object of interest.

QSocket and QDataStream sounds like a mechanism to transport data over TCP/IP between server and client, but transporting raw data is only a small aspect of CORBA and certainly doesn't address RPC.

Posts: 2,162

Location: Graz, Austria

Occupation: Student

  • Send private message

4

Tuesday, May 18th 2004, 5:39pm

I was just saying what kind of experience I had with respect to Qt and networking.

I only needed a small number of commands, so command messages where a lot easier to implement than adapting a full scale distributed object system with all its requirements (broker, IDL compiler, etc)

Cheers,
_
Qt/KDE Developer
Debian User

  • "wysota" is male

Posts: 4,276

Location: Warsaw, POLAND

  • Send private message

5

Tuesday, May 18th 2004, 8:07pm

With all respect to Qt, it doesn't provide some abilities (and that's fine, it doesn't have to do everything). In some cases CORBA or RPC, which both are now standards are a good choice. In linux you can use CORBa with ORBit and RPC using rpcgen (or something like that).