- 浏览: 86043 次
- 性别:
- 来自: 成都
最新评论
-
CodeMonkey_Xiong:
困扰了好久的问题,终于在这里找到了答案! 回来感谢下博主,多 ...
使用spring boot jpa+分组+分页后,count页数不对的解决办法 -
linkai098:
谢谢大神啦
spring boot 集成原生netty(非netty-io-socket) -
CodeMonkey_Xiong:
spring boot 利用redisson实现redis的分布式锁(二) -
CodeMonkey_Xiong:
博主大人威武!!!
spring boot 利用redisson实现redis的分布式锁 -
liaoke0123:
https://bintray.com/rabbitmq/co ...
spring boot rabbitMQ延时队列 实现
文章列表
按照 actuator 的使用方法,项目中添加下面的依赖。
<!--整合springboot监控工具 actuator-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actua ...
The spring cloud version is:Finchley.SR2
总API doc:https://cloud.spring.io/spring-cloud-static/Finchley.SR2/multi/multi_spring-cloud.html
EurekaAPI:https://cloud.spring.io/spring-cloud-static/Finchley.SR2/multi/multi_spring-cloud-eureka-server.html
在Eureka的server选择上,本次完全遵从 ...
先说结论:结合某大型医院的真实架构考虑设计,最终还是决定选用Eureka.
具体原因:
对比
在分布式系统中有个著名的CAP定理(C-数据一致性;A-服务可用性;P-服务对网络分区故障的容错性,这三个特性在任何分布式系统中不能同时满足,最多同时满足两个);
Zookeeper
Zookeeper是基于CP来设计的,即任何时刻对Zookeeper的访问请求能得到一致的数据结果,同时系统对网络分割具备容错性,但是它不能保证每次服务请求的可用性。从实际情况来分析,在使用Zookeeper获取服务列表时,如果zookeeper正在选主,或者Zookeeper集群中半数以上机器不可用,那么将无法获得 ...
实现动机
传统数据库软件开发中,主键自动生成技术是基本需求。而各个数据库对于该需求也提供了相应的支持,比如MySQL的自增键,Oracle的自增序列等。 数据分片后,不同数据节点生成全局唯一主键是非常棘手的问题。同一 ...
DevOps简介
DevOps 是一个完整的面向IT运维的工作流,以 IT 自动化以及持续集成(CI)、持续部署(CD)为基础,来优化程式开发、测试、系统运维等所有环节。
DevOps的概念
DevOps一词的来自于Development和Operations的组合 ...
spring中拦截器主要分两种,一个是HandlerInterceptor,一个是MethodInterceptor
一、HandlerInterceptor
HandlerInterceptor是springMVC项目中的拦截器,它拦截的目标是请求的地址,比MethodInterceptor先执行。
1、创建我们自己的拦截器类并实现 HandlerInterceptor 接口或继承HandlerInterceptorAdapter。2、创建一个Java类继承WebMvcConfigurerAdapter,并重写 addInterceptors 方法。3、实例化我们自定义的拦截器 ...
很多时候为了重用我们会想要重置一个ArrayList,这里的重置是指清空列表或移除列表所有的元素。在Java中,有两个方法可以帮助我们实现重置clear或removeAll。在列表长度很小的情况下(eg:10或100个元素),可以放心的使用这两种方 ...
最近在使用JPA的时候发现了,有lombok存在的时候,使用JPA查询出来的嵌套对象无法正确转换成JSON。我们先来复现这个问题:1. 非常简单的entity,用过hibernate的都懂,里面的嵌套1对多对象是Code。可以看到@NoArgsConstructor@AllArgsConst ...
JVM调优--增大Eden Space提高性能
- 博客分类:
- JAVA
缘起
线上有Tomcat升级到7.0.52版,然后有应用的JVM FullGC变频繁,在高峰期socket连接数,Cpu使用率都暴增。
思路
思路是Tomcat本身的代码应该是没有问题的,有问题的可能是应用代码升级,或者环境改变了,总之Tomcat的优先级排在最后。
先把应用的heap dump下来分析下:
jmap -dump:format=b,file=path pid
用IBM的Heap Analyser分析,发现dubbo rpc调用的RpcInvocation对象和taglibs的SimpleForEachIterator对象占用了很大部分内存。
微服务授权
- 博客分类:
- spring cloud
- spring boot
背景
从传统的单体应用转型Spring Cloud的朋友都在问我,Spring Cloud下的微服务权限怎么管?怎么设计比较合理?从大层面讲叫服务权限,往小处拆分,分别为三块:用户认证、用户权限、服务校验。
用户认证
传统的单体应用可能习惯了session的存在,而到了Spring cloud的微服务化后,session虽然可以采取分布式会话来解决,但终究不是上上策。开始有人推行Spring Cloud Security结合很好的OAuth2,后面为了优化OAuth 2中Access Token的存储问题,提高后端服务的可用性和扩展性,有了更好Token验证方式JWT(JSON Web ...
最近方向想研究下缓存层面的东西。
转发一篇
在高访问量的web系统中,缓存几乎是离不开的;但是一个适当、高效的缓存方案设计却并不容易;所以接下来将讨论一下应用系统缓存的设计方面应该注意哪些东西,包括缓存的选型、常见缓存系统的特点和数据指标、缓存对象结构设计和失效策略以及缓存对象的压缩等等,以期让有需求的同学尤其是初学者能够快速、系统的了解相关知识。
数据库的瓶颈
1 数据量
关系型数据库的数据量是比较小的,以我们常用的MySQL为例,单表数据条数一般应该控制在2000w以内,如果业务很复杂的话,可能还要低一些。即便是对于Oracle这些大型商 ...
华为项目 Spark相关
一、Spark简介
1、什么是Spark
发源于AMPLab实验室的分布式内存计算平台,它克服了MapReduce在迭代式计算和交互式计算方面的不足。
相比于MapReduce,Spark能充分利用内存资源提高计算效率。
2、Spark计算框架
Driver程序启动很多workers,然后workers在(分布式)文件系统中读取数据后转化为RDD(弹性分布式数据集),最后对RDD在内存中进行缓存和计算
博主最近onsite在华为那边,写的是Hbase及Spark
发些相关文章
1、搭建环境
部署节点操作系统为CentOS,防火墙和SElinux禁用,创建了一个shiyanlou用户并在系统根目录下创建/app目录,用于存放Hadoop等组件运行包。因为该目录用于安装hadoop等组件程序,用户对shiyanlou必须赋予rwx权限(一般做法是root用户在根目录下创建/app目录,并修改该目录拥有者为shiyanlou(chown –R shiyanlou:shiyanlou /app)。
Hadoop搭建环境:
l 虚拟机操作系统: CentOS6.6 64 ...
harbor+shipyard 部署
- 博客分类:
- docker
harbor:https://github.com/vmware/harbor/
shipyard :https://github.com/shipyard/shipyard
关于两者介绍小伙伴们自行取查咯。
废话不多直接开搞。先给线上测试服务器装上harbor,作为我们那以后的docker image的远程仓库,供各环境下载。
在harbor官方https://github.com/vmware/harbor/releases上下载最新的安装包
harbor-offline-installer-v1.1.2.tgz
这里我选择的是离线安装包,直接上传到测 ...
最近准备自学mongodb集群的相关知识
鉴于项目部署已经全面使用docker,故准备将mongodb集群放在容器中
系统:
cat /etc/issue
Ubuntu 16.04.2 LTS \n \l
宿主环境是ubuntu 16.04.2
docker的相关安装不在介绍,docker-compose相关也不 ...