加载中
数学笔记(一)

数学是门神奇的学科,可以轻松把一些很难再优化的算法由O(n)直接变为O(1),最近因...

2017/06/25 09:57
8
替换Spring Boot 的EnableCaching注解

目前线上大部分功能已经使用了EnableCaching注解实现了返回值缓存的功能,但是redis挂了的时候,正常功能就无法使用了,需要在redis出问题了能走数据库的方法

2017/07/26 19:06
82
一段业务代码的重构过程

最近review代码,然后带着程序员重构了一段,发现语法方面居然花了不少时间,然后感觉这种情况还是挺典型的,于是记录一下,下次就不用从语法教起了。 首先是review的时候看到了这样一段代码...

2017/06/27 15:36
11
dubbox的provider端嵌套调用问题

  今天遇到了一个问题,查了半天。。。,情况是这样的,我用的是dubbox,想做一个精简的全链路跟踪,一个消费者通过dubbox调用一个Service, service 里另外调用了两个service:   A服务被...

2017/05/26 20:03
10
mysql分表分库选型

三个方向: 一、应用中自己实现,可直连数据库,自己实现因目前使用的Mybatis框架可以使用两种做法: 1、在SQL中直接分表逻辑,我查了一下代码中的sql,发现join的千姿百态,不大动这些sql这事...

2017/05/26 20:03
37
Spring事务执行过程

  先说一下启动过程中的几个点:   加载配置文件:   AbstractAutowireCapableBeanFactory.doCreateBean --> initializeBean --> applyBeanPostProcessorsAfterInitialization --> bea...

2017/05/26 20:03
20
Spring Boot启动过程(七):Connector初始化

  Connector实例的创建已经在Spring Boot启动过程(四):Spring Boot内嵌Tomcat启动中提到了:      Connector是LifecycleMBeanBase的子类,先是设置LifecycleState为LifecycleState....

2017/05/26 20:01
74
Spring Boot启动过程(二)

  书接上篇   该说refreshContext(context)了,首先是判断context是否是AbstractApplicationContext派生类的实例,之后调用了强转为AbstractApplicationContext类型并调用它的refresh方法...

2017/05/26 20:01
9
Spring Boot启动过程(四):Spring Boot内嵌Tomcat启动

  之前在Spring Boot启动过程(二)提到过createEmbeddedServletContainer创建了内嵌的Servlet容器,我用的是默认的Tomcat。 private void createEmbeddedServletContainer() { Em...

2017/05/26 20:01
102
Spring Boot启动过程(六):内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的启动

  看代码有助于线上出现预料之外的事的时候,不至于心慌。。。   StandardEngine[Tomcat].StandardHost[localhost]的启动与StandardEngine不在同一个线程中,它的start: // Start our c...

2017/05/26 20:01
59
Spring Boot启动过程(三)

  我已经很精简了,两篇(Spring Boot启动过程(一)、pring Boot启动过程(二))依然没写完,接着来。   refreshContext之后的方法是afterRefresh,这名字起的真...好。afterRefresh方法...

2017/05/26 20:01
1
Spring Boot启动过程(五):Springboot内嵌Tomcat对象的start

  标题和上一篇很像,所以特别强调一下,这个是Tomcat对象的。   从TomcatEmbeddedServletContainer的this.tomcat.start()开始,主要是利用LifecycleBase对这一套容器(engine,host,c...

2017/05/26 20:01
7
Spring Boot 声明式事务结合相关拦截器

  我这项目的读写分离方式在使用ThreadLocal实现的读写分离在迁移后的偶发错误里提了,我不再说一次了,这次是有要求读写分离与事务部分要完全脱离配置文件,程序员折腾了很久,于是我就查...

2017/05/26 19:55
217
使用ThreadLocal实现的读写分离在迁移后的偶发错误

  最近莫名的会有错误日志,说有写操作因为走了读库而报了read only的异常,由于并没有造成应用使用的问题,开始我以为哪的配置错误就没当回事让程序员自己去查了,然而。。。   背景:之...

2017/05/26 19:54
14
Spring Boot启动过程(一)

  之前在排查一个线上问题时,不得不仔细跑了很多遍Spring Boot的代码,于是整理一下,我用的是1.4.3.RELEASE。   首先,普通的入口,这没什么好说的,我就随便贴贴代码了: SpringAppli...

2017/01/17 13:15
30
Tomcat一个BUG造成CLOSE_WAIT

之前应该提过,我们线上架构整体重新架设了,应用层面使用的是Spring Boot,前段日子因为一些第三方的原因,略有些匆忙的提前开始线上的内测了。 然后运维发现了个问题,服务器的HTTPS端口有...

2017/01/06 17:35
71
Apache执行Python脚本

  由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样:      因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎...

2016/12/28 11:31
11
Android浮层点击穿透问题

  最近做微信公众号开发的时候遇到一个问题,上线后发现此问题后检查代码没有发现问题,无奈只能回滚到上一个版本。   问题是这样的:页面一个选择的浮层,在浮层点击确定后,下面的页面...

2016/12/28 11:27
69
事物隔离级别和乐观锁

  最近在迁移代码,迁移过程中发现了一段应用了乐观锁的代码(这是伪代码): public boolean doWork(final int count, Entity entity) throws InterruptedException { if (3 == c...

2016/12/28 11:25
3
Parallel并行之乱用

  关于Parallel我也不细说了,一则微软封装的很好用,二来介绍这个的遍地都是。   我要说的是,要想成为一个优秀的标题党,一定要把重点放到别的地方,为了节省大家阅读时间,我先把结论...

2016/12/28 11:25
4

没有更多内容

加载失败,请刷新页面

返回顶部
顶部