同类文章:高并发数据采集的架构应用(Redis的应用)

吐槽下:本人主程是PHP,团队里面也没有精通.net的人才,为了解决这个平台方案,还是费了一部分劲。

新年了,希望有个新的开始。技术+团队管理都有新的突破吧,在新的一年对自己好些,不能再继续搞基下去。

问题出发点:

´随着软件的日益强大,用户的使用需求越来越多,用户也希望众多数据进行整合,来达到资源的合理应用。

´有些数据资源需要抓取网页的形式来采集到数据。

´采集应用不统一,没有良好的管理程序,杂乱无章。

´采集应用经常性无响应,无相应的中断程序,极大照成应用的不稳定性。

解决方案:

为了解决上述问题,提出了如下的解决方案,主要是使用了服务平台这个概念。

数据采集服务:使用C#创建windows服务。(aauto至今没找到相应的创建windows服务的实例)

功能包括:

1. 定时请求待采集事项,并放入待采集队列

2. 多线程定时通过API上传资源数据以及其它状态信息。

3. 定时平台监控,采集应用时间过长发出中断通知,通知无响应强制关闭应用并且重新启动。

4. 上传心跳信息,保证数据采集服务正常运行。

采集应用:使用AAuto创建应用,其实使用.net也是可以创建采集应用的,主要考虑到aauto语言这块团队相对来说成熟点,而且已有现成的应用了,只需要稍微修改下就可以和服务平台对接了。

功能包括:1. 采集数据资源放入本地数据库,比如sqlite。

2. 保存耗时信息,通过耗时的均运算服务平台可以决定多久发出中断通知,以及可以预测多久时间可以完成工作。

状态应用:主要是辅助应用。

功能包括:

1) 可以查看处理进度

2) 可以查看数据上传进度

3) 可以查看待处理进度

4) 可以查看应用耗时信息

通过以上的解决方案来看:服务平台作为统筹工作者,负责与PHP API进行交互,相对来说对于采集应用来说相对独立,所以有很好的解耦性,同时又保证了稳定性。

采集应用不再负责与PHP API交互,主要负责与本地资源交互,那么相对来说,代码的工作量减少了,采集速度也能相应的提高。

具体代码实现:可以关注下后期的文章吧,我也会进量把代码贡献出来。觉得不错的给个赞吧,新的一年新气象。

高可用数据采集平台(如何玩转3门语言php+.net+aauto)的更多相关文章

  1. 看我如何快速学习.Net(高可用数据采集平台)

    最近文章:高可用数据采集平台(如何玩转3门语言php+.net+aauto).高并发数据采集的架构应用(Redis的应用) 项目文档:关键词匹配项目深入研究(二)- 分表思想的引入 吐槽:本人也是非常 ...

  2. 高可用Hadoop平台-Oozie工作流之Hadoop调度

    1.概述 在<高可用Hadoop平台-Oozie工作流>一篇中,给大家分享了如何去单一的集成Oozie这样一个插件.今天为大家介绍如何去使用Oozie创建相关工作流运行与Hadoop上,已 ...

  3. 高可用Hadoop平台-Hue In Hadoop

    1.概述 前面一篇博客<高可用Hadoop平台-Ganglia安装部署>,为大家介绍了Ganglia在Hadoop中的集成,今天为大家介绍另一款工具——Hue,该工具功能比较丰富,下面是今 ...

  4. 高可用Hadoop平台-实战尾声篇

    1.概述 今天这篇博客就是<高可用Hadoop平台>的尾声篇了,从搭建安装到入门运行 Hadoop 版的 HelloWorld(WordCount 可以称的上是 Hadoop 版的 Hel ...

  5. 高可用Hadoop平台-实战

    1.概述 今天继续<高可用的Hadoop平台>系列,今天开始进行小规模的实战下,前面的准备工作完成后,基本用于统计数据的平台都拥有了,关于导出统计结果的文章留到后面赘述.今天要和大家分享的 ...

  6. 高可用Hadoop平台-集成Hive HAProxy

    1.概述 这篇博客是接着<高可用Hadoop平台>系列讲,本篇博客是为后面用 Hive 来做数据统计做准备的,介绍如何在 Hadoop HA 平台下集成高可用的 Hive 工具,下面我打算 ...

  7. 高可用Hadoop平台-探索

    1.概述 上篇<高可用Hadoop平台-启航>博客已经让我们初步了解了Hadoop平台:接下来,我们对Hadoop做进一步的探索,一步一步的揭开Hadoop的神秘面纱.下面,我们开始赘述今 ...

  8. 高可用Hadoop平台-启航

    1.概述 在上篇博客中,我们搭建了<配置高可用Hadoop平台>,接下来我们就可以驾着Hadoop这艘巨轮在大数据的海洋中遨游了.工欲善其事,必先利其器.是的,没错:我们开发需要有开发工具 ...

  9. 高可用Hadoop平台-Flume NG实战图解篇

    1.概述 今天补充一篇关于Flume的博客,前面在讲解高可用的Hadoop平台的时候遗漏了这篇,本篇博客为大家讲述以下内容: Flume NG简述 单点Flume NG搭建.运行 高可用Flume N ...

随机推荐

  1. postman app支持浏览器上的cookie

    1.  安装postman app 注意要安装postman application(一个应用软件),而不是chrome 插件,打开下面的这个开关 2. chrom浏览器 给chrom浏览器安装pos ...

  2. python使用tesseract-ocr完成验证码识别

    全自动区分计算机和人类的公开图灵测试(Completely Automated Public Turing test to tell Computers and Humans Apart) 简称CAP ...

  3. centos shell基础 alias 变量单引号 双引号 history 错误重定向 2>&1 jobs 环境变量 .bash_history source配置文件 nohup & 后台运行 cut,sort,wc ,uniq ,tee ,tr ,split, paste cat> 2.txt <<EOF 通配符 glob模式 发邮件命令mail 2015-4-8 第十二节课

    centos shell基础知识 alias  变量单引号 双引号   history 错误重定向 2>&1  jobs  环境变量 .bash_history  source配置文件 ...

  4. CSS样式有哪些常用的属性?

    一般的一个DIV的CSS设置属性有:margin,padding,width,height,font-size,text-align,background,float,border CSS样式有哪些常 ...

  5. CNN学习笔记:批标准化

    CNN学习笔记:批标准化 Batch Normalization Batch Normalization, 批标准化, 是将分散的数据统一的一种做法, 也是优化神经网络的一种方法. 在神经网络的训练过 ...

  6. 1:1 Struts2概述

    jar包下载

  7. AtCoder Grand Contest 029 Solution

    A: Solved. 签. #include <bits/stdc++.h> using namespace std; #define ll long long #define N 200 ...

  8. RESTful源码笔记之RESTful Framework的Mixins小结

    0x00 引言 本篇对drf中的mixins进行简要的分析总结.Mixins在drf中主要配合viewset共同使用,实现http方法与mixins的相关类与方法进行关联. from rest_fra ...

  9. 解决方案--duilib中edit获得鼠标焦点后右边框被覆盖

    用duilib做了一个登录框,用户名的输入使用的是edit控件. XML中是这样写的: <Edit name="subdomain_edit" tipvalue=" ...

  10. [转][修]sprintf()函数:将格式化的数据写入字符串

    头文件:#include <stdio.h>功能:用于将格式化的数据写入字符串 原型:int sprintf(char *str, char * format [, argument, . ...