小弟想请问一下,要做一个24小时运行的winform程序,网站后台用
小弟想请教一下,要做一个24小时运行的winform程序,网站后台用
实现功能是把webservice接口返回的xml中,一些有用的字段值存入数据库,24小时运行,定时更新。为提高健壮性,防止程序崩掉,需要考虑哪些事情?
我搜了一下,有内存溢出、异常处理都要考虑,不知对不对,希望和大家讨论一下
------解决方案--------------------
可以做系统托盘程序。windows service做得不好也会崩掉。而且你还不晓得。
然后做个系统任务计划,定时启动,当然程序判断如果程序已启动就不要再启动。
------解决方案--------------------
------解决方案--------------------
做成Windows服务吧 挺不错的
WinForm也可以 看你喜欢什么了
------解决方案--------------------
如果单纯的这个功能 我认为 SQL作业是最好的..
写一个存储过程 请求webservice然后处理xml数据
然后作业定时调用..
效率最高了 连什么ado都省下了 直接操作数据库 难道这不是最佳方案吗?
------解决方案--------------------
服务 代理这些。
实现功能是把webservice接口返回的xml中,一些有用的字段值存入数据库,24小时运行,定时更新。为提高健壮性,防止程序崩掉,需要考虑哪些事情?
我搜了一下,有内存溢出、异常处理都要考虑,不知对不对,希望和大家讨论一下
------解决方案--------------------
可以做系统托盘程序。windows service做得不好也会崩掉。而且你还不晓得。
然后做个系统任务计划,定时启动,当然程序判断如果程序已启动就不要再启动。
------解决方案--------------------
private void Button_Click(object sender, RoutedEventArgs e)
{
Thread thread = new Thread(new ThreadStart(Deal));
thread.IsBackground = true;
thread.Start();
}
private void Deal()
{
while (true)
{
//用异常捕捉,防止程序崩溃
try
{
XDocument xml = XDocument.Load(@"http://service.diexun.cc/server/login?wsdl");
//分析xml,提取数据
//数据写入数据库,注意数据库连接用完就关闭
Thread.Sleep(600000);
}
catch (Exception ex)
{
//记录异常
Thread.Sleep(10000);
}
}
}
------解决方案--------------------
做成Windows服务吧 挺不错的
WinForm也可以 看你喜欢什么了
------解决方案--------------------
如果单纯的这个功能 我认为 SQL作业是最好的..
写一个存储过程 请求webservice然后处理xml数据
然后作业定时调用..
效率最高了 连什么ado都省下了 直接操作数据库 难道这不是最佳方案吗?
------解决方案--------------------
服务 代理这些。