logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

诡异的druid链接池链接断开故障经验总结

背景症状排查修复背景最近在陆续做机房升级相关工作,配合DBA对产线数据库链接方式做个调整,将原来直接链接读库的地址切换到统一的读负载均衡的代理 haproxy 上,方便机柜和服务器的搬迁。切换之后线上时不时的会发生 discard connection 错误,导致程序报 500 错误,但不是每次都必现的。开发框架: spring boot+mybatis+druid...

#数据库#java#网络
.NET简谈设计模式之(命令模式)

我们继续学习设计模式系列文章。本篇要讲的是命令模式,其实命令模式也比较好理解,没有用到多高深的技术,也不需要多复杂的抽象。只需要我们脑海里能有一个大概的原型,等我们遇见类似问题的时候我们能通过巧妙的方式来解决。我们做应用层开发的大部分接触的都是一些模式、框架、思想等等,不像搞低层开发的,他们研究的可能多数是一些技术实现的问题,而我们是学习实现的方法论。应用层开发在技术的复杂程度上是有...

#设计模式
聊下git pull --rebase

有一种场景是经常发生的。大家都基于develop拉出分支进行并行开发,这里的分支可能是多到数十个。然后彼此在进行自己的逻辑编写,时间可能需要几天或者几周。在这期间你可能需要时不时的需要pull下远程develop分支上的同事的提交。这是个好的习惯,这样下去就可以避免你在一个无用的代码上进行长期的开发,回头来看这些代码不是新的代码。甚至是会面临很多冲突需要解决,而这个时候你可能还需要对...

#git
聊下 git rebase -i

在使用git作为源代码管理工具的时候,开发的时经常会面临一个常见的问题,多个commit 需要合并为一个完整的commit提交。在一个基本的迭代周期里,你会有很多次commit,有跟配置文件相关的,有跟代码相关的,甚至有跟下次发布fixbug相关的。这些都是你在完成本地开发的时候一个变化记录而已。但是当你需要将你的迭代项目作为一次发布提交时就需要整合所有之前提交的那些很零碎的comm...

#git
聊下 git remote prune origin

在你经常使用的命令当中有一个git branch –a 用来查看所有的分支,包括本地和远程的。但是时间长了你会发现有些分支在远程其实早就被删除了,但是在你本地依然可以看见这些被删除的分支。你可以通过命令,git remote show origin 来查看有关于origin的一些信息,包括分支是否tracking。Local refs configured for ‘git ...

#git
redisLock redis分布式锁

redis-lockredis setnx cmmandjava object condition queue 条件队列retrycount 带有重试次数限制object wait time 带有超时时间的waitdelete lock 删除远程锁acquire lock 申请lockrelease lock 释放lockdemo 演示锁的粒度问题,锁分解、锁分段g...

#数据库#java
.NET简谈设计模式之(单件模式)

我们继续学习设计模式系列文章。今天要讲的是单件模式,其实单件模式是比较简单的设计模式,在我们日常开发过程中也是经常用到的。单件模式:单件模式是一种用于确保整个应用程序中只有一个类实例且这个实例所占资源在整个应用程序中是共享时的程序设计方法。我想如果初学者对一些基本概念能熟练掌握时,其实单件模式是很简单的,就是因为初学者对一些概念还不是很理解,我们先来扫除这些阻挡我们理解的障碍...

#设计模式
zookeeper 实现分布式锁安全用法

zookeeper 实现分布式锁安全用法标签: zookeeper sessionExpire connectionLoss 分布式锁背景ConnectionLoss 链接丢失SessionExpired 会话过期绕开 zookeeper broker 进行状态通知leader 选举与zkNode 断开做好幂等静态扩容、动态扩容背景分布式锁现在用的越来越多,通常...

#大数据#网络
.NET领域驱动设计—看DDD是如何运用设计模式颠覆传统架构

阅读目录:1.开篇介绍2.简单了解缘由(本文的前期事宜)3.DomainModel扩展性(运用设计模式设计模型变化点)3.1.模型扩展性3.2.设计模式的使用(苦心专研的设计模式、设计思想可以随意使用了)3.3.部分类的使用(封装内部对象)3.4.高强度的OO设计(面向特定领域的高度抽象设计形成特定领域框架)4.DomainModel业务逻...

#设计模式#ui#数据库
ElasticSearch大数据分布式弹性搜索引擎使用

阅读目录:背景安装查找、下载rpm包 、执行rpm包安装配置elasticsearch专属账户和组设置elasticsearch文件所有者切换到elasticsearch专属账户测试能否成功启动安装自启动elasticsearch servicewrapper包下载elasticsearch servicewrapper 包elasticsearc...

#大数据#java
到底了