github地址:https://github.com/wxzz/CSharpFlinkgitee地址:https://gitee.com/wxzz/CSharpFlink  1         计算机硬件配置 CPU:4核 I5-7400 2.7GHz,内存:16G,随机数据点时间窗口和计算算子,主节点CPU和内存使用情况:15%-35%.1500MB-2048MB, 工作节点CPU和内存使用情况:0.1%-2.5%.18MB-30MB.运行效果,如下图: 2         计算节点及任务配…
C++分布式实时应用框架 2.0 技术交流合作QQ群:436466587 欢迎讨论交流 上一篇:(六):大型项目容器化改造 版权声明:本文版权及所用技术归属smartguys团队所有,对于抄袭,非经同意转载等行为保留法律追究的权利! 在C++分布式实时应用框架(CDRAF)1.0版本发布后,我们对整个框架做了大量的改进.在架构层面支持微服务架构.微服务编排.进一步厘清了CDRAF与业务代码的耦合,所有的分布式功能均不再需要业务侧关心,而统一由CDRFA内部实现.极致简化了业务侧的配置文件,也许下…
C++分布式实时应用框架--微服务架构的演进 上一篇:(四):C++分布式实时应用框架--状态中心模块 版权声明:本文版权及所用技术归属smartguys团队所有,对于抄袭,非经同意转载等行为保留法律追究的权利! OCS(online charging system,在线计费系统)在进行云化改造的过程中,从实用主义角度出发,微服务架构并不是我们的目标.虽然我们也对系统进行了容器化改造(Docker),并根据业务进程的功能将系统分成了好几类的容器,但这一切多是出于对系统中的某些处理节点进行动态扩缩…
C++分布式实时应用框架 (Cpp Distributed Real-time Application Framework) 在现今软件系统纷纷"云化"的浪潮下,各种支持"云化"的框架.工具层出不穷,但这些现成的工具大多基于JAVA,go等语言,且应用场景均为非实时系统.但基于C++语言,且支持毫秒级响应.大吞吐量的分布式实时应用框架一直是这一领域的空白,Cpp Distributed Real-time Application Framework(CDRAF)也因…
C++分布式实时应用框架--系统管理模块 上篇:(二): 基于ZeroMQ的实时通讯平台 一个分布式实时系统集群动辄上百台机器,集群的规模已经限定这将是一个"封闭"的系统.你不可能再一台台去操作上百台机器,传统的人工运维方式早已不能满足当下需要,所有对集群或者集群中某个节点的操作都必需通过系统提供接口来完成.对于一个商用的分布式实时系统来说,如何应对突然出现的业务高峰:及时检测出集群中的故障节点并进行善后处理:对于集群内处理能力不同的节点进行负载均衡调节:系统因过大压力崩溃前进行过载保…
C++分布式实时应用框架 (Cpp Distributed Real-time Application Framework) 版权声明:本文版权及所用技术归属smartguys团队所有,对于抄袭,非经同意转载等行为保留法律追究的权利! 在现今软件系统纷纷“云化”的浪潮下,各种支持“云化”的框架.工具层出不穷,但这些现成的工具大多基于JAVA,go等语言,且应用场景均为非实时系统.但基于C++语言,且支持毫秒级响应.大吞吐量的分布式实时应用框架一直是这一领域的空白,Cpp Distributed…
C++分布式实时应用框架--状态中心模块 上篇:(三):C++分布式实时应用框架--系统管理模块 技术交流合作QQ群:436466587 欢迎讨论交流 版权声明:本文版权及所用技术归属smartguys团队所有,对于抄袭,非经同意转载等行为保留法律追究的权利! 状态中心是分布式系统中不可或缺的部分.一个分布式系统动辄上百个节点,这些节点相互间通讯关系的建立和维护:运行时每个节点的实时状态数据采集和上报:系统管理模块下达集群管理命令时,命令如何传达到具体节点:集群节点故障时,如何检测发现并及时进行…
C++分布式实时应用框架--支撑复杂的业务通讯关系 技术交流合作QQ群:436466587 欢迎讨论交流 版权声明:本文版权及所用技术归属smartguys团队所有,对于抄袭,非经同意转载等行为保留法律追究的权利! 下图为CDRAF(Cpp Distributed Real-time Application Framework),在实际商用项目中支持的复杂通讯关系的一部分!…
HangFire的拓展和使用 看了很多博客,小白第一次写博客. 最近由于之前的任务调度框架总出现问题,因此想寻找一个替代品,之前使用的是Quartz.Net,这个框架方便之处就是支持cron表达式适合复杂日期场景使用,以及秒级任务.但是配置比较复杂,而且管理不方便,自己开发了个web管理页面,不过这个需要额外的单独线程去统一管理工作状态,很容易出现问题. 有考虑过 “FluentScheduler” ,使用简单,但是管理配置也很麻烦,我希望能做到配置简单,管理方便,高性能.最后想到了以前听过的h…
一个分布式实时系统集群动辄上百台机器,集群的规模已经限定这将是一个”封闭“的系统.你不可能再一台台去操作上百台机器,传统的人工运维方式早已不能满足当下需要,所有对集群或者集群中某个节点的操作都必需通过系统提供接口来完成.对于一个商用的分布式实时系统来说,如何应对突然出现的业务高峰:及时检测出集群中的故障节点并进行善后处理:对于集群内处理能力不同的节点进行负载均衡调节:系统因过大压力崩溃前进行过载保护:测试容器与运营容器同网测试的灰度发布能力等等.这些都是系统管理模块需要去解决的问题,也是一个系统…
庞大的业务系统,特别是需要有离线作业操作支持的核心业务系统,需要有强大的基础数据同步功能,基础数据有在增加.有在变动.有在失效,同时有大量的客户端全天侯的在连接服务器.不间断的在处理核心数据. 经过2年的不断完善改进.又有保证性能.又有能保证性能.又支持自动升级的接近完美的客户端诞生了.在这个基础上开发任何业务模块都会方便很多,客户端支持手动同步基础技术.登录系统时后台自动同步数据等功能. 其实很多时候,难点不在于技术有多少深奥.在于稳定可靠.放心用,经得起大量客户端的参考考验. 把每一个点点滴…
腾讯开源再次迎来重磅项目,14日,腾讯正式宣布开源高性能图计算框架Plato,这是在短短一周之内,开源的第五个重大项目. 相对于目前全球范围内其它的图计算框架,Plato可满足十亿级节点的超大规模图计算需求,将算法计算时间从天级缩短到分钟级,性能全面领先领先于其它主流分布式图计算框架,并且打破了原本动辄需要数百台服务器的资源瓶颈,现在,最少只需要十台服务器即可完成计算. 腾讯Plato团队负责人于东海表示:"Plato已经支持腾讯内部包括微信在内的众多核心业务,尤其是为腾讯超大规模社交网络图数据…
这个问题事实上也相对照较简单.可是非常多网友都给我发消息说 遇到不能ping,每一个人都得回答一次确实显得心有余而力不足.如今我对遇到这几种问题给出最完整的解决方式. (说实话基本上也仅仅要这几种可能) 第一:检測虚拟机设置是否为桥接式模式: 第二:关闭PC机和虚拟防火墙(虚拟机防火墙关闭用 service iptables stop ,假设不能找到iptables就能够不用管) 第三:三者之间设置IP地址必须在同一个网段. 上面三个原因配置好后还有网友不能PING通,这个原因分为两类. 第一开…
github地址:https://github.com/wxzz/CSharpFlinkgitee地址:https://gitee.com/wxzz/CSharpFlink 1 概述及背景 我们有一个全国性质的面向工业的公有云平台,通过专线或4G的链路方式实时向平台传输数据,每天处理1亿条左右的数据量,为现场用户提供实时的在线服务和离线数据分析服务.现在已经上线稳定运行有将近3年的时间.同时也为工业企业提供私有云建设服务. 我们计划使用Flink作为云平台后台的实时计算部分,基本实现数据点的聚合…
Storm的官方网址:http://storm.apache.org/index.html 1:什么是Storm? Storm是一个开源的分布式实时计算系统,可以简单.可靠的处理大量的数据流.被称作“实时的hadoop”.Storm有很多使用场景:如实时分析,在线机器学习,持续计算, 分布式RPC,ETL等等.Storm支持水平扩展,具有高容错性,保证每个消息都会得到处理,而且处理速度很快(在一个小集群中,每个结点每秒可以处理 数以百万计的消息).Storm的部署和运维都很便捷,而且更为重要的是…
摘要: 在Hadoop生态圈中,针对大数据进行批量计算时,通常需要一个或者多个MapReduce作业来完成,但这种批量计算方式是满足不了对实时性要求高的场景.那Storm是怎么做到的呢? 博主福利 给大家赠送一套hadoop视频课程 授课老师是百度 hadoop 核心架构师 内容包括hadoop入门.hadoop生态架构以及大型hadoop商业实战案例. 讲的很细致, MapReduce 就讲了 15 个小时. 学完后可以胜任 hadoop 的开发工作,很多人学的这个课程找到的工作. (包括指导…
目录 zabbix简介 服务模块 客户端守护进程 监控流程 功能拆解 安装 zabbix 5.0 LTS 参考官网 zabbix 5.0.12-1.el7 zabbix-server相关优化 1. 字体汉化 安装zabbix agent 使用二进制包安装 使用包安装 PS zabbix简介 Zabbix 是由 Alexei Vladishev 开发的一种网络监视.管理系统,基于 Server-Client 架构.可用于监视各种网络服务.服务器和网络机器等状态.并设定自定义脚本,做到一定的自恢复功…
基于ASP.NET 4.0开发的开源微商城系统,我们的目标是构建一个核心完善而又轻量级的微商城平台,目前基本的核心功能,包括微信登陆/支付,产品管理,购物车与订单管理等,轻量级是为了更加便于理解源码和二次开发. 使用技术 ASP.NET 4.0 MySql Server 环境要求 支持ASP.NET 4.0的虚拟主机或服务器均可,数据库为开源的MySql数据库系统: 安装流程 1,把安装包上传到主机空间: 2,在MYSQL里新建一个数据库odnshop(也可以是其他数据库名),执行安装包sql目…
Storm的官方网址:http://storm.apache.org/index.html :集群部署的基本流程(基本套路): 集群部署的流程:下载安装包.解压安装包.修改配置文件.分发安装包.启动集群; 1:安装一个zookeeper集群,之前已经部署过,这里省略,贴一下步骤: 安装配置zooekeeper集群:        1.1:解压            tar -zxvf zookeeper-3.4.5.tar.gz        1.2:修改配置            cd /ho…
评注: 开源的分布式监控系统 转:http://www.infoq.com/cn/articles/distributed-real-time-monitoring-and-control-system?utm_campaign=rightbar_v2&utm_source=infoq&utm_medium=articles_link&utm_content=link_text 2011年底,我加入大众点评网,出于很偶然的机会,决定开发CAT,为各个业务线打造分布式实时监控系统,C…
EJB Container的介绍SUN公司正式推出了EJB的规范之后,在众多的公司和开发者中引起了非常大的反响.标志着用Java开发企业级应用系统将变的非常easy.很多公司都已经推出了或正打算EJB的产品. SUN公司对EJB的定义是:EJB是用于开发和部署多层结构的.分布式的.面向对象的Java 应用系统的跨平台的构件体系结构.採用EJB能够使开发商业应用系统变得easy,应用系统能够在一个支持EJB的环境中开发,开发完之后部署在其它的环境中,随着需求的改变,应用系统能够不加改动地迁移到其它…
很久之前,在博客园写了一篇文章,<分布式网游server的一些想法语言和平台的选择>,当时就有了用C#做网游服务端的想法.写了个Unity3d客户端分布式服务端框架,最近发布了1.0版本,取名ET框架.ET框架的目标就是简化客户端开发,简化分布式服务端开发,但是功能非常强大,完全可以作为一个大型分布式服务端使用.ET框架有很多创造性的设计: 1.可用VS单步调试的分布式服务端,N变1 一般来说,分布式服务端要启动很多进程,一旦进程多了,单步调试就变得非常困难,导致服务端开发基本上靠打log来查…
2011年底,我加入大众点评网,出于很偶然的机会,决定开发CAT,为各个业务线打造分布式实时监控系统,CAT的核心概念源自eBay闭源系统CAL----eBay的几大法宝之一. 在当今互联网时代,业务需求旺盛,开发团队往往采用scrum等敏捷开发流程,加班加点快速迭代以满足业务需求,是常态.采用分布式系统设计和服务化,由多台机器协作来共同完成用户请求,是典型的解决方案.网站故障频发,内部关系错综复杂,故障定位缓慢,甚至找不到问题根源,也是常有的事.虽然已经有很多日志监控工具,或许单个工具功能还不…
最近公司业务数据量越来越大,以前的基于消息队列的日志系统越来越难以满足目前的业务量,表现为消息积压,日志延迟,日志存储日期过短,所以,我们开始着手要重新设计这块,业界已经有了比较成熟的流程,即基于流式处理,采用 flume 收集日志,发送到 kafka 队列做缓冲,storm 分布式实时框架进行消费处理,短期数据落地到 hbase.mongo中,长期数据进入 hadoop 中存储. 接下来打算将这其间所遇到的问题.学习到的知识记录整理下,作为备忘,作为分享,带给需要的人. 淘宝开源了许多产品组件…
eBay公司隆重宣布正式向开源业界推出分布式实时安全监控引方案 - Apache Eagle ,该项目已正式加入Apache 称为孵化器项目.Apache Eagle提供一套高效分布式的流式策略引擎,具有高实时.可伸缩.易扩展.交互友好等特点,同时集成机器学习对用户行为建立Profile以实现实时智能实时地保护Hadoop生态系统中大数据的安全. Eagle 是开源分布式实时Hadoop数据安全方案,支持数据行为实时监控,能立即监测出对敏感数据的访问或恶意的操作,并立即采取应对的措施. 我们相信…
@ 目录 概述 定义 为什么使用Flink 应用行业和场景 应用行业 应用场景 实时数仓演变 Flink VS Spark 架构 系统架构 术语 无界和有界数据 流式分析基础 分层API 运行模式 作业提交流程 顶层抽象流程 基于Yarn 会话(Session)模式 概述 定义 Apache Flink 官网 https://flink.apache.org/ Apache Flink GitHub地址 https://github.com/apache/flink Apache Flink 官…
第九章 企业项目开发--分布式缓存Redis(1) 注意:本章代码将会建立在上一章的代码基础上,上一章链接<第八章 企业项目开发--分布式缓存memcached> 1.为什么用Redis 1.1.为什么用分布式缓存(或者说本地缓存存在的问题)? 见<第八章 企业项目开发--分布式缓存memcached> 1.2.有了memcached,为什么还要用redis? 见<第一章 常用的缓存技术> 2.代码实现 2.1.ssmm0 pom.xml 只在dev环境下添加了以下代码…
ASP.NET MVC 中应用Windows服务以及Webservice服务开发分布式定时器一:闲谈一下:1.现在任务跟踪管理系统已经开发快要结束了,抽一点时间来写一下,想一想自己就有成就感啊!!  2.关于任务跟踪管理系统项目中遇到的Windows服务以及Webservice的综合应用的问题. 大家好这是我第二次写博客 ,写的不好请大家多多谅解, 希望大家可以多多指正. 二:我稍微的整理了一下关于这个分布式定时器需求:1.根据任务跟踪管理系统中的数据库的AnswerSheet 表格中找到客户编…
Storm分布式实时流计算框架相关技术总结 Storm作为一个开源的分布式实时流计算框架,其内部实现使用了一些常用的技术,这里是对这些技术及其在Storm中作用的概括介绍.以此为基础,后续再深入了解Storm的内部实现细节. 1. Zookeeper集群 Zookeeper是一个针对大型分布式系统的可靠协调服务系统,其采用类似Unix文件系统树形层次结构的数据模型(如:/zoo/a,/zoo/b),节点内可存储少量数据(<1M,当节点存储大数据量时,实际应用中可能出现同步问题). Zookeep…
注意:本章代码将会建立在上一章的代码基础上,上一章链接<第八章 企业项目开发--分布式缓存memcached> 1.为什么用Redis 1.1.为什么用分布式缓存(或者说本地缓存存在的问题)? 见<第八章 企业项目开发--分布式缓存memcached> 1.2.有了memcached,为什么还要用redis? 见<第一章 常用的缓存技术> 2.代码实现 2.1.ssmm0 pom.xml 只在dev环境下添加了以下代码: <!-- redis:多台服务器支架用什么…