- 博客(70)
- 资源 (19)
- 收藏
- 关注
原创 使用Prometheus+Grafana监控Flink on YARN作业
实时作业要保证7 x 24运行,除了要在业务逻辑和编码上下功夫之外,好的监控系统也是必不可少的。Flink支持多种汇报监控指标(metrics)的reporter,如JMX、SLF4J、InfluxDB、Prometheus等。这里我们选择Prometheus+grafana,下面我们线给出一个架构图下面讲述一下配置过程1.pushGateway的安装从上图可知,Prometheus是从pushgateway拉取数据的,但是flink on yarn作业的每一个任务对应的集群不一样,地址
2021-09-29 20:21:47
1459
1
转载 flink双流join之Join和coGroup的区别和应用
以案例驱动对join的认知一、前提:要想两个数据流进行Join,必须对两个流数据划分相同的窗口,在同一个窗口中,进行数据的Join连接。 这里使用EventTime,划分滚动窗口 Flink只支持等值Join,即key相等的二、数据源1、StreamDataSourceAimport org.apache.flink.api.java.tuple.Tuple3;import org.apache.flink.streaming.api.functions.source.RichPa
2021-09-29 20:08:55
840
原创 dubbo源代码-线程池分析
dubbo默认提供了三种线程池,分别是fixed 固定大小线程池,启动时建立线程,不关闭,一直持有。cached 缓存线程池,空闲一分钟自动删除,需要时重建。limited 可伸缩线程池,但池中的线程数只会增长不会收缩。(为避免收缩时突然来了大流量引起的性能问题)。fixed:public class FixedThreadPool implements ThreadPoo...
2016-09-09 15:19:14
377
原创 dubbo源代码-InjvmProtocol
本地调用,使用了Injvm协议,是一个伪协议,它不开启端口,不发起远程调用,只在JVM内直接关联,但执行Dubbo的Filter链。 Define injvm protocol: Set default protocol: Set service protocol: Use injvm first: 或 注意:服...
2016-09-06 20:24:57
885
原创 互联网架构分层常用原则
本文来自Firat Atagun的《架构演化中的软件设计原则》,文中给出了软件架构演化过程中出现的4种经典架构,就每种架构,分析了其主要特点并在几个度量维度给出结论。在文章的最后,Firat Atagun给出了4种架构的多维对比。本文的完整演讲稿是架构演化中的软件设计原则。1 分层架构分层架构是最常见的架构,也被称为n层架构。多年以来,许多企业和公司都在他们的项目中使用这种架构,它已经几乎成为...
2016-08-31 16:04:07
1052
原创 炒了8年的概念,到底该如何理解DevOps这个词?
如何实施DevOps成为众多企业迫切面临的问题,本文作者刘相,有10多年的从业经验,他结合自身企业实施DevOps的经验,梳理出DevOps在企业的组织、技术、流程等方面的最佳实践与价值,以及如何搭建DevOps平台来支撑DevOps的落地工作。本文内容包括:什么是DevOps及误区DevOps企业实践DevOps架构支撑实施DevOps价值DevOps概念...
2016-08-03 11:38:36
855
原创 数据库设计原则(转载)
1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。 在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。 这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资源信息系统中,...
2016-04-24 14:51:46
152
原创 Ehcache与terracotta集群配置
原文地址如下:http://bluewind1521.iteye.com/blog/1636283从启动结果中可以看到NodeID[XXXXXX] joined the cluster,节点已加入集群,代表terracotta结群建立成功,下面运行测试代码:A服务器:Java代码 收藏代码import net.sf.ehcache.Cache; import net.s...
2016-04-24 14:46:44
176
原创 数据库并发控制
数据库并发控制 http://blog.youkuaiyun.com/xiangminjing/article/details/5922325 1. 在数据库中为什么要并发控制?答:数据库是共享资源,通常有许多个事务同时在运行。当多个事务并发地存取数据库时就会产生同时读取和/或修改同一数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性...
2016-04-21 00:01:20
135
原创 数据库事务隔离级别
本文系转载,原文地址:http://singo107.iteye.com/blog/1175084数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。[img]http://dl2.iteye.com/upl...
2016-04-20 23:58:28
134
原创 volatile的适用场景
http://www.ibm.com/developerworks/cn/Java/j-jtp06197.html把代码块声明为 synchronized,有两个重要后果,通常是指该代码具有 原子性(atomicity)和 可见性(visibility)。原子性意味着个时刻,只有一个线程能够执行一段代码,这段代码通过一个monitor object保护。从而防止多个线程在更新共享状态时...
2016-04-20 23:51:39
339
原创 HashMap-死锁导致cpu占用100%分析
最近项目里面的一段千年代码出了问题,这个问题以前也出现过,不过不是那么明显,这次迁移机器由以前的4台机子变成2台以后问题被放大,最终不得不解决,特此分析一下。 先放出问题的代码private AlimamaCodeDAO alimamaCodeDAO; private Cache cache; /** * @param cache t...
2016-04-20 23:28:49
1119
原创 Java并发编程:线程池的使用
Java并发编程:线程池的使用 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任...
2016-04-20 22:19:18
107
原创 ArrayBlockingQueue V.S. LinkedBlockingQueue
最近看《分布式JAVA应用 基础与实践》 里面有一段话林昊 写道ArrayBlockingQueue为一个固定大小数组、ReentrantLock以及Condition实现的可阻塞的先进先出的Queue。除ArrayBlockingQueue之外,BlockingQueue的实现还有LinkedBlockingQueue,LinkedBlockingQueue实现的不同为采...
2016-04-20 22:11:35
120
原创 solr同义词的配置
格式编码为UTF-8注:如下是基于solr-5.3.1进行的配置schema.xml配置和同义词词库的配置中文,这里采用mmseg4j作为分词器,同义词一般只要进行查询的配置就可以了,同义词的配置一般位于分词器的后面下面是中文的同义词和分词的配置 ...
2016-03-16 14:45:06
322
原创 solr sharding策略
solr中含有两种sharding策略,一种是默认的compositeId(一致性hash),一般在指定numShards参数时,会自动切换到router="compositeId",如果采用compositeId方式,那么就不能动态增加shard。如果采用的是implicit方式,就可以动态的增加shard。compositeId:该路由为一致性哈希路由,shards的哈希范围从800000...
2016-03-16 14:38:18
427
原创 solr的原子更新
solr的更新,目前网上基本流传了两个版本,一个是通过solrj来实现的,一个是通过自己写HttpClient来写的。solrj来进行原子更新主要分为如下几种:setaddremoveremoveregexincset设置或者替换掉指定的值,如果是null,或者是个空的集合,将会删除掉原来的值add对于指定的字段增加一个值remove删除掉指定字段的值r...
2016-03-16 14:35:36
395
原创 solr UTC时区的问题
solr中默认获取的是Timezone是UTC或者GMT时间(这两个时区是一致的),但是通常我们数据库中的时区,是取的当前的本地的时区,所以就要通过指定时区,这个可以在启动时,通过-Duser.timezone来指定,一般是通过GMT+08,来指定bin/solr start -Duser.timezone=GMT+08 -c -z 192.168.36.84:2181/solr -Dcom....
2016-03-16 14:30:22
735
原创 中文分词mmseg4j+solr 5.3.1配置
基础环境:solr 5.3.1mmseg4j-solr-2.3.0.jarmmseg4j-core-1.10.0.jarCentOS release 6.2 (Final)java version "1.7.0_71"jar添加:位置:solr-5.3.1/server/solr-webapp/webapp/WEB-INF/lib配置:在schema.xml...
2016-01-10 14:32:24
220
原创 solr的自带的DIH进行增量索引
solr自带了DIH(DataImportHandler),提供了一站式的全量和增量方案,所以本着简单方便的理念,所以就是通过DIH来解决问题http://wiki.apache.org/solr/DataImportHandler,DIH的官方文档,里面很多都已经讲的很到位,依据其中的说明,很多就配置完成了全量索引的文件,顺利完成了全量索引的方案,不久需要进行增量索引,忽然发现其中有好多配置...
2016-01-09 23:09:41
282
原创 ganglia监控solr之监控jmxtrans配置
安装jmxtrans:wget https://github.com/downloads/jmxtrans/jmxtrans/jmxtrans-20121016.145842.6a28c97fbb-0.noarch.rpmrpm -ivh jmxtrans-20121016.145842.6a28c97fbb-0.noarch.rpm添加配置:vim /var/lib/jmxtra...
2015-12-27 14:32:12
205
原创 ganglia监控solr之jmxtrans安装使用
实验环境1、下载jmxtrans1下载地址:https://github.com/jmxtrans/jmxtrans/downloads2、安装jmxtrans123456#判断是否已安装此软件#rpm -qa |grep jmx#卸载软件#rpm -e jmxXXXXXX#安装jmxtransrpm -ivh说明: ...
2015-12-27 14:30:55
216
原创 ganglia监控搭建
环境:CentOS release 6.2 (Final)首先要下载gangliahttp://sourceforge.net/projects/ganglia/files/ganglia%20monitoring%20core/3.6.0/ganglia-3.6.0.tar.gz/download?use_mirror=nchc目前最新的为ganglia-3.7.2.tar.gz...
2015-12-27 14:16:52
346
原创 redmine搭建
这里我作下申明linux环境如下:CentOS release 6.2 (Final)我用的包如下ruby版本是:ruby-2.2.3.tar.gzrubygems版本是:rubygems-2.4.8.tgzredmine版本是:redmine-3.1.1.tar.gzrake版本是:rake-10.4.2rails版本是:Rails 4.2.4 1.ru...
2015-12-01 10:33:38
277
原创 solr in Action全书翻译
给自己定个计划:目前在做搜索方面的项目,但是目前市面很少有关于solr的中文书籍,打算为开源做点贡献,翻译solr in action
2015-11-23 11:49:31
118
原创 HmacMD5/HmacSHA/HmacSHA256/HmacSHA384/HmacSHA512
package qeeka.test.qeeka.test;import java.security.InvalidKeyException;import java.security.Key;import java.security.NoSuchAlgorithmException;import javax.crypto.KeyGenerator;import javax.c...
2014-12-16 17:08:26
637
原创 MD2/MD5/SHA/SHA256/SHA384/SHA512算法
package qeeka.test.qeeka.test; import java.security.InvalidAlgorithmParameterException; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; import ja...
2014-12-16 17:07:38
256
原创 RSA算法
package qeeka.test.qeeka.test;import java.io.DataInputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOE...
2014-12-16 17:06:37
139
原创 【转】jQuery 操作复选框(checkbox) attr checked不起作用
这天用到jQuery功能,想实现一个简单的复选框动态全选或全不选,结果测试发现 attr(‘checked’,'checked’);与attr(‘checked’,true); 都不好使,要么第一次成功了,第二次调用就没反应,完全不起作用了。那到底是什么原因呢?害得‘跑客教授’到处到网上搜 jQuery checkbox的操作,动态选择的相关文章,都写着是这样的实现代码1...
2014-09-24 14:29:35
124
原创 【转】grub rescue救援模式的处理
本人现在安装的是Windows 7+Ubuntu 10.10 双系统。今天想在自己的烂PC上装Mac,于是分了两个区,并且都没格式化。用leopard硬盘安装工具把dmg镜像加载到新分区后(现在应该被格式化成HFS+分区了),又安装了MacDrive,然后重启系统。 再然后,就悲剧了。 grub无法引导进入系统,大黑屏上出现:unkown filesystemgrub r...
2014-09-14 13:47:42
197
原创 jenkins搭建和部署
这几天由于项目需要,也许也是为了项目的更可控,老大让研究一下jenkins,于是我屁颠屁颠的就干了起来,哈哈,总是有点事情可做,毕竟刚来不久嘛,而且这次还让我顺利融入到了项目组(自我觉得),毕竟研究新的东西,也是一种能力的体现,好了废话不说了,下面还是这几天的获得首先我刚开始是在windows上进行的安装,特么搞Java的东西,首先无非都是一套,Java环境,maven环境,ant环境,通...
2014-09-05 15:10:37
168
原创 【转】 解决mysql“Access denied for user 'root'@'localhost'”
# mysql -uroot -pEnter password:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)使用网上介绍的方法修改root用户的密码:# mysqladmin -uroot -p password 'newpassword'Enter passwor...
2014-09-05 15:09:33
107
原创 spring配置文件详解
1.构造器注入基于构造器的DI通过调用带参数的构造器来实现,每个参数代表着一个依赖。此外,还可通过给stattic工厂方法传参数来构造bean。构造器参数解析根据参数类型进行匹配,如果bean的构造器参数类型定义非常明确,那么在bean被实例化的时候,bean定义中构造器参数的定义顺序就是这些参数的顺序,依次进行匹配,否则可以根据构造器参数类型匹配,如下:view plainco...
2014-09-05 13:55:13
136
原创 对于reactor和proactor两种模式的个人理解
其实要理解这两种模式很多人会说这很简单,无非一种是同步非阻塞行(nio),一种是异步非阻塞行(aio),但是对于什么是同步和非阻塞呢,什么是异步非阻塞呢,首先来谈谈我的理解,同步和异步这两种是针对数据的就绪状态,即数据是否可以读,网络通道中是否有数据读,阻塞和非阻塞是针对数据的一种处理状态,阻塞是由线程自己去处理数据,非阻塞则是由系统(操作系统)自己去读取数据到事先线程设定的缓冲区中,...
2014-08-25 14:48:50
210
原创 【转】IO多路复用和Reactor模式
IO多路复用和Reactor模式IO多路复用和Reactor模式1. Reactor和Preactor模式2. Reactor模式中的主要角色2.1. Reactor2.2. Acceptor2.3. Handler3. 多线程下的Reactor3.1. 多线程化的目的3.1.1. Worker线程4. Java中的实现4.1. ...
2014-08-25 14:12:09
313
原创 google protocol buffer -2-.proto 定义规则
google protocol buffer -2-.proto 定义规则分类: Netty2012-12-07 13:46 1084人阅读 评论(0) 收藏 举报message为主要关键字,类似于java中的class。定义简单message类型SearchRequest.proto定义了每个查询请求的消息格式,每个请求都会有查询关键词query,查询结果的页数,...
2014-04-03 11:13:14
130
原创 protobuf协议语言指南
protobuf协议语言指南分类: protobuf protocol Buffers java编程 二进制协议 业界动态2011-09-05 11:16 5995人阅读 评论(0) 收藏 举报语言编译器string扩展javaserviceProtobuf语言指南l 定义一个消息(message)类型l 标量值类型l Optional 的字段及...
2014-04-03 11:11:22
149
原创 httclient传递json
Android客户端与服务端之间传递json数据服务端:mysql+hibernate;客户端:android最近自己在做聊天软件的时候要在服务端和客户端之间进行数据传递,开始得时候使用socket,后来发现使用socket有点局限性,所以改用了http的方式,摸索了两天,终于连通了服务端和客户端思路:1.服务端提供接收数据的servlet2.客户端将需要发送的数据转换成js...
2014-03-13 01:42:34
231
原创 JSONArray的使用
Android客户端与JAVA服务端JSON传值分类: android2012-05-24 00:38 1905人阅读 评论(0) 收藏 举报JSONandroid假设你已经了解JSON数据是怎么一回事了。1、服务端服务器端使用json-lib 组装JSON数据的,在Servlet类或者相关容器类中,这里是在struts2中的action类中操作的,...
2014-03-13 01:41:31
151
原创 虚拟机的网络配置
一直以来想实现内网的其他机器访问自己的虚拟机,但是由于对网络不是很熟悉,查询了很多资料,后来在了解《解析虚拟VMware三种网络模式根本区别》之后,找到了解决方法,先分享出来,供大家参考,具体如下:1 准备:宿主机(就是本机): 只有一个物理网卡,在内网中的IP:10.152.5.113两个虚拟机(每台默认一个网卡): 其中一个是NAT(简称NAT机),一个是网桥模式(简称BD...
2013-03-08 21:29:25
125
Hadoop mapreduce中使用MultipleOutputFormat的多文件输出
2015-09-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人