简体   繁体   English

如何更新Delphi Datasnap服务器?

[英]How to update Delphi Datasnap server?

I have build a few apps that receive and send data over a Datasnap server. 我已经构建了一些通过Datasnap服务器接收和发送数据的应用程序。 I have multiple Datasnap servers running on my customers servers. 我在客户服务器上运行了多个Datasnap服务器。 The Datasnap server runs as a Windows Service on their machines. Datasnap服务器在其计算机上作为Windows服务运行。

How can I remotely update those servers or what is the best way to do this? 如何远程更新这些服务器或执行此操作的最佳方法是什么?

Is it maybe better to make the Datasnap Server run on IIS instead of as a Windows Service? 是否可以更好地使Datasnap Server在IIS上运行而不是作为Windows服务运行?

Can I let the server update itself? 我可以让服务器自行更新吗? Maybe if I make a function that sends the new version of it that it can replace itself? 也许如果我创建一个发送它的新版本的函数,它可以替换它自己?

I can see no way of updating the exes on your customers' machines without a) getting them to do it; 我没有办法在没有让他们去做的情况下更新客户机器上的exes; b) logging in remotely using something like VNC (though I'd be happy to know of a better way). b)使用像VNC这样的东西远程登录(虽然我很乐意知道更好的方法)。

This is an approach I would consider: 这是我会考虑的方法:

I would look to have a separate application which is called by the service on a regular basis (daily/weekly) that looks for a new versions of software on your server (or somewhere), downloads it stops the service, replaces the service's exe and restarts the service. 我希望有一个单独的应用程序,由服务定期(每天/每周)调用,在您的服务器(或某个地方)寻找新版本的软件,下载它停止服务,替换服务的exe和重启服务。

In the new service exe I would have something that calls this application periodically, so you only have to do this once. 在新的服务exe中,我会定期调用此应用程序,因此您只需执行一次。

This assumes the machines that run your software have internet access. 这假设运行软件的计算机可以访问Internet。

Don't forget to include a mechanism to update the updater application. 不要忘记包含更新updater应用程序的机制。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM