473,386 Members | 1,766 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

Using DCOM to broadcast messages

DCOM people,

I used to use TIBCO Rendezvous software to do the following, but I
can't anymore, so I have implemented my solution using DCOM.

I have a DCOM server component that receives events from an external
data provider, writes this data to a SQL Server database and raises a
new data event.

This event is then received by several "listening" client components.
Depending on each client's preferences, this may or may not lead to
the querying of the database for the new information.

Sometimes (I'm guessing when a lot of data comes in from the external
source) there can be a delay as messages appear to be queueing up at
the server component. From what I understand of DCOM, processing
cannot continue on the server component until all the clients have
processed the event that was raised.

I would rather make the events asynchronous, and I understand you can
do that using threads but that sounds too difficult. Is there a
simple way to keep the clients up to date with new data developments,
without them being "connected" to the server component?

Hope someone can help me here.

Many thanks,

- Mike Carter
Jul 17 '05 #1
2 2420

"Mike Carter" <mi********@postmaster.co.uk> wrote in message
news:95**************************@posting.google.c om...
DCOM people,

I used to use TIBCO Rendezvous software to do the following, but I
can't anymore, so I have implemented my solution using DCOM.

I have a DCOM server component that receives events from an external
data provider, writes this data to a SQL Server database and raises a
new data event.

This event is then received by several "listening" client components.
Depending on each client's preferences, this may or may not lead to
the querying of the database for the new information.

Sometimes (I'm guessing when a lot of data comes in from the external
source) there can be a delay as messages appear to be queueing up at
the server component. From what I understand of DCOM, processing
cannot continue on the server component until all the clients have
processed the event that was raised.

I would rather make the events asynchronous, and I understand you can
do that using threads but that sounds too difficult. Is there a
simple way to keep the clients up to date with new data developments,
without them being "connected" to the server component?

Hope someone can help me here.

Many thanks,

- Mike Carter


Just some ideas here, nothing for sure:
1. Client could poll on a timer. On the timer event, it could create a
server object, check whether there is an update (maybe a LatestUpdate
property as DateTime), then release the server object before running a
data query.
2. Client could process the data event quickly, by not running a query
in the event handler. Instead, it could set a local timer and exit the
event handler. Then it can run the query on the local timer event.
3. If you don't want to modify the client side, you could have a proxy
object on the server, one per client, which connects to the main server
object, and implements 1 or 2 above. Instead of running the query, it
would raise its own event back to the client.

Jul 17 '05 #2
Thanks for your suggestions Steve, I think 2 might help me out, there
is currently a lot of processing on the event procedure that could be
causing the slow-down. Also, with a timer-based solution, each client
would be querying the database at slightly different times which can't
hurt either.

"Steve Gerrard" <no*************@comcast.net> wrote in message news:<cY********************@comcast.com>...

Just some ideas here, nothing for sure:
1. Client could poll on a timer. On the timer event, it could create a
server object, check whether there is an update (maybe a LatestUpdate
property as DateTime), then release the server object before running a
data query.
2. Client could process the data event quickly, by not running a query
in the event handler. Instead, it could set a local timer and exit the
event handler. Then it can run the query on the local timer event.
3. If you don't want to modify the client side, you could have a proxy
object on the server, one per client, which connects to the main server
object, and implements 1 or 2 above. Instead of running the query, it
would raise its own event back to the client. "Mike Carter" <mi********@postmaster.co.uk> wrote in message
news:95**************************@posting.google.c om...
DCOM people,

I used to use TIBCO Rendezvous software to do the following, but I
can't anymore, so I have implemented my solution using DCOM.

I have a DCOM server component that receives events from an external
data provider, writes this data to a SQL Server database and raises a
new data event.

This event is then received by several "listening" client components.
Depending on each client's preferences, this may or may not lead to
the querying of the database for the new information.

Sometimes (I'm guessing when a lot of data comes in from the external
source) there can be a delay as messages appear to be queueing up at
the server component. From what I understand of DCOM, processing
cannot continue on the server component until all the clients have
processed the event that was raised.

I would rather make the events asynchronous, and I understand you can
do that using threads but that sounds too difficult. Is there a
simple way to keep the clients up to date with new data developments,
without them being "connected" to the server component?

Hope someone can help me here.

Many thanks,

- Mike Carter

Jul 17 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
by: Ray Paseur | last post by:
We broadcast email messages with PHP scripts, but sometimes email is not timely and we would like to send something that could get there faster. Can anyone tell me about how to send Instant...
1
by: Bruno van Dooren | last post by:
Hi, currently we have an intern writing an OPC server for us in C++. OPC is a hierarchy of classes based on DCOM. When the intern leaves I will have to maintain that server. since i am new to...
3
by: S.Creek | last post by:
Hi, I am trying to build a multi clients application with C# that will send and receive messages using a listener on a server, the computers are all on the same LAN, the listener need to...
3
by: Alex | last post by:
I'm having a problem porting an ASP solution to ASPX. In the ASP solution I'm accessing a DCOM server, create sub DCOM objects and call functions from VB script on the ASP pages. The DCOM object...
3
by: Oleg Skopincevs | last post by:
Hi folks, I am stuck on a problem of creating an object via DCOM from a webservice component. Code: Dim sl As LogonSrv.SysLogon = CreateObject("LogonSrv.SysLogon", LogonServer) Is there...
4
by: Josh Behl | last post by:
When I try to programmatically open an existing Excel document using a custom windows form, it works perfectly. I instanciate a new instance of the Excel.ApplicationClass and then set the Visible...
7
by: GTi | last post by:
I need a code snippet for sending a message to all computers located on the same IP subnet. This is only a simple message like; "Here I am" I'm developing a server/client application. Instead of...
0
by: salman | last post by:
Hello i am working on real time application, there is many clients in network, some connected locally LAN and some via VPN through RAS (remote access service), I am facing problem to broadcast the...
9
by: Irmen de Jong | last post by:
Hello Sorry this might be a bit offtopic but I don't really know where else to post this question. If you could point me in the right direction that is much appreciated. I'm running into a...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.