Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 5 of 5 total
Thread Loading updates for replication
Mon, Sep 30 2019 5:22 PMPermanent Link

Mario Enríquez

Open Consult

Hi everybody,

I've a  server with EDB setup for replication, where the remote clients (nodes) drop their updated files in a store in the server. Each client has its own store. On the server side is a EDB Job that runs every 5~10 minutes a check for "news" in the clients stores, and loads updates when they're available.

The setup has been working fine for a while now, but I'm looking for a smarter way to accomplish the "Checking for news" stage. Instead of having a Job running every 5 minutes just to check, (most of the time, there is no files in the store) I would like to have the server alerted when a new file is available in the store.

Is there any way, out of the box, to accomplish this on EDB, or how do you have dealt with this?

One idea, is to have each client call an store procedure (or webservice) in the server every time a file is dropped in the store, but wonder if there are other, safer, ways to accomplish this.

Regards,
Mario
Tue, Oct 1 2019 4:38 AMPermanent Link

Yusuf Zorlu

MicrotronX - Speditionssoftware vom Profi

Mario Enrmquez wrote:

> One idea, is to have each client call an store procedure (or
> webservice) in the server every time a file is dropped in the store,
> but wonder if there are other, safer, ways to accomplish this.

Hi Mario,

what about a table in your database having a info about new files and
when the server has processed the file it deleted the entry from that
table. So you have only

1. save the file in the store
2. insert-sql with file-data into your "files_to_handle" table


--
--
Yusuf Zorlu | MicrotronX
Tue, Oct 1 2019 1:03 PMPermanent Link

Mario Enríquez

Open Consult

Hi Yusuf, thank you.

Do you suggest having a trigger in the "UpdateFiles" tables that once a record is inserted it starts the loading update process?

It is a good idea that I would have to look into, however I would rather have a solution that requires no additional action from the client...

Regards,
Mario

Do you mea
"Yusuf Zorlu" wrote:

Mario Enrmquez wrote:

> One idea, is to have each client call an store procedure (or
> webservice) in the server every time a file is dropped in the store,
> but wonder if there are other, safer, ways to accomplish this.

Hi Mario,

what about a table in your database having a info about new files and
when the server has processed the file it deleted the entry from that
table. So you have only

1. save the file in the store
2. insert-sql with file-data into your "files_to_handle" table


--
--
Yusuf Zorlu | MicrotronX
Tue, Oct 1 2019 8:30 PMPermanent Link

Raul

Team Elevate Team Elevate

On 10/1/2019 1:03 PM, Mario Enr�quez wrote:
>
> It is a good idea that I would have to look into, however I would rather have a solution that requires no additional action from the client...
>

Scheduled job IMHO is the best option - there is really not overhead and
only "downside" is the small delay of up to X minutes due to job running
every X minutes

Raul
Fri, Oct 4 2019 11:16 AMPermanent Link

Adam Brett

Orixa Systems

Raul,

I have a similar set up to yours for my users.

If your procedure just searches for the presence of files in the UPDATEs STORE, and exits if it finds there are none, I really think the overhead is very low, and not really worth worrying about.

If the 5 minute lag when updates are "waiting" prior to loading is a problem it is harder to find a solution. I don't think there is an easy "EDB Only" solution. You might be able to use a component set like INDY to send an HTTP message to your server and use this as a trigger ... but it is not something I have done.
Image