赞了文章2019-05-23
单机版安装 进入zooKeeper官网:[链接],找到你想下载的版本,我这里下载的是 zookeeper 3.5.4 版本。 把 zookeeper-3.5.4.tar.gz 放到指定目录 {代码...} 这是我的目录。 执行解压命令: {代码...} 得到目录 , zookeeper-3.5.4-beta,可观察到zookeeper的目录结构...
发布了文章2018-08-28
PointCut express和5种advicePointCut Express 切面表达式由三部分组成,指示器(designators):通过什么样的方式来匹配java 类的哪些方法;通配符(wildcards);运算符(operators);
发布了文章2018-08-28
spring中面向千面的开发有两种方式,一是xml配置方式,二是基于注解的方式。但是这两种虽然在写法不一样,但是最终的目的都是为了要表达一个切点和这个切面的表达式要干什么。实际开发中推荐使用基于注解方式的切面配置。主要注解:@Aspect:作用在类上,用来标记这个...
发布了文章2018-08-28
separation of contents 关注点的分离。比如水平分离在代码设计阶段将系统架构设计为展示层,服务层,持久层;垂直分离将模块划分为订单模块,库存模块等;;切面分离将功能性需求和非功能性需求分离。
发布了文章2018-08-27
标签 说明 示范 @pathVariable("pageSize") 需要配合rest风格url使用,目的是接收rest Url中的参数 [链接]:8082/hello/4 @RequestParam((value = "pageSize", required = false, defaultValue = "10")) 接收普通?后面携带的参数 [链接]:8082/hello?pageSize=4 {代码...
发布了文章2018-08-01
名词 含义 TPS 应用每秒种处理的请求数 AVG 应用对每个请求响应的平均时间 TP99 99%的请求的响应时间小于等于该值 TP90 90%的请求响应时间小于等于该值 TP50 50%的请求的响应时间小于等于该值 FAIL 应用对请求响应的成功、失败比率 调用链 一次请求所经过的所有系统...
发布了文章2018-07-26
关闭nginx ./nginx -s stop --快速停止nginx 也可以ps -ef|grep ninx kill -9 进程号 直接启动nginx,常用语第一次启 ./sbin/nginx -c conf/nginx.conf nginx检查配置 ./nginx -t --echo出来 success或者fail nginx重启 ./nginx -s reload --会重新加载配置文件后重启...
发布了文章2018-07-20
在有比较复杂的判断和需要遍历处理业务时候,经常会出现上面这种情况,这些代码在执行起来是没问题。但是这样的代码是一次性代码,过一段时间,可能自己都不敢动这里的逻辑了,更何况下一个接盘侠呢。这样的代码很难弄明白每个条件的作用和执行的流程,当你读到最里...
发布了文章2018-07-19
在使用分布式锁进行互斥资源访问时候,我们很多方案是采用redis的实现。固然,redis的单节点锁在极端情况也是有问题的,假设你的业务允许偶尔的失效,使用单节点的redis锁方案就足够了,简单而且效率高。redis锁失效的情况:
发布了文章2018-07-19
在使用分布式锁进行互斥资源访问时候,我们很多方案是采用redis的实现。固然,redis的单节点锁在极端情况也是有问题的,假设你的业务允许偶尔的失效,使用单节点的redis锁方案就足够了,简单而且效率高。redis锁失效的情况:
发布了文章2018-07-19
分布式锁解析 在当今的项目开发中,基本是个系统就用分布式锁