自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 收藏
  • 关注

原创 Openshift概念

Openshift是一个开源容器云平台,是一个基于主流的容器技术Docker和K8s构建的云平台。Openshift底层以Docker作为容器引擎驱动,以K8s作为容器编排引擎组件,并提供了开发语言,中间件,DevOps自动化流程工具和web console用户界面等元素,提供了一套完整的基于容器的应用云平台。Red Hat是Openshift的最大贡献者。Openshift包括社区版和企业版社区...

2018-05-01 19:17:54 4398

原创 Supervisor进程管理

Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,...

2018-05-01 19:13:55 415

原创 Systemd服务管理

Systemd是linux下的一款系统服务管理器。Systemd的特征有:支持并行化任务;同时采用socket式与D-Bus总线式激活服务;按需启动守护进程(daemon);利用Linux的cgroups监视进程;支持快照和系统恢复;维护挂载点和自动挂载点;各服务间基于依赖关系进行精密控制。其中的监视和控制功能的主要命令就是systemctl。Systemd有很多不同类型的使用单元,主要包括:系统...

2018-05-01 19:12:33 579

原创 Docker私有仓库

Docker官方提供了公有的registry:Docker Hub,企业内部可自建私有仓库。常见的可以有2种方式:docker-registry或基于gitlab【registry方式】1. openssl生成证书openssl req -newkey rsa:4096 -nodes -sha256 -keyout registry-test.key -x509 -days 365 -out re...

2018-05-01 19:08:33 504

原创 Docker监控

Cadvisor是Google用来监测单节点的资源信息的监控工具。它的资源消耗也比较低。但是,它有它的局限性,它只能监控一个Docker主机。因此,如果你是多节点的话,那就比较麻烦了,你得在所有的主机上都安装一个Cadvisor,肯定特别不方便。值得注意的是,如果你使用的是Kubernetes,你可以使用heapster来监控多节点集群。Google的Kubernetes中也缺省地将其作为单节点的...

2018-05-01 18:51:41 382

原创 Docker镜像源修改

docker默认的源为国外官方源,下载速度较慢,可改为国内,加速方案一修改或新增 /etc/docker/daemon.json# vi /etc/docker/daemon.json{"registry-mirrors": ["http://hub-mirror.c.163.com"]}systemctl restart docker.service方案二修改或新增 /etc/sysconfig...

2018-05-01 18:51:07 94696 7

原创 Docker安装

1. 删除旧版yum remove docker \          docker-client \          docker-client-latest \          docker-common \          docker-latest \          docker-latest-logrotate \          docker-logrotate \    ...

2018-05-01 18:50:22 187

原创 Docker storage存储

docker的默认存储位置为:/var/lib/docker,可通过命令查询:# docker info | grep "Docker Root Dir"里面包括Images, containers, volumes若需要修改默认的存储位置,有3种方法:1. 软链接1)停止服务systemctl stop docker2)迁移整个/var/lib/docker目录到目的路径mv /var/lib/...

2018-05-01 18:49:38 1812

原创 Spring Security+Spring Actuator实践

Spring Security+Spring Actuator实践

2017-11-22 23:22:20 1585

原创 Spring Cloud 之消息总线

Spring Cloud 之消息总线

2017-11-21 22:38:11 1703

原创 轻量级测试工具ContiPerf

性能测试,ContiPerf

2017-11-19 17:52:48 913

原创 Snowflake雪花算法

Snowflake雪花算法

2017-11-19 17:48:52 3710

原创 Docker-image发布到Docker-hub实践

【使用Travis发布到docker-hub】Travis类似于Jenkins的一个CI,为GitHub服务,支持多数主流语言。Travis有两个网址:https://travis-ci.org/ 非盈利的,为GitHub上public的repository提供免费服务https://travis-ci.com/ 盈利的,可以对private的提供付费服务。com前100次buil

2017-09-18 23:22:04 560

原创 Jar发布到MAVEN中央仓库实践

maven

2017-09-18 23:01:40 917

原创 Linux下定时任务crontab实践

service crond start //启动crond服务ps -ef | grep crond //查看服务是否已经运行cron文件语法: //和java中的cron表达式基本一致,缺少秒,多了命令分 小时 日 月 星期 命令0-59 0-23 1-31 1-12 0-6 command (取值范围,0表示周日一般一行对应一个任务)记住几个特殊符号的含义:“*”代表取

2017-09-05 23:18:50 271

原创 Redis分布式锁详解

在互联网分布式服务部署中,通常会遇到多个进程操作同一个资源的情况,例如秒杀等,此文章主要介绍使用Redis实现分布式锁。Redis为单进程单线程模式,采用队列模式将并发访问变为串行访问。通常使用setnx(即set not exiest)来实现锁,以下通过循序渐进的方式引入最终实现。方案一1. C1通过setnx获取锁,处理业务,C1通过del释放锁问题:如果处理业

2017-09-05 23:14:32 349

原创 Docker安装Nginx环境

1. docker hub上查询 nginxdocker search nginx2. 下载最新版的 nginxdocker pull nginx3. 运行 nginxdocker run -p 80:80 --name mynginx -v $PWD/www:/www -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/

2017-08-23 22:12:15 3225 2

原创 nginx.conf配置详解

ginx的配置文件nginx.conf配置详解如下:user nginx nginx ;#Nginx用户及组:用户 组。window下不指定worker_processes 8;#工作进程:数目。根据硬件调整,通常等于CPU数量或者2倍于CPU。默认为1error_log logs/error.log;error_log logs/error.log notice;er

2017-08-23 22:08:30 333

原创 Spring Security实践

Spring Security提供Basic Auth的鉴权方式,在一些涉及敏感信息的场景,例如应用监控等,可引入使用。1. 配置依赖org.springframework.bootspring-boot-starter-security2. properties或yml文件配置相关参数#开关management:security:enabled:

2017-08-23 22:00:56 328

原创 Spring Cloud Sleuth+Zipkin实践

一个由微服务构成的应用系统通过服务来划分问题域,通过REST请求服务API来连接服务来完成完整业务。对于入口的一个调用可能需要有多个后台服务协同完成,链路上任何一个调用超时或出错都可能造成前端请求的失败。服务的调用链也会越来越长,并形成一个树形的调用链。随着服务的增多,对调用链的分析也会越来越复杂。针对服务化应用全链路追踪的问题,Google发表了Dapper论文,介绍了他们如何进行服务追踪分

2017-08-23 21:49:17 660

原创 Spring Boot Admin实践

Spring Boot Admin 用于监控基于 Spring Boot 的应用,包括Server和Client。Client 把自身的信息“注册”到 Server,然后就能在 Server 上看到“注册”的 Spring Boot 应用的状态信息了。【不引入spring-cloud的情况】1. Server 端1) pom.xml中引入dependency> g

2017-08-23 21:42:47 2892

原创 docker swarm实践

容器 docker

2017-08-01 00:03:53 382

原创 docker stack实践

容器 docker

2017-08-01 00:00:31 8032

原创 docker-compose实践

容器 docker

2017-07-31 23:58:29 471

原创 Dockerfile详解

容器 docker DockerFile

2017-07-31 23:56:21 311

原创 docker容器简介

docker容器是一个独立的系统,相比于VM,不需要绑定整个操作系统,只需要程序运行所需要的library,settins即可,更轻量级,独立、有效docker能自动化重复性的软件环境、参数配置等工作,开发人员可专注于技术研发,不需要去配置复杂的参数等image是一个轻量级、独立的、可执行的包,包含了程序运行所需要的所有东西。包括代码、library、环境变量、配置文件等

2017-07-31 23:50:36 313

原创 短地址(ShortUrl)实例

短地址,就是把长的URL转成短URL, 目前谷歌/新浪/百度/腾讯等都免费提供API服务。因调用次数限制或提供出去的url域名不是想要的,因此考虑自己实现。短址本质上是实现了一个映射函数 f: X -> Y 。而这个映射函数必须同时具有两个特点:1. 如果 x1 != x2, 则 f (x1) != f(x2);2. 对于每一个 y, 能够找到唯一的一个 x 使得 f(

2017-06-15 23:37:01 4554

原创 Spring Boot集成cache

缓存简介工作机制是:先从缓存中读取数据,如果没有再从慢速设备上读取实际数据(数据也会存入缓存);缓存什么:那些经常读取且不经常修改的数据/那些昂贵(CPU/IO)的且对于相同的请求有相同的计算结果的数据。例如Maven/京东物流都是这种思想缓存命中率即从缓存中读取数据的次数 与 总读取次数的比率,命中率越高越好:命中率 = 从缓存中读取次数 / (总读取次数[从

2017-06-15 23:05:21 359

原创 nmon使用总结

Nmon:是一个分析aix和linux性能的免费工具(其主要是ibm为自己的aix操作系统开发的,但是也可以应用在linux操作系统上)nmon_analyser:是nmon的一个工具可以把nmon生成的报告转化成excel报表的形式供我们查看。两者的结合可以把各个硬件的监控信息生成形象化的分析报表图。nmon下载http://nmon.sourceforge.net/pmwi

2017-05-02 23:28:34 525

原创 Jmeter工具使用总结

Jmeter概念是一款优秀的开源测试工具, 是每个资深测试工程师,必须掌握的测试工具,熟练使用Jmeter能大大提高工作效率。熟练使用Jmeter后, 能用Jmeter搞定的事情,你就不会使用LoadRunner了。Jmeter下载和运行官方网站:http://jmeter.apache.org/解压后, 运行 “bin/jmeter.bat”Jmeter 是支持中

2017-05-02 23:23:36 705

原创 Spring Cloud 之断路器

Spring Cloud中使用Hystrix来实现断路器的功能。Ribbon中引入Hystrix1. pom.xml引入spring-cloud-starter-hystrix,application主类中使用@EnableCircuitBreaker,开启断路器功能。2. RestTemplate远程调用代码收敛到新的方法,在该方法上使用@HystrixCommand

2017-03-19 00:11:53 4788

原创 Spring Cloud 之负载均衡

springCloud提供2种方式的负载均衡:ribbon,feign1)Ribbon是一个基于HTTP和TCP客户端的负载均衡器。Ribbon可以在通过客户端中配置的ribbonServerList服务端列表去轮询访问以达到均衡负载的作用。当Ribbon与Eureka联合使用时,ribbonServerList会被DiscoveryEnabledNIWSServerL

2017-03-19 00:11:19 3121

原创 Spring Cloud 之服务网关

服务网关(API GATEWAY)服务网关是微服务架构中一个不可或缺的部分。通过服务网关统一向外系统提供REST API的过程中,除了具备服务路由、均衡负载功能之外,它还具备了权限控制等功能。1. 引入依赖spring-cloud-starter-zuul、spring-cloud-starter-eureka2. 启动类使用@EnableZuulProxy注解,开启Z

2017-03-19 00:10:43 1234

原创 Spring Cloud 之服务注册&发现

包括服务注册中心,服务提供方(注册服务),服务使用方(调用服务)注册中心:1. 使用spring-cloud-starter-eureka-server,主类中使用@EnableEurekaServer,开启服务注册功能,增加服务注册中心2. 配置ymlserver.port=10001eureka.client.register-with-eureka

2017-03-19 00:10:01 871

原创 Spring Cloud 之配置中心

配置服务器默认采用git来存储配置信息,也可以本地存储。配置中心配置1. pom.xml中加入spring-cloud-config-server,spring-cloud-starter-eureka2. 主类中配置@EnableConfigServer @EnableEurekaClient3. application.yml配置spring.app

2017-03-19 00:09:17 4556

原创 Spring Cloud 简介

微服务(microservice)将各功能细分成一个个服务,符合单一功能原则。微服务之间通过远程调用(RPC),springCloud为服务之间通信提供一整套解决方案,基于springCloud开发的微服务,很方便的在docker,Paas中部署,主要包括:1. 配置中心 config Server可使用git或本地文件系统存储微服务的配置文件,默认为git2. 服务发

2017-03-19 00:08:32 359

原创 OAuth2

网上关于OAuth2相关的资料非常多,推荐2篇自认为写的最详细、易懂的:http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.htmlhttp://blog.csdn.net/seccloud/article/details/8192707

2017-03-19 00:07:19 279

原创 常用的表扩展字段方案

表扩展

2016-12-25 10:55:40 3689

常用的表扩展字段方案

关于表扩展字段,之前看了一些前辈的文章结合自己在实际项目中的经验,做一下总结:1. 开始设计时,增加一些reserve字段优点:简单,支持索引缺点:太少可能起不到作用,太多也不行,影响性能2. version+ext方式,即在表后面增加version,ext字段,version用来描述对应的版本,ext存放map的json数据,如{key1:value1,key2:value2...

2016-12-25 10:55:00 1598

原创 Spring Boot devtools实例

maven工程的pom.xml直接引入即可: org.springframework.boot spring-boot-devtools true原理是在发现代码有更改之后,重新启动应用,避免手动停止再启动。其深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称

2016-12-25 10:40:28 339

空空如也

空空如也

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

TA关注的人

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