- 博客(32)
- 资源 (28)
- 收藏
- 关注
原创 SpringBoot配置Gzip压缩,解决小于server.compression.min-response-size会被压缩的问题,以及zuul如何正常输出压缩前的报文
SpringBoot配置Gzip压缩,解决小于server.compression.min-response-size会被压缩的问题,以及zuul输出报文
2024-04-23 16:34:46
2168
1
原创 使用spring-kafka,每次要写kafka生产者和消费者代码的时候,需要注意的点有哪些
创建topic有个关键点就是broker数的确定,分区数最好是broker数量的整数倍;如果预测未来的消息量也并不大,那么和分区数一致即可。如果预测未来的量比较大,那么可以把分区数提前设置大一点,比如broker为3,分区数就可以是6或者9。2.注意kafka.producer.acks这个关键配置,要万无一失就配all,要速度快一点就配1(leader成功就返回),0肯定不能配(不进行消息接收是否成功的确认)。
2023-07-07 16:39:27
274
原创 MySQL next-key锁引发的死锁问题分析与处理
实际生产业务中遇到的MySQL死锁问题的分析以及解决,主要是要了解MySQL的加锁基本单位以及加锁规则
2023-06-29 10:46:26
1175
原创 封装hutool的DateUtil的between()以及betweenDay()等带日期方法
封装hutool的DateUtil的between()以及betweenDay()等带日期方法,解决是否重置,是否取绝对值的问题
2022-07-15 22:46:54
15963
原创 同步mysql或者oracle的表结构和数据到clickhouse
把mysql的表全量一次性同步到ckcreate table table_name engine = MergeTree ORDER BY primarykey_name as select c1,c2,c3....... from mysql('hostname:3306','db_name','table_name','username','password_of_mysql') ;其实关键就是后面的select开始的这部分,这段sql如果能在ck里面执行成功,那就没有什么问题了。尝试同步o
2020-09-28 16:18:44
2142
10
原创 分布式微服务下的跨库查询解决思路
分布式微服务下的跨库查询解决思路参考文章:https://mp.weixin.qq.com/s/_DPunClmcTDJLcC3S9Y4og 微服务架构下,解决数据库跨库查询的一些思路看了文章后结合自己经验写的心得由于微服务的流行,每个微服务都有自己的数据库,这样不可避免一个服务需要依赖另一个库的数据,如果需要获取的是单条的数据,直接通过RPC或者http调用其他微服务就够了。不过,更复杂的情况时,可能一个列表分页查询10条,每条又依赖另外一微服务库里面表数据。文章中自己没有用过的思路
2020-08-14 16:01:18
4724
原创 阅读源码理解springcloud的@LoadBalanced的原理
我们在使用RestTemplate类调用其他服务的时候,如果配置了@Bean @LoadBalanced RestTemplate restTemplate() { return new RestTemplate(); }那么如果被调用端有多个服务提供,那么自动就有了客户端负载均衡的效果。使得使用RestTemplate的时候就非常的方便,在这里不得不说spring的这些大师真的很厉...
2019-04-03 00:46:39
2651
6
原创 servlet3.0异步+Spring DeferredResult +apollo的长轮询
今天看apollo官网,看到Config Service通知客户端的长轮询实现原理部分,学习了一下。基础原理:https://blog.youkuaiyun.com/wangxindong11/article/details/78591396 servlet3异步原理与实践 (写的很清楚的一篇文章,同时还写了spring的DeferredResult)https://www.cnblogs.com...
2019-02-11 16:04:26
1587
原创 zuul 重试 配置与实践
重试必要步骤1.必须要引入maven依赖,否则不生效<dependency><groupId>org.springframework.retry</groupId><artifactId>spring-retry</artifactId><version>1.2.2.RELEASE</versio...
2018-11-17 16:37:47
379
原创 修改zuul的隔离机制
Spring Cloud Edgware新特性之二:如何配置Zuul的Hystrix线程池 http://www.itmuch.com/spring-cloud/edgware-new-zuul-hystrix-thread-pool/ (主要是翻译的官网)spring-cloud中zuul的两种隔离机制实验 http://www.importnew.com/28626.htmlhttps...
2018-11-17 16:35:46
1308
原创 Hystrix 线程 命令名称commandKey、分组groupKey以及线程池划分threadPoolKey
配置方式:@HystrixCommand(fallbackMethod = "helloFallback", groupKey = "Group1", threadPoolKey = "HystrixFooServiceGaGa")1.其中commandKey目前还没有发现有什么用,下面重点看groupKey 和threadPoolKey当上面3个属性都不配置的时候,比如study-sp...
2018-11-17 16:33:09
13404
4
原创 生产者消费者问题
package thread;import org.junit.Test;import java.util.LinkedList;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;/** * 生产者消费者问题 * * @author Dean */publi...
2018-11-04 10:31:45
145
原创 log4j2 日期换天后,今天的日志打印到了昨天的日志文件里面,rollover混乱
log4j2.xml配置规则 <RollingRandomAccessFile name="File" fileName="${path}/${application}.log" filePattern="${path}/${application}-%d{yyyy-MM-dd}-%i.log"> ...
2018-10-16 11:29:24
4391
原创 SpringBoot actuator 健康检查不通过
今天遇到有个服务能够注册成功,但是健康检查不通过,通过浏览器访问健康检查的url,chrome的network一直显示pending,说明这个请求提交了,但是得不到返回,卡住了。原来以为健康检查就是检查服务端口下的/health这个请求本身是否能正常返回,其实不是。所谓健康检查是有很多检查项的,springboot中继承AbstractHealthIndicator的类,比如DataSourceH...
2018-10-09 22:23:57
13161
原创 wait() notify() notifyAll() 使用范例
代码是最好的文档,直接看代码吧package thread;import org.junit.Test;/** * wait() notify() notifyAll() * 这3个方法是Object基类的native方法,要调用这些方法的线程必须持有对象的锁 * * @author Dean */public class Thread_06_WaitAndNotify {
2016-11-16 08:36:35
247
原创 CountDownLatch用法
package concurrent;import java.util.Random;import java.util.concurrent.*;import org.junit.Test;/** * CountDownLatch,被用来同步一个或者多个任务,强制他们等待由其他任务执行的一组操作完成。 * 向CountDownLatch对象设置一个初始计数值,任何在这个对象上调用
2016-11-09 12:29:10
435
原创 CyclicBarrier使用范例
网上查了几个例子,发现几乎都直接可以用CountDownLatch来替换,于是自己写了一个例子来说明CyclicBarrier的好处,jdk用的8。例子是用N个线程,每个线程分别同时开始填写第0列里面的N行数据,比如线程0填写0列0行并等待,线程1填写0列1行并等待。。。直到所有线程填写0列完成,再又开始同时填写第1列,直到填写完成。个人认为和CountDownLatch的最大区别在于,Cycli
2016-11-02 11:28:41
346
原创 Gson简单过滤工具类封装
为手机app封装接口,需要把结果转换成json,这里用到了gson,但是有很多属性是不能对外暴露的,因此要过滤掉,gson自带的策略能够实现,但是代码一大坨@Test public void testStrategy(){ final Set excludeAttr = Sets.newHashSet();//需要排除的属性 excludeAttr.add("age");
2015-09-28 11:50:51
1561
原创 修改tomcat使用的JAVA_HOME
tomcat默认使用的是系统环境变量里面配置的JAVA_HOME,如果需要修改为自定义的JAVA_HOME而又不能修改环境变量,可以修改tomcat/bin/setclasspath.sh(或setclasspath.bat),在文件顶上最后一行注释的下面新增set JAVA_HOME=c:\Program Files\Java\jdk6
2014-03-05 11:23:52
1405
原创 java书籍推荐
1.java基础原理《深入理解JAVA虚拟机.周志明》算法Java数据结构和算法中文第二版 2.基础《Java编程思想(第4版)》 一本足够了 3.提升编程水平《编写可读代码的艺术》《代码之美》《代码整洁之道》《高效程序员的45个习惯-敏捷开发修炼之道》 4.进阶《重构-改善既有代码的设计》《重构与模式》《程序员修炼之道-从小工到专家》《代码大全2》
2013-05-28 00:15:34
1464
原创 Extjs3.2.0 使用插件 LovCombo 多选下拉之心路历程
最新项目需要一个多选功能,最初考虑使用MultiSelect,但是在列布局模式下在IE中怎么都不显示,在firefox中却可以显示,但是显示出来背景色也不对,最后不得不考虑使用另外的插件。(有人在这种情况下正常使用的请留言告知)。 google了,发现还有个LovCombo 多选下拉可以使用,于是找了几篇文章,但是实际弄起来,问题就来了。 最大的问题是版本问题,很多文章都是使用的e
2010-04-28 16:32:00
5426
原创 使用struts2 的jsonplugin插件与opensessioninview和hibernate延迟加载时遇到的问题
遇到的情况是,我有个Page对象,里面有totalProperty(总记录条数)和root(结果集)2 个属性。同时,有个Company公司类和Department部门类,是一对多的关系。当查询公司列表的时候,我分页查询20条数据,hql如:from Company limit 0,20; 并将结果使用struts2 的jsonplugin插件转换为json对象返回。出现的问题是,我在a
2010-04-21 18:02:00
2525
6
原创 数据库树结构之我见
一般有2字段 id主键 pid 父节点id数据库删除节点有3种实现方式:1.递归删除,好处:sql可以灵活控制。坏处:如果这棵树很大,层数很深,会执行很多次数据库查询和删除操作 ,效率很低。2.数据库表自表建立主外键关系,利用数据库自带的级联删除。好处:效率很高。坏处:如果到时候删除父节点 不能删除子节点,需要修改数据库表结构。建议使用此方法。3.把递归删除语句写到存储过程里。好处:效率高
2010-04-01 16:10:00
736
原创 hibernate sql命名查询
最新在做一个医院管理系统,使用到了Hibernate,数据库使用的是mysql。碰到一个需求,需要求2个日期相差天数,并且把天数显示出来,我想这个还是利用数据库原生的日期函数比较好,于是考虑使用Hibernate对sql的支持,由于sql写在程序中不太好,如果要换数据库,找sql语句来修改都是个麻烦事情,把所有原生sql写在配置文件里面比较合理。 配置文件如下:
2010-03-19 16:00:00
1125
转载 [精彩] 如何给linux添加新硬盘
作者:haohaoo 来自:CnLinux.net工作笔记 转载请保留以上信息,谢谢 在服务器上把硬盘接好,启动linux,以root登陆。 比如我新加一块SCSI硬盘,需要将其分成三个区:#fdisk /dev/sdb进入fdisk模式:Command (m for help):p //查看新硬盘的分区Command (m for help):n //创建新分区可以用m命令来
2010-01-14 13:15:00
504
转载 设计模式之Factory
工厂模式定义:提供创建对象的接口.为何使用?工厂模式是我们最常用的模式了,著名的Jive论坛 ,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见。为什么工厂模式是如此常用?因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑实用工厂模式,虽然这样
2007-04-14 18:10:00
657
转载 实现DAO 设计模式
为DAO实现工厂类的策略1 采用工厂方法设计模式如果一个DAO 工厂只为一个数据库的实现,(比如ORACLE)而创建很多的DAO的时候,实现该策略时,我们考虑采用工厂方法设计模式. 假设该工厂类创建了CustomerDAO, AccountDAO, OrderDAO 等一些对象。2 使用抽象工厂设计模式:如果考虑为三种不同类型的数据库来实现这个策略,我们可以考虑采用抽象工厂设计模式.
2007-04-14 18:04:00
1021
转载 从小做起,规划你的程序人生
这里的小是指小事,平时多注意这样的小事情,从小积累,积极规划自己的人生道路。1 API文档要看英文的。2 程序注释要用英文写,仿照官方API的样子写。3 删掉mp3里面的靡靡之音,放一些 越狱,老友记的mp3文件,练习耳朵。听不懂的地方看剧本。4 不停的重复说 步骤3 里面你听懂的话。5 多看别人的源代码,如果用Swing,就看Swing,NetBean的源代码,如果用Spring,就看Sprin
2006-12-24 17:07:00
689
可伸缩服务架构:框架与中间件 高清带目录版
2018-08-13
深入浅出MySQL:数据库开发、优化与管理维护(文字版 全)
2018-03-30
深入理解Java虚拟机:JVM高级特性与最佳实践(第2版) 文字版
2016-10-24
JavaScript权威指南(第6版) mobi 文字版
2015-11-03
改变未来的九大算法 epub
2015-09-03
Bootstrap实战
2015-03-09
企业应用架构模式 2010新版 清晰 中文
2013-10-22
敏捷软件开发:原则、模式与实践(中文高清)
2013-10-21
修改代码的艺术 中文 超高清 免分 第2部分
2013-10-21
修改代码的艺术 中文 超高清 免分 第5部分
2013-10-20
修改代码的艺术 中文 超高清 免分 第4部分
2013-10-20
修改代码的艺术 中文 超高清 免分 第3部分
2013-10-20
我编程,我快乐-程序员职业规划之道(高清 中文 带目录 免分下载)
2013-10-09
WAP开发实用手册(本书全面介绍WAP的相关知识和技术)
2009-12-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人