自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

架构师老狼

资深架构师,专注于微服务、大数据研究!坚定信念,乐观心态,永不止步!

  • 博客(47)
  • 资源 (7)
  • 收藏
  • 关注

原创 Flink 广播变量

简介在Flink中,同一个算子可能存在若干个不同的并行实例,计算过程可能不在同一个Slot中进行,不同算子之间更是如此,因此不同算子的计算数据之间不能像Java数组之间一样互相访问,而广播变量Broadcast便是解决这种情况的。我们可以把广播变量理解为是一个公共的共享变量,我们可以把一个dataset 数据集广播出去,然后不同的task在节点上都能够获取到,这个数据在每个节点上只会存在一份用法1:初始化数据 DataSet<Integer> num = env.fromElem

2021-07-09 11:04:11 7

原创 Flink分布式缓存

分布式缓存Flink提供了一个分布式缓存,类似于hadoop,可以使用户在并行函数中很方便的读取本地文件,并把它放在taskmanager节点中,防止task重复拉取。 此缓存的工作机制如下:程序注册一个文件或者目录(本地或者远程文件系统,例如hdfs或者s3),通过ExecutionEnvironment注册缓存文件并为它起一个名称。 当程序执行,Flink自动将文件或者目录复制到所有taskmanager节点的本地文件系统,仅会执行一次。用户可以通过这个指定的名称查找文件或者目录,然后从taskma

2021-07-09 11:00:15 4

原创 Flink检查点机制与状态管理

1 检查点机制1.1 CheckPoints为了使 Flink 的状态具有良好的容错性,Flink 提供了检查点机制 (CheckPoints) 。通过检查点机制,Flink 定期在数据流上生成 checkpoint barrier ,当某个算子收到 barrier 时,即会基于当前状态生成一份快照,然后再将该 barrier 传递到下游算子,下游算子接收到该 barrier 后,也基于当前状态生成一份快照,依次传递直至到最后的 Sink 算子上。当出现异常后,Flink 就可以根据最近的一次的快照数据

2021-07-07 14:29:03 10 1

原创 用户画像之算法模型挖掘标签

RFM 用户价值模型1 需求假设我是一个市场营销者, 在做一次活动之前, 我可能会思考如下问题谁是我比较有价值的客户?谁是比较有潜力成为有价值的客户?谁快要流失了?谁能够留下来?谁会关心这次活动?其实上面这些思考, 都围绕一个主题 价值RFM 是一个最常见的用来评估价值的和潜在价值的工具2 RFM 是什么RFM通过最后一次消费距今时间, 单位时间内的消费频率, 平均消费金额来评估一个人对公司的价值, 可以理解为 RFM 是一个集成的值, 如下RFM = Rencency(最后一

2021-06-19 19:14:57 89

原创 智慧医疗 - 微服务最佳实践

01 产品分析与定位02 微服务架构设计以业务为中心高内聚低耦合高度自治弹性设计日志与监控自动化03 实时消息推送技术演进接入层负载均衡基于http七层负载均衡,从HA演进到NginxHA支持TCP与Http协议,支持8种负载均衡策略,支持通过URL健康检测,支持心跳检测,工作在网络4层和7层,但对ws协议支持不好,造成ws消息堆积Nginx支持Http协议,工作在网络7层,支持WebSocket协议,支持通过端口健康检测,支持强大的正则匹配规则Nginx分流:ser

2021-05-17 09:27:23 62 1

原创 实时计算-智慧大屏分析

需求分析按省份|用户性别|用户年龄段,统计当日新增付费用户首单平均消费及人数占比技术栈数据库监控与采集 maxwell实时数仓存储 kafka实时计算 spark stream中间层OLAP hbase可视化层OLAP elastic searchtopic offset手动提交 redisBI可视化 echart、Superset、Kibana业务流程Maxwell 监控抓取 MySQL 数据bootstrap采集维度数据bin/maxwell-bootstrap

2021-05-10 15:15:46 76 3

原创 SpringSecurity和JWT实现认证和授权

SpringSecuritySpringSecurity是一个强大的可高度定制的认证和授权框架,对于Spring应用来说它是一套Web安全标准。SpringSecurity注重于为Java应用提供认证和授权功能,像所有的Spring项目一样,它对自定义需求具有强大的扩展性。JWTJWT是JSON WEB TOKEN的缩写,它是基于 RFC 7519标准定义的一种可以安全传输的的JSON对象,由于使用了数字签名,所以是可信任和安全的。JWT的组成WT token的格式:header.pa

2021-02-10 22:00:31 195 1

原创 开源:Spark个性化推荐算法

理论篇1 推荐系统的意义 - 解决信息过载搜索引擎时代分类导航:雅虎搜索:谷歌、百度个性化时代(提高用户粘度、增加营收)系统自动推荐相关的东西:今日头条、豆瓣、电商2 推荐系统的分类基于人口统计学的推荐基于内容的推荐基于协同过滤的推荐3 基于人口统计学的推荐基于人口统计学的推荐机制(Demographic-based Recommendation)是...

2020-02-18 18:13:14 1957

原创 多个视频文件合成画中画效果(Python版)

远程录制两段视频,通过ffmpeg合成画中画效果(类似微信)。

2017-08-01 10:45:00 4681

原创 Flink Window API

窗口(window)就是将无限流切割为有限流的一种方式,它会将流数据分发到有限大小的桶(bucket)中进行分析window类型时间窗口(Time Window)滚动时间窗口滑动时间窗口会话窗口2.计数窗口(Count Window)滚动计数窗口滑动计数窗口滚动窗口(Tumbling Windows)将数据依据固定的窗口长度对数据进行切分时间对齐,窗口长度固定,没有重叠滑动窗口(Sliding Windows)滑动窗口是固定窗口的更广义的一种形式,滑动窗口由.

2021-06-30 13:32:37 4

原创 Flink运行架构

运行时组件作业管理器(JobManager)控制一个应用程序执行的主进程,也就是说,每个应用程序都会被一个不同的JobManager 所控制执行JobManager 会先接收到要执行的应用程序,这个应用程序会包括:作业图(JobGraph)、逻辑数据流图(logical dataflow graph)和打包了所有的类、库和其它资源的JAR包JobManager 会把JobGraph转换成一个物理层面的数据流图,这个图被叫做“执行图”(ExecutionGraph),包含了所有可以并发执行的任务

2021-06-29 16:50:37 8

原创 微服务性能监控一体化方案 - APM

Elastic APMElastic APM是基于Elastic Stack构建的应用性能监控(APM)系统。请求日志:用来实时监控应用性能信息,包括HTTP请求调用时长、数据库查询信息、缓存调用信息和外部的HTTP请求调用信息。有助于我们快速找出并解决性能问题。日志跟踪:自动收集应用中未处理的错误和异常,显示异常的堆栈信息,有助于快速定位异常和了解出现频率。JVM度量:度量指标是调试生产系统时的另一个重要信息来源。Elastic APM Agent 会自动收集主机级别的度量指标(比如Java J

2021-06-20 10:28:50 50

原创 干货!图解Elastic search秘笈,够实用

倒排索引全文搜索引擎目前主流的索引技术就是倒排索引的方式。传统的保存数据的方式都是:记录→单词。而倒排索引的保存数据的方式是:单词→记录, 基于分词技术构建倒排索引,每个记录保存数据时,都不会直接存入数据库。系统先会对数据进行分词,然后以倒排索引结构保存。可以看到 Lucene 为倒排索引(Term Dictionary)部分又增加一层 Term Index 结构,用于快速定位,而这 Term Index 是缓存在内存中的,但 MySQL 的 B+tree 不在内存中,所以整体来看 ES 速度更快,但

2021-05-17 09:04:02 16

原创 spark stream消费kafka Exactly-once

精确一次消费(Exactly-once)是指消息一定会被处理且只会被处理一次。不多不少就一次处理至少一次消费(at least once)主要是保证数据不会丢失,但有可能存在数据重复问题最多一次消费 (at most once)主要是保证数据不会重复,但有可能存在数据丢失问题数据丢失实时计算任务进行计算,到数据结果存盘之前,进程崩溃,假设在进程崩溃前 kafka调整了偏移量,那么 kafka 就会认为数据已经被处理过,即使进程重启,kafka 也会从新的偏移量开始,所以之前没有保存的.

2021-04-03 20:11:32 39

原创 RabbitMQ实现支付订单延迟消息

1. RabbitMQRabbitMQ是一个被广泛使用的开源消息队列。它是轻量级且易于部署的,它能支持多种消息协议。RabbitMQ可以部署在分布式和联合配置中,以满足高规模、高可用性的需求。2. RabbitMQ机制3. 死信队列“死信”是RabbitMQ中的一种消息机制,当你在消费消息时,如果队列里的消息出现以下情况:消息被否定确认,使用 channel.basicNack 或 channel.basicReject ,并且此时requeue 属性被设置为false。消息在队列的存活时间

2021-02-14 17:19:25 162

原创 微服务幂等性

1 幂等场景用户重复操作:用户在使用产品时,可能会无意的触发多笔交易,甚至没有响应而有意触发多笔交易网络波动:因网络波动,可能会引起重复请求分布式消息消费:任务发布后,使用分布式消息服务来进行消费未关闭的重试机制:因开发人员、测试人员或运维人员没有检查出来,而开启的重试机制(如Nginx重试、RPC通信重试或业务层重试等)2 幂等性分析新增类请求数据库自增主键,不具备幂等性查询类动作重复查询不会产生或变更新的数据,因此查询是天然具备幂等性更新类请求基于条件查询的Update,不一

2021-02-12 13:58:37 53 1

原创 微服务容错保护:Hystrix

Hystrix 简介在微服务架构中,服务与服务之间通过远程调用的方式进行通信,一旦某个被调用的服务发生了故障,其依赖服务也会发生故障,此时就会发生故障的蔓延,最终导致系统瘫痪。Hystrix实现了断路器模式,当某个服务发生故障时,通过断路器的监控,给调用方返回一个错误响应,而不是长时间的等待,这样就不会使得调用方由于长时间得不到响应而占用线程,从而防止故障的蔓延。Hystrix具备服务降级、服务熔断、线程隔离、请求缓存、请求合并及服务监控等强大功能。在pom.xml中添加相关依赖<depen

2021-01-31 19:04:06 18

原创 spark广告精准营实战之spark算子调优

算子调优一:mapPartitions普通的map算子对RDD中的每一个元素进行操作,而mapPartitions算子对RDD中每一个分区进行操作。如果是普通的map算子,假设一个partition有1万条数据,那么map算子中的function要执行1万次,也就是对每个元素进行操作。spark map 算子如果是mapPartition算子,由于一个task处理一个RDD的partition,那么一个task只会执行一次function,function一次接收所有的partition数据

2020-05-27 08:06:27 109

原创 实战案例hive-on-spark:医疗大数据-数据仓库ETL

2.6.1 方案的选择总结:1)Spark定位于内存计算框架:分布式计算RDD、实时计算spark stream、结构化查询saprkSQL、数据挖掘spark.ML2)类比hadoop生态:分布式存储hdfs、数据仓库hive(meta、数据存储基于hdfs)、yarn分布式资源调度、nosql数据库hbase3)综合优化方案:sparkSQL做多数据源IO接入,RDD做数据清理、转换...

2019-03-07 13:33:20 2228

原创 实战案例:医疗临床大数据实时流日志分析

2.6 spark实战案例:实时日志分析2.6.1 交互流程图2.6.2 客户端监听器(java)@SuppressWarnings(&amp;amp;amp;amp;amp;amp;amp;quot;static-access&amp;amp;amp;amp;amp;amp;amp;quot;) private void handleSocket() { lock.lock(); Writer writer = null; RandomAccessFile

2019-02-13 14:13:24 802

原创 大数据实战手册-开发篇之IO

2.4 sparkContext IO:读2.4.1 textFile # Load a text file and convert each line to a Row. lines = sc.textFile("examples/src/main/resources/people.txt")2.4.2 hadoopFile2.4.3 newAPIHadoopFile...

2019-02-13 13:59:16 97

原创 大数据实战手册-开发篇之RDD : 超详细RDD函数API

2.2 RDD:计算 transform-&amp;amp;amp;gt;action2.2.1 aggregatex = sc.parallelize([2,3,4], 2)[Task不能跨分片,task数为2]neutral_zero_value = (0,1) # sum: x+0 = x, product: 1*x = xseqOp = (lambda aggregated, el: (aggreg...

2019-02-13 13:52:57 248

原创 大数据实战手册-开发篇之 集成远程开发调试环境

2.1 pycharm远程开发调试2.1.1 python版本一致#版本都保持3.6.6#root cd /usr/local/python3/bin/pip3 list备注:[python模块导入顺序是从sys.path中取,可以代码加入到sys.path。当前目录-&amp;gt;PYTHONPATH-&amp;gt;安装目录,所以设置了PYTHONPATH,这里模块安装自动引进来。]#检查...

2019-02-13 13:30:07 131

原创 大数据实战手册-安装篇之安装配置

1.2 安装配置1.2.1 安装jdk1.8#root vim /etc/profileexport JAVA_HOME=/data/software/jdk1.8.0_191export JRE_HOME=JAVAHOME/jreexportCLASSPATH=.:{JAVA_HOME}/jre export CLASSPATH=.:JAVAH​OME/jreexportC...

2019-02-13 13:22:13 107

原创 大数据实战手册-安装篇之基础环境

1 基础环境1.1.1 关闭selinux#查看状态:/usr/sbin/sestatus#disabled vim /etc/selinux/config#重启 reboot1.1.2 关闭防火墙#查看防火墙规则 firewall-cmd --list-all#查询端口是否开放 firewall-cmd --query-port=8080/tcp#开放80端口...

2019-02-13 12:53:58 114

原创 逻辑回归算法 - 乳腺癌预测

1 目标根据历史女性乳腺癌患者数据集(医学指标)构建逻辑回归分类模型进行良/恶性乳腺癌肿瘤预测2 数据集2.1 数据集来源数据集源于威斯康星州临床科学中心。每个记录代表一个乳腺癌的随访数据样本。这些是DR Wolberg自1984~1995随访搜集连续乳腺癌患者数据,数据仅包括那些具有侵入性的病例乳腺癌并没有远处转移的医学指标数据集。2.2 特征值(医学特征)3 算法3....

2018-10-08 15:32:16 3959

原创 机器学习系列之特征工程

'''@description 特征工程 - Preprocess 1 框架:scikit-learn,依赖模块:scipy、pandas、numpy 2 pip3 install scikit-learn -i http://pypi.douban.com/simple --trusted-host pypi.douban.com 3 模型 = 数据 + 算法 ...

2018-08-03 18:11:00 161

原创 机器学习系列之朴素贝叶斯算法(监督学习-分类问题)

'''@description :一级分类:监督学习,二级分类:分类(离散问题),三级分类:贝叶斯算法 算法优点: a 朴素贝叶斯模型发源于古典数学理论,有稳定的分类效率 b 对缺失的数据不太敏感,算法也比较简 c 分类问题准确度高、速度快 算法缺点: a 由于使用了样本属性独立性的假设,所以如果样本属性有关联时其效...

2018-08-03 17:11:14 1044

原创 机器学习系列之K-近邻算法(监督学习-分类问题)

一级分类:监督学习,二级分类:分类(离散问题),三级分类:k-近邻算法'''@description : 算法优点: a简单、易于理解、易于实现、无需估计参数、无需训练 算法缺点: a懒惰算法,对测试样本分类时计算量大,内存开销大 b必须制定k值,k值得选择不当则分类精度不能保证@author wolf@time 2018-...

2018-08-03 17:06:43 1200

翻译 IT 职场英语技能(西式招聘JD)

C/C++ developement engineer Responsibility: * Your job area will be from high throughput low latency exchange gateway to market making trading platform and distributed automatic trading system...

2018-05-30 13:21:26 770 1

原创 区块链实战系列:众筹空间(NodeJs版本)

1 基础环境准备1.1环境预览1.2基础工程Npm install -g truffleNpm install -g EthereumJS TestRPCNpm install -g supervisorTruffle initNpm init1.3疑难解答Web3依赖c++build tools python(only for python2....

2018-05-29 12:30:06 749 3

原创 区块链(ethereum)实战手册 - 持续更新中

1区块链解决什么问题? 1.1 解决中心化的潜在风险 - 分布式去中心化存储 1.2 降低信任成本 - 链式的数据结构 2区块链关键技术 2.1 链式的数据结构 2.2 P2P去中心化网络技术 2.3 加密算法 2.4 共识算法 3区块链实战 3.1 solidity编写合约 3.2 区块链客户端-geth使用 3.2.1 创建私有链 3.2.2...

2018-04-28 13:59:14 411

原创 服务架构一分钟系列:Nginx+Keepalived部署

1基础环境 测试机器1 192.168.0.251 MASTER Keepalived+nginx 测试机器2 192.168.0.252 BACKUP Keepalived+nginx 虚拟vip 192.168.0.100 Vip 2 nginx配置 251/252都安装nginx,开放统一端口1000server { listen ...

2018-01-05 21:44:13 292

原创 服务架构一分钟系列:微服务分布式服务架构演进

优点: 1)内网与外网分离 2)暴露外网ip之有网关,网关统一路由做全局权限、公共访问拦截处理 3)内部服务多节点部署,增加服务延续性,可水平扩展缺点: 1)网关单节点,或者nginx代理多节点,nginx宕掉怎么办? 2)Nginx宕掉,正在访问处理怎么办?解决方案: 方案一:dns轮询服务网关优点: 1)可灵活水平扩展服务网关节点 2)DNS轮询技术从成熟,增加节点

2018-01-05 21:40:14 571

原创 5 微服务实战系列 - SpringBoot redis cluster实战

redis3.2+升级cluster功能:1主从模式:主从分片,为每一个master节点创建replica,主节点宕机,从节点升级为主节点,保证服务延续性2负载均衡:集群根据流量redict to node3读写分离:主节点写操作,从节点备份读操作4ruby脚本简单创建集群部署

2017-11-29 17:54:39 3866 2

原创 3 微服务实战系列 - SpringBoot项目实战

springBoot项目实践,本项目涉及常用场景关键技术点。 请求与响应加密传输、Response加密(AES)全局响应、 访问权限控制、 高并发(唯一终端+一次完整请求生成)

2017-11-10 17:50:22 2334 1

原创 2 微服务实战系列 - SpringCloud服务网关

**服务网关解决问题: 1 内外网隔离,统一对外访问,统一权限控制,资源授权访问 2 自动路由,用户访问路由规则分发到响应服务

2017-11-10 17:38:41 457

原创 1 微服务实战系列 - SpringCloud注册中心

**注册中心解决问题: 1微服务注册标识,服务之间通信便于发现 2 相同服务多实例部署,增加服务延续性**1 pom配置 <!-- spring boot的

2017-11-10 17:35:43 220

原创 4 微服务实战系列 - SpringBoot RabbitMQ 实战解决项目中实践

springBoot出现是soa开发模式的一次革命,把javaer从xml配置中解放出来,这也是微服务流行起来的重要原因,使分布式成为主流。同时无缝连接springcloud提供服务治理、服务网关、配置热启动刷新、断路由、服务监听等,接下来记录曾经的点点滴滴!

2017-10-19 14:09:49 2293 1

原创 6大数据实战系列-sparkSql实战

sparkSql两个最重要的类SqlContext、DataFrame,DataFrame功能强大,能够与rdd互转换、支持sql操作如sql().where.order.join.groupBy.limit等。SparkSql的查询响应性能是hive的几何级倍数,并且SparkSql支持多种数据源操作包括hive、hdfs、rdd、json、mysql,本文先讲解hive、hdfs、rdd、json4种数据源操作

2017-10-12 14:21:04 404

spring各种版本下载官方地址

spring各种版本下载官方地址,包括开发指南,各种依赖包,为了lib包,找了很久,终于找了全的。1分绝对值。

2013-09-26

llinux命令大全

超级实用的linux命令大全,实用方便!

2012-08-22

权威经典的SEO电子书

超级权威,超级经典的seo使用工具书,看看seo高手总结的策略!

2012-07-10

超级阳光漂亮的PHP校园订餐系统

超级阳光漂亮的PHP校园订餐系统,php+mysql

2012-07-10

公司常用的wp7面试题

公司常用的wp7面试题,包括wp7基础理论,c#语法

2012-07-10

一网打尽浏览器的兼容性

DIV+CSS设计IE6、IE7、FF_兼容性

2012-08-22

php MongoDB操作实例

php MongoDB操作实例,代码齐全

2013-08-23

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除