- 博客(26)
- 收藏
- 关注
原创 SDMK容器化部署实践
Kubernetes(k8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展。如果你曾经用过Docker容器技术部署容器,那么可以将Docker看成Kubernetes内部使用的低级别组件。Kubernetes不仅仅支持Docker,还支持Rocket,这是另一种容器技术。使用Kubernetes可以: 自动化容器的部署和复制 随时扩展或收缩容器规模 ...
2019-02-26 22:30:15 861
原创 Elasticsearch备份数据到HDFS
1. 问题 Elasticsearch 副本提供了高可靠性;它们让你可以容忍零星的节点丢失而不会中断服务。但是,副本并不提供对灾难性故障的保护。对这种情况,你需要的是对集群真正的备份——在某些东西确实出问题的时候有一个完整的拷贝。2.解决方案通过快照的方式,将Elasticsearch集群中的数据,备份到HDFS上,这样数据即存在于Elasticsearch(简称ES)集群当中,又存在
2018-01-31 16:34:49 9981 2
翻译 Elasticsearch数据迁移
应用场景: 将旧的数据从一个Elasticsearch集群,迁移到应外一个Elasticsearch集群 将每天或者每月的索引库,合并成一个索引库1、安装插件安装命令:进入到lostash的目录:bin/logstash-plugin install logstash-input-elasticsearch如果安装不上,卡在验证,请尝试一下一下安装命令:bin/logstas
2017-11-03 21:51:07 4903
翻译 Logstash
Logstash是一个开源的并具有数据传输能力的数据收集引擎,它能够动态的统一不同数据源的数据,并序列化数据到你所选择的存储。清洗和规范所有的数据并用于下游的数据分析和可视化展示。 虽然Logstash最初推动了日志收集的创新,但其功能已经远远超越了用例本身。任何类型的事件数据都可以通过广泛的带有编解码器的输入、过滤、输出插件进行丰富和转换。Logstash本身加速了你对海量和多样化数据的
2017-11-03 19:13:15 287
翻译 Elasticsearch集群的数据备份
备份集群 随着存储数据软件的发展,常规性的备份数据越来越重要。Elasticsearch的replicas提供了运行时的高可用性;在服务不中断的情况下,允许不定时的节点宕机。 然而,Repalicas并不提供针对灾难性失败的保护。因此,你需要实时的备份你的集群–一份完整的拷贝,以备不时之需。 备份集群,你需要用到snapshot API.它会将集群当前的状态和数据保存到
2017-10-22 21:02:19 5622
原创 Nginx + http basic 限制访问Elasticsearch
限制访问elasticsearh的方式:1、shield2、Elasticsearch-http-basic3、nginx + http basic第一种方式收费,可以排除;第二种方式支持到es1.5,没有找到相应的版本信息;所以本文采用的是第三种方式。下面介绍做法:1、nginx设置转发配置 upstream es { server 172.20.33.3:9200;
2017-08-11 17:18:28 3499
原创 单元测试
单元测试和集成测试在软件研发中都至关重要,尤其是随着自动化的普及,自动化测试也越来越流行。单元测试的作用:1、自动化测试和集成 2、发现隐藏的bug单元测试的原则:1、准备测试环境,尤其是数据环境,数据环境尽可能的做到独立 2、明确单元测试的范围,范围的选择尽可能的适中 3、以需求和原形为准,尽可能的覆盖需求和原型 4、代码各个数据流尽可能的覆盖到 5、兼顾数据逻辑,尽量做到测试数据独立
2017-08-07 13:20:11 238
原创 Java中单例模式实现
单例模式是Java编程中应用最多的一种设计模式,现在个人将单例模式经常使用到的几种实现方式,简单列举一下:立即加载模式或者说恶汉模式public class SingleInstance1 { //立即加载模式或者说恶汉模式,即在调用方法前实例已经被创建 public static final SingleInstance1 singleInstance1 = new Singl
2017-07-22 17:55:10 304
原创 工程师能力
针对工程师,个人认为应当具有以下几种能力: 1. 针特定的业务应用场景出现的问题,抽象概括能力在不同的业务应用场景,会出现各种各样的问题,遇到问题时,不要慌乱,认真列出来出现的各种问题,针对不同的问题,如何抽象概括出来,是工程师首先要解决的。问题抽象概括不好,可能会导致你设计的解决方案,最终不能很好的解决问题,或者说不能很好的解决问题。2. 对技术的深入理解能力这是基础能力,就是对技术深入的理解能
2017-07-01 12:36:06 673
原创 Kafka相关
kafka消息传送机制 a、at most once :消息最多发送一次 b、at least once :消息至少发送一次 c、exactly once:消息只会发送一次 kafka通常将at least once作为首选,重复接受数据,总比丢失数据要好日志 如果一个topic的名称为”my_topic”,它有2个partitions,那么日志将会保存在my_topic_0和
2017-06-30 21:46:00 273
原创 scrum理解
软件开发两大门派: 1、瀑布式开发,以流程为主,典型CMMI 2、敏捷式开发,以人为主,典型的scrumScrum 角色 1、Dev Team:5-9人。各有所长,共同做事。 2、Product Owner(PO):做什么? 3、ScrumMaster(SM):悲催的角色,影响力高的人担任最好,一般Team leader.Scrum 物件 1、Item(物件) 2、Task(工
2017-02-07 22:41:22 440
原创 加密算法工具类
加密算法工具类import javax.crypto.Cipher;import javax.crypto.SecretKey;import javax.crypto.SecretKeyFactory;import javax.crypto.spec.DESKeySpec;import java.security.MessageDigest;import java.security.Se
2017-01-14 11:06:10 315
原创 文件工具类
文件工具类import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.util.Properties;/** * 读取properties文件工具类 */ public class Pr
2017-01-14 11:01:46 223
原创 日期工具类
import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/** * 日期相关的转换 * User: y
2017-01-14 10:58:25 243
原创 hubflow常用命令
Hubflow安装 前提安装好git,再安装hubflow管理代码 保证生产环境的代码,都是正确能够发布的代码。常用命令1、 git clone git地址2、 setting 在gitlab上,设置master为protected3、 gitt hf init 初始化,有develop分支,用该分支,没有的会新建一个4、 gitlab -
2017-01-14 10:53:03 629
原创 多字段属性排序
排序问题 排序问题是最为常见的问题,但是同时支持多个字段属性排序,也是很常见,本节只针对单个属性进行排序而言,而非支持多个属性同时排序,这个在这里就不做过多的介绍。需求 可以支持多个属性字段属性排序代码import java.text.DecimalFormat;/** * User: ysl * Date: 2017/1/2 * Time: 16:39
2017-01-14 10:12:16 336
转载 http工作原理
HTTP简介 HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。 在了解HTTP如何工作之前,我们先了解计算机之间的通信。计算机相互之间的通信互联网的关键技术
2016-11-06 20:02:59 243
原创 elasticsearch-servicewrapper插件在2.3.x中使用
在ES1.x版本中,可以直接使用,在2.x版本中,需要修改service目录下的elasticsearch.conf文件:1.下载地址 git clone https://github.com/elasticsearch/elasticsearch-servicewrapper 将service文件拷贝到ES的bin目录下。 3. 原始的启动配置为: 修改其中修改service目录下的
2016-11-01 18:15:24 289
原创 Elasticsearch的坑
使用版本说明:2.3.31、强制不能使用root用户启动? 因为在2.x版本强调了安全性,防止attracker侵入root用户,所以建议使用者创建其他用户启动。当然,可以通过配置来实现root用户启动。 在bin目录修改elasticsearch.in.sh文件,填加如下配置项: JAVA_OPTS=”$JAVA_OPTS -Des.insecure.allow.root=true” 这样
2016-11-01 17:09:04 364
原创 避免死锁的几种常见方法
在写并发程序的时候,不可避免的有时会遇见思索的问题,这里介绍几种常见的避免死锁的方法: 1、避免一个线程同时获取多个锁 2、避免一个线程同时占用多个资源,尽量保证每个锁只占用一个资源 3、尝试使用定时锁,使用lock.tryLock(timeout)来替代使用内部锁机制 4、对于数据库锁,加锁和解锁必须在一个数据库连接里,否则会出现解锁失败的情况
2016-10-23 21:54:32 9496
原创 maven 使用多个配置文件
在编写程序的时候,可能会在不同的环境来使用不同的配置文件,这样的话,就需要不断的修改配置文件中的内容,在本地使用修改为本地的配置内容,在测试环境使用,使用测试环境的配置内容,生产环境使用生产环境的配置内容。那么maven在使用不同的配置文件路径的时候,需要怎样的pom文件呢?项目工程结构 maven引入profiles文件 <!--配置资源配置文件有哪些?--> <profiles>
2016-10-23 10:55:16 2160
原创 log4j不同的类输出到不同的日志文件中
log4j简介Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。loggersLoggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个
2016-10-21 18:41:45 3569
原创 ElasticSearch的增删改查
针对Elasticsearch 的简单使用,对于其增删改查以及相应的批处理进行简单的说明,对于初学者而言,希望有所帮助。
2016-10-21 17:12:53 414
原创 Elasticsearch、logstash、Kibana的部署文档
目录 Elk文档 2 1 Logstash的部署 2 1.1版本号 2 1.2 Logstash部署 2 1.3 logstash(shipper)配置文件 3 1.4 logstash(indexer)配置文件 4 2 Redis的安装和使用 5 2.1版本号 5 2.2主从配置 5 3 ElasticSearch的安装和配置 5 3.1版本号
2016-10-21 16:36:12 1847
原创 获取项目根的路径的方法
在编码的时候不可避免的要把一些配置写在配置文件中,这样就需要在程序中获取配置文件的路径,进而读取文件的内容。那么读取配置文件的路径有时候需要先找到先找到项目根路径。一下有几种方式,得到的是不同的路径形式:直接上代码: File f = new File(this.getClass().getResource("/").getPath()); System.out.println(f
2016-10-21 16:19:55 1593
原创 并发应用程序
线程并发/** * * Title: TaskExecutionWebServer * Description: * 1、单线程的串行执行 缺点:糟糕的响应和较低的吞吐量 * 2、将每个任务放在各自的线程中执行 缺点:线程的管理的复
2016-07-31 09:18:20 277
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人