自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

龙行九天的专栏

个人技术积累记录

  • 博客(42)
  • 收藏
  • 关注

原创 由冒泡排序交换数值引发的位操作

数字交换的位操作及相关拓展

2022-10-04 23:13:33 363

原创 spring boot 配置文件中 时间参数解析到Duration

配置解析按照spring-boot核心包org.springframework.boot.convert中的StringToDurationConverter按照约定的格式进行解析。最后由转换器转换为 对应的Duration对象,而非直接调用Duration中的parse方法进行转换。

2022-08-10 17:49:59 1452

原创 Ubuntu Sublime 添加json 格式化 组件

1. 点击Reference后 ,点击 Browse Packages2. 在打开的窗口,打开命令行工具,当前为packages目录3. 输入命令git clone https://github.com/dzhibas/SublimePrettyJson.git, 然后将SublimePrettyJson下的Pretty JSON.sublime-settings 文件放到 packages目录下的User下如下:git clone https://github.com/dzhibas/S

2022-04-24 17:37:35 476

原创 关于 maven release 插件 重复 deploy source jar 问题

mvn release 插件与source插件 及maven 版本冲突问题处理

2022-04-19 15:46:56 1680 1

原创 ubuntu 20.04升级搜狗输入法 3.4版本后中文输入失效

解决方案:sudo apt-get install libqt5qml5sudo apt-get install libgsettings-qt1

2022-01-19 14:32:24 829 3

原创 shell 笔记

1. curl 超时设置--connect-timeout 单位 秒设置最大请求时间-m /--max-time 单位 秒设置最大传输时间curl --connect-timeout 10-m 30 'https://baidu.com/xxx'连接10秒,传输最大30秒超时2. shell脚本中异常捕获curl --connect-timeout 10-m 30 'https://baidu.com/xxx'抛出异常,后续脚本根据上述异常判断后执行后续逻辑...

2021-10-13 13:00:10 485

原创 spring cloud 获取当前服务实例所在zone

1. spring cloud服务获取当前示例所在zonecom.netflix.appinfo.InstanceInfo /** * Get the zone that a particular instance is in. * Note that for AWS deployments, myInfo should contain AWS dataCenterInfo which should contain * the AWS zone of t

2021-10-12 10:58:15 311

原创 Ubuntu apt install 报错

sudo apt install gitE: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?sudo rm /var/lib/dpkg/locksud.

2021-08-31 22:35:34 109

转载 ubuntu 删除搜狗 繁简切换快捷键

最近将工作环境切换到了Linux下,在使用搜狗输入法时,发现其占用了快捷键Ctrl+Shift+F,而且设置中没有提供选项进行修改,造成了Android Studio中全局搜索不可用的情况(当然你也可以改AS的快捷键),网上找了一圈,发现没有提供有效的解决方法,遂提供一下我的解决方案。解决方案1.首先打开搜狗拼音的配置文件gedit ~/.config/sogoupinyin/conf/env.inips: gedit只是gnome下面自带的文本编辑工具,你也可以用vim vi等然后找到

2021-07-14 19:56:11 950 2

原创 spring cloud zone 参数设置

通过 eureka.client.availability-zones 设置, key 为设置的region参数, value为设置的zone参数可通过 InstanceInfo类获取该参数确认方式, 如下: /** * Get the zone that a particular instance is in. * Note that for AWS deployments, myInfo should contain AWS dataCenterInfo whic

2021-06-23 19:08:55 222

原创 sed命令转义符

sed命令需要处理的转义符,目前遇到的只有 /比如將文本中的 /src/main 替换成 /dbk/ert使用sed命令 sed -i 's/src/main/dbk/ert/g' file 执行是不生效的,需要执行如下的命令sed -i 's/src\/main/dbk\/ert/g' file 即可如果是脚本命令,传入的代替换及要替换的文本中可能含有 / 字符,则需要进行如下替换old 和 new为脚本环境传入的变量sed -i "s#$old#$ne...

2021-04-02 15:21:53 10299

原创 maven 版本自动化更新

对于java中公共的jar工程, 内容发生变化后,需要进行版本的更新升级,并将新的版本推送至nexus仓库,同时将pom中version 的更新修改提交到git中, 是个多次重复的场景.一, maven命令maven本身的release插件,对上述流程有比较好的支持;1. mvn release:prepare该命令主要检查当前pom中是否存在snapshot依赖, 以及对当前版本进行去snapshot后缀, 末位版本自增但是该命令会提示确认修改后的版本等内容,是一个交互式命令,忽略交互

2021-02-19 15:25:18 1825

原创 spring cloud 基于eureka做优雅关机

eureka提供了注册中心的高可用特性, 每个服务实例向eureka server 注册自己的节点信息,供需要的服务进行调用, 但是配置过程中发现, 因为eureka client会缓存服务注册信息,导致被调用实例重启部署过程中,调用方不能及时更新节点信息,进而导致调用的失败, 虽然很多的设置ribbon的重试方案,但是一种更加主动的方式,是等待各个节点已将当前重启节点信息失效后再重启.例如订单服务 order-service 调用 产品服务 product-service, product-servi

2021-01-24 23:06:02 309

原创 java 与cpu缓存优化

cpu的缓存行一般为64byte, 所以在jdk7之后的并发包中,添加了LinkedTransferQueue, 其中将头尾引用全部扩展到64字节,是头尾不在一个缓存行,从而达到在对head机型操作的过程中,不会因为内存一致性协议导致head和tail同时被锁而降低队列的并发性能.不是所有的volatile修饰的引用都要扩充到64字节,针对两种情景:1. 需要进行高速的读写操作2. 缓存行非64字节宽的缓存行处理器...

2021-01-16 17:32:48 211

原创 lombok 编译警告

Warning:(18, 1) java: Generating equals/hashCode implementation but without a call to superclass, ev解决方案:1. 按照提示 添加新的注解即可2. 在src/main/java 下,添加 lombok.config 文件内容为:config.stopBubbling=truelombok.equalsAndHashCode.callSuper=call...

2021-01-08 14:27:25 425

原创 python 包 依赖 error: Microsoft Visual C++ 14.0 is required. Get it with “Build Tools for Visual Studio

python 添加插件报错:error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio查了一下, 避免安装 visual studio,又能满足相关安装要求的稳妥方式为:安装Microsoft Visual C++ Build Tools下载地址:https://download.microsoft.com/download/5/f/7/5f7acaeb-8363...

2021-01-02 18:11:45 287

原创 spring cloud 与 spring boot 版本匹配关系

官网链接:https://start.spring.io/actuator/info获取后按照接送格式化 ,内容如下(当前时间 2020-12-04){ "git": { "branch": "6c1a2c867206a6c9a756dfd9bfec8d1e1b5f650e", "commit": { "id": "6c1a2c8", "time": "2020-12-03T17:06:15Z" } }, "build": {...

2020-12-04 15:36:07 116

原创 git 操作备忘

1. git log br1 ^br2 展示 br2中存在但是不在br1中存在的提交记录

2020-07-10 14:27:06 108

原创 IntelliJ idea JAVA 编译器 自动填充 serialVersionUId

1. 打开 settings, 搜索 inspections2. 右侧框搜索 serialVersion, 勾选第二四项, 保存后退出3. 类名后 alt + enter

2020-06-30 16:07:46 456

原创 thread 内 事务失效

进行批量数据更新的时候, 为了接口主线程的直接返回避免http超时, 新构建Thread进行数据的更新.为了避免更新中出现问题导致最终的数据库不一致, 添加了事务.由于在一个类内操作, 于是添加了@EnableAspectJAutoProxy(proxyTargetClass = true, exposeProxy = true) 注解, 同时在调用的时候, 使用 AopContext.currentProxy() 获取当前的代理类, 测试报错如下:Cannot find curre.

2020-05-18 21:20:10 591

原创 最大化利用线程池

线程池执行时间与消息队列消息可见性

2020-05-13 21:20:23 313

原创 idea 接口实现类 自动补全代码 不带方法内注解

Editor -- > Code Style -- > JavaCode Genaration -- > override method signature添加需要接口实现类自动带过来的注解

2020-04-12 14:51:51 1840

原创 redis 集群 踩坑

场景: redis集群三主三从, jedis接入, 只配置三个主节点问题: 服务更新部署,发现连不上redis集群.包connection refused.排查:首先确定redis节点是否存在问题, redis-cli在当前服务器没有安装,使用telnet ip port进行测试, 发现三个节点中部分节点存在问题, 不能连接. 找运维确认节点状态,表示之前节点故障, 主从自动替换....

2020-03-24 12:49:29 198

原创 eureka dns name 配置

spring cloud 版本 2.0.1.RELEASE相比于基于ip的配置,需要添加的配置项为:1. use-dns-for-fetching-service-urls: true该设置项开启依赖dns查找依赖2. region: default根据自己实际环境3. eurekaServerURLContext: eurekadns只能拿到ip, 需要拼接...

2020-03-18 20:28:05 285

原创 服务器之间文件迁移

因服务器内核不稳定 加之阿里云对内核升级的支持不到位,需要进行服务迁移,历史日志迁移操作:1. 使用 Python -m SimpleHTTPServer 8899 (端口号自定) 创建http服务, 默认当前执行命令为根目录.2. 在新服务器使用 wget 获取需要的文件夹及文件wget -c -r -np -nc -L -p...

2020-03-10 12:40:14 836

原创 Ubuntu 非系统安装分区 无法访问

场景:机械盘存储数据, 系统安装在固态盘上问题:正常的桌面操作没有问题, 最近远程ssh连接,发现无法访问机械盘数据,df -h 不显示机械盘sudo blkid 显示机械盘的位置解决:在/mnt下创建同名文件夹, mount 挂载即可访问...

2020-02-22 10:37:32 133

原创 spring cloud 服务重启 Exception caught (might be ok if at shutdown) 异常日志

spring cloud 服务重启中遇到异常 info级别日志, 如下:[INFO ] - [c.n.u.c.ShutdownEnabledTimer:59] - Exception caught (might be ok if at shutdown) [TraceInfo:-] java.lang.IllegalStateException: Shutdown in progress...

2020-01-08 14:44:10 5804

原创 eureka client 关闭异常 BeanCreationNotAllowedException

BeanCreationNotAllowedExceptionIt can be easily reproduced with Boot2.0.4or1.5.14(ie Spring CloudEdgware.SR4orFinchley.SR1)(1) public synchronized void shutdown() {(2) if (is...

2020-01-07 09:59:15 294

原创 git stash

1. git stash暂存当前代码默认最新的在最上面 栈操作2. git stash list 查看当前stash列表3. git show stash@{1} 查看list中下标为1 的stash内容4. git stash apply stash@{1} 将stash list中下标为1的内容应用到工程中 不删除暂存区5. git stash drop stash@{1...

2019-11-13 10:53:24 354

原创 ubuntu 开发机配置

机器配置记录1. 音效软件1.sudo apt-get install jackd 2.sudo apt-get install caps

2019-11-05 14:56:42 168 1

原创 git 补丁更新代码 patch

场景:从master分支拉取分支 br1, 从分支br1 拉取分支 br2, 后来发现br1开发特性需要废除, 仅适用br2分支特性即可.解决方案:一. br2分支commit不多, 直接在master分支 git cherry-pick br2独有的提交即可.二. br2分支提交较多, git cherry-pick 操作成本略大 1. 适用git diff的...

2019-09-17 13:13:31 628

原创 maven 多模块 工程结构实践 (二)

基于上一篇, 再次修改工程结构思考:1. 为什么父pom的默认路径是当前路径的上一级? 即 ../2. maven的模块,都应该是具有内部功能联系的模块, 第一篇中关于root-pom的三个模块中的引用, 会造成后续升级 root-pom版本, 每个模块的pom都有修改的问题3. 每个子pom, 都有自己的坐标及版本信息, 这个和本身的pom继承关系有一点违和基于以上三点...

2019-08-29 21:33:44 112

原创 spring mvc 不定路径 请求映射

公司项目整体结构迁移,从原有的spring + zk + thrift 转移到 spring-cloud, 搭建了spring-cloud 全家桶,新的微服务模块写的后台接口,接入到原有域名,遇到了手动转发的问题.原有的管理后台, 称之为 admin-api, 是一个spring mvc工程, 向前端提供http接口,后端与原有的各个thrift项目链接, 起到转换http请求的作用. ...

2019-08-29 21:19:18 203

原创 maven 多模块 工程结构实践 (一)

一. 创建单独的根pom 文件, root-pom, 工程中只有一个pom文件 文件中内容如下:1. 各个依赖jar的版本, 即dependencyManagement 内容2. build 规定了 resource 及testResource的文件格式及目标文件夹3. pluginManagement, 规定了各个插件的版本4.distributionManagement, ...

2019-08-26 21:49:50 367

原创 解决ubuntu 下 MySQL5.7.16远程访问问题

安装后的远程访问一直有问题 ,经过各种查看,发现需要修改 /etc/mysql/mysql.conf.d 目录下的mysqld.cnf文件 ,在 bind_address前面加上#注掉,然后grant all privileges on *.* to admin@"%" identified by 'password' with grant option; flush privileges;

2016-12-31 22:33:11 2602 1

原创 quartz 1.x版本出现OPTION SQL_SELECT_LIMIT=DEFAULT错误解决方案

之所以出现这个问题,是因为使用了quartz的分布式部署方案,提高任务平台的可靠性,由于公司内部框架的限制,只能使用基于spring2.5,也就限制了使用quartz 的1.x版本,但是公司的数据库挺新的,5.6.。。。问题错误异常为:[ERROR 2016-01-06 16:57:44.849] [QuartzScheduler_CRMscheduler-zc-miui-fi-stag0

2016-01-06 17:35:41 3901

原创 关于在国内使用maven的一些设置

maven在很大程度上方便了项目的构建,但是由于国内的网络封锁,导致这个很方便的东西用起来有些不太方便,尤其是对于不想花钱使用VPN有感觉翻墙太麻烦的人来说,网上巴拉了一下,感觉开源中国的镜像做的挺不错的,速度很快,弥补这一不足,具体配置:      CN      OSChina Central                                            

2016-01-04 00:50:59 540

原创 java项目中logger一般使用 static final

(1):出于资源利用的考虑,LOGGER的构造方法参数是Class,决定了LOGGER是根据类的结构来进行区分日志,所以一个类只要一个LOGGER就可以了,故static(2):final表示一种编程习惯,表示该类的LOGGER只是记录该类的信息,否则日志会无法提供可以令人信服的记录

2015-11-16 18:59:00 4204

转载 三范式数据库设计和反范式的思考(转)

一个人要成长到项目经理的位置,要懂的数据库的设计原则,虽然好多东西都是理论性比较强的东西;当我们拿到一个新的需求,我们把需求从头到尾搞清楚 后,就开始画流程图—>用例图—->设计数据库—->进入开发阶段—->编码—->测试—–>项目上线,至此一个项 目就算完成。在这里我们只对设计数据库的这一块的范例进行讨论。提到范例,大家都知道第一范式,第二范式,第三范式。可是我们明白这些范式的深层含意吗

2015-11-03 09:33:01 380

原创 activeMQ初步使用

最近在使用activeMQ做一些东西,虽然不是我直接承担该模块,但是既然参与到了这个工程中,学习一点只是还是不错的。自己搭建了一个环境,整体上不是比较难,但是中间的一些坑,拿出来说说。(不是太深入,欢迎大神指正)首先到官网上现在相关的包,http://activemq.apache.org/download.html 剩下的就是需要你的电脑有JAVA环境,在bin目录下(一下提到目录,默认

2015-09-13 11:27:41 567 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除