博客园 - 进击的阿晨
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=21744
2023-01-04T03:09:52Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
feed.cnblogs.com
https://www.cnblogs.com/gcdd1993/p/14675242.html
算法很美(蓝桥) | 位运算的奇技淫巧 - 进击的阿晨
前言 在学习算法很美课程的时候,学习到了一些位运算的奇技淫巧,收录在此 判断奇偶数 判断奇数1 & x == 1 System.out.println((1991 & 1) == 1); 判断偶数1 & x == 0 System.out.println((1990 & 1) == 0); 获取二进
2021-04-18T16:28:00Z
2021-04-18T16:28:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】前言 在学习算法很美课程的时候,学习到了一些位运算的奇技淫巧,收录在此 判断奇偶数 判断奇数1 & x == 1 System.out.println((1991 & 1) == 1); 判断偶数1 & x == 0 System.out.println((1990 & 1) == 0); 获取二进 <a href="https://www.cnblogs.com/gcdd1993/p/14675242.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292455.html
使用Tesseract-Ocr识别数字 - 进击的阿晨
前言 Tesseract-Ocr是我在编写爬虫项目中,用来识别图片(不是验证码)的本地解决方案(因为客户不想使用API识别,太贵),识别率目前达到了100%,可以说是相当了得,当然了,这取决于使用的traineddata。 简介 Tesseract最初是在1985年至1994年间在Hewlett-P
2021-04-18T15:51:00Z
2021-04-18T15:51:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】前言 Tesseract-Ocr是我在编写爬虫项目中,用来识别图片(不是验证码)的本地解决方案(因为客户不想使用API识别,太贵),识别率目前达到了100%,可以说是相当了得,当然了,这取决于使用的traineddata。 简介 Tesseract最初是在1985年至1994年间在Hewlett-P <a href="https://www.cnblogs.com/gcdd1993/p/12292455.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292443.html
理解Nginx负载均衡 - 进击的阿晨
准备 服务器 搭建三台用于测试的虚拟机 名称 IP 服务 node01 192.168.198.131 Nginx、模拟业务(8080) node02 192.168.198.130 模拟业务(8080) node03 192.168.198.132 模拟业务(8080) 修改hostname和ho
2021-04-18T15:47:00Z
2021-04-18T15:47:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】准备 服务器 搭建三台用于测试的虚拟机 名称 IP 服务 node01 192.168.198.131 Nginx、模拟业务(8080) node02 192.168.198.130 模拟业务(8080) node03 192.168.198.132 模拟业务(8080) 修改hostname和ho <a href="https://www.cnblogs.com/gcdd1993/p/12292443.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292472.html
消息队列(二)RabbitMQ - 进击的阿晨
在Ubuntu上安装RabbitMQ 系统初始化 $ sudo apt update $ sudo apt dist-upgrade $ sudo apt autoremove $ sudo apt clean $ echo 127.0.0.1 mq > /etc/hosts $ echo rabb
2021-04-18T15:46:00Z
2021-04-18T15:46:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】在Ubuntu上安装RabbitMQ 系统初始化 $ sudo apt update $ sudo apt dist-upgrade $ sudo apt autoremove $ sudo apt clean $ echo 127.0.0.1 mq > /etc/hosts $ echo rabb <a href="https://www.cnblogs.com/gcdd1993/p/12292472.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/14675154.html
算法很美(蓝桥) | 1.2 唯一成对的数 - 进击的阿晨
1.2 如何找到数组中唯一成对的那个数 题目 1-1000这1000个数放在含有1001个元素的数组中,只有唯一的一个元素值重复,其他均只出现一次。每个数组元素只能访问一次,设计一个算法,将它找出来;不用辅助存储空间,能否设计一个算法实现? 标签 位运算 异或 思路 异或运算可以消除重复的数,例如
2021-04-18T15:45:00Z
2021-04-18T15:45:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】1.2 如何找到数组中唯一成对的那个数 题目 1-1000这1000个数放在含有1001个元素的数组中,只有唯一的一个元素值重复,其他均只出现一次。每个数组元素只能访问一次,设计一个算法,将它找出来;不用辅助存储空间,能否设计一个算法实现? 标签 位运算 异或 思路 异或运算可以消除重复的数,例如 <a href="https://www.cnblogs.com/gcdd1993/p/14675154.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/14673172.html
在Ubuntu上安装Docker - 进击的阿晨
安装Docker 国内方式 国内的网络环境众所周知,所以推荐使用镜像站进行安装 sudo apt-get update && sudo apt-get -y install apt-transport-https ca-certificates curl gnupg-agent software-p
2021-04-18T04:20:00Z
2021-04-18T04:20:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】安装Docker 国内方式 国内的网络环境众所周知,所以推荐使用镜像站进行安装 sudo apt-get update && sudo apt-get -y install apt-transport-https ca-certificates curl gnupg-agent software-p <a href="https://www.cnblogs.com/gcdd1993/p/14673172.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/14667992.html
在Dubbo中使用Kryo序列化协议 - 进击的阿晨
Kryo是什么? Kryo是用于Java的快速高效的二进制对象图序列化框架。 该项目的目标是高速,小尺寸和易于使用的API。不管是将对象持久保存到文件、数据库还是通过网络传输时,都可以尝试Kryo。 Kryo还可以执行自动的深浅复制/克隆。这是从对象到对象的直接复制,而不是从对象到字节的复制。 具体
2021-04-16T09:25:00Z
2021-04-16T09:25:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】Kryo是什么? Kryo是用于Java的快速高效的二进制对象图序列化框架。 该项目的目标是高速,小尺寸和易于使用的API。不管是将对象持久保存到文件、数据库还是通过网络传输时,都可以尝试Kryo。 Kryo还可以执行自动的深浅复制/克隆。这是从对象到对象的直接复制,而不是从对象到字节的复制。 具体 <a href="https://www.cnblogs.com/gcdd1993/p/14667992.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292469.html
消息队列(一)简介 - 进击的阿晨
消息队列(MQ)概述 消息队列(Message Queue),是分布式系统中重要的组件,其通用的使用场景可以简单地描述为: 当不需要立即获得结果,但是并发量又需要进行控制的时候,差不多就是需要使用消息队列的时候。 消息队列主要解决了应用耦合、异步处理、流量削锋等问题。 当前使用较多的消息队列有Rab
2020-02-10T12:10:00Z
2020-02-10T12:10:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】消息队列(MQ)概述 消息队列(Message Queue),是分布式系统中重要的组件,其通用的使用场景可以简单地描述为: 当不需要立即获得结果,但是并发量又需要进行控制的时候,差不多就是需要使用消息队列的时候。 消息队列主要解决了应用耦合、异步处理、流量削锋等问题。 当前使用较多的消息队列有Rab <a href="https://www.cnblogs.com/gcdd1993/p/12292469.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292478.html
消息队列(三)Apache ActiveMQ - 进击的阿晨
在Ubuntu上安装ActiveMQ 系统初始化 搭建activemq服务 监控 浏览器打开http://localhost:8161/admin/,输入admin,admin 至此,ActiveMQ搭建完成。 理解JMS( Java Message Service) Java消息服务指的是两个应用
2020-02-10T12:09:00Z
2020-02-10T12:09:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】在Ubuntu上安装ActiveMQ 系统初始化 搭建activemq服务 监控 浏览器打开http://localhost:8161/admin/,输入admin,admin 至此,ActiveMQ搭建完成。 理解JMS( Java Message Service) Java消息服务指的是两个应用 <a href="https://www.cnblogs.com/gcdd1993/p/12292478.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292463.html
运维笔记(部署篇) - 进击的阿晨
前言 针对 ,汇总常用服务的搭建指南。 系统初始化 新买的ECS需要执行系统初始化 Postgresql 安装Postgresql 修改配置文件 修改默认用户Postgres的密码 搭建集群(可选) | 主机 | ip | | : : | : : | | Master节点 | 10.10.10.10
2020-02-10T12:07:00Z
2020-02-10T12:07:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】前言 针对 ,汇总常用服务的搭建指南。 系统初始化 新买的ECS需要执行系统初始化 Postgresql 安装Postgresql 修改配置文件 修改默认用户Postgres的密码 搭建集群(可选) | 主机 | ip | | : : | : : | | Master节点 | 10.10.10.10 <a href="https://www.cnblogs.com/gcdd1993/p/12292463.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292459.html
简单IOC容器实现 - 进击的阿晨
前言 本文是为了学习 容器的执行过程而写,不能完全代表 容器,只是简单实现了容器的 依赖注入 和 控制反转 功能,无法用于生产,只能说对理解Spring容器能够起到一定的作用。 开始 创建项目 创建Gradle项目,并修改 创建 是IOC中用于存放bean实例以及获取bean的核心接口,它的核心方法
2020-02-10T12:06:00Z
2020-02-10T12:06:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】前言 本文是为了学习 容器的执行过程而写,不能完全代表 容器,只是简单实现了容器的 依赖注入 和 控制反转 功能,无法用于生产,只能说对理解Spring容器能够起到一定的作用。 开始 创建项目 创建Gradle项目,并修改 创建 是IOC中用于存放bean实例以及获取bean的核心接口,它的核心方法 <a href="https://www.cnblogs.com/gcdd1993/p/12292459.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292450.html
理解一致性Hash算法 - 进击的阿晨
简介 一致性哈希算法在1997年由麻省理工学院的Karger等人在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简单哈希算法带来的问题,使得DHT可以在P2P环境中真正得到应用。 现在一致性hash算法在
2020-02-10T12:05:00Z
2020-02-10T12:05:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】简介 一致性哈希算法在1997年由麻省理工学院的Karger等人在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简单哈希算法带来的问题,使得DHT可以在P2P环境中真正得到应用。 现在一致性hash算法在 <a href="https://www.cnblogs.com/gcdd1993/p/12292450.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292417.html
记一次Postgres CPU爆满故障 - 进击的阿晨
问题描述 公司项目测试环境调用某些接口的时候,服务器立即崩溃,并一定时间内无法提供服务。 问题排查 服务器配置不够 第一反应是服务器需要升配啦,花钱解决一切!毕竟测试服务器配置确实不高,2CPU + 4Gib,能干啥?不过问题是今天突然发生的,而且说崩就崩。凭着严谨的态度,还是要刨根问底地找下问题。
2020-02-10T12:03:00Z
2020-02-10T12:03:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】问题描述 公司项目测试环境调用某些接口的时候,服务器立即崩溃,并一定时间内无法提供服务。 问题排查 服务器配置不够 第一反应是服务器需要升配啦,花钱解决一切!毕竟测试服务器配置确实不高,2CPU + 4Gib,能干啥?不过问题是今天突然发生的,而且说崩就崩。凭着严谨的态度,还是要刨根问底地找下问题。 <a href="https://www.cnblogs.com/gcdd1993/p/12292417.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292434.html
BigDecimal精确计算工具类 - 进击的阿晨
前言 在实际开发中,遇到例如货币,统计等商业计算的时候,一般需要采用java.math.BigDecimal类来进行精确计算。而这类操作通常都是可预知的,也就是通用的。所以,写了个工具类来方便以后的工作。 这是仓库地址: "仓库地址" BigDecimal的构建 一般而言,我们主要从int,long
2020-02-10T12:02:00Z
2020-02-10T12:02:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】前言 在实际开发中,遇到例如货币,统计等商业计算的时候,一般需要采用java.math.BigDecimal类来进行精确计算。而这类操作通常都是可预知的,也就是通用的。所以,写了个工具类来方便以后的工作。 这是仓库地址: "仓库地址" BigDecimal的构建 一般而言,我们主要从int,long <a href="https://www.cnblogs.com/gcdd1993/p/12292434.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292429.html
解决Spring Security自定义filter重复执行问题 - 进击的阿晨
今天做项目的时候,发现每次拦截器日志都会打两遍,很纳闷,怀疑是Filter被执行了两遍。结果debug之后发现还真是!记录一下这个神奇的BUG! 问题描述 项目中使用的是Spring security作为权限框架,然后做了一个 作为拦截器拦截请求,校验Token,但是每次请求都会打两遍日志。下面是精
2020-02-10T12:00:00Z
2020-02-10T12:00:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】今天做项目的时候,发现每次拦截器日志都会打两遍,很纳闷,怀疑是Filter被执行了两遍。结果debug之后发现还真是!记录一下这个神奇的BUG! 问题描述 项目中使用的是Spring security作为权限框架,然后做了一个 作为拦截器拦截请求,校验Token,但是每次请求都会打两遍日志。下面是精 <a href="https://www.cnblogs.com/gcdd1993/p/12292429.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292422.html
记一次生产事故--磁盘被占满 - 进击的阿晨
写在前面 今天,跑在阿里云ECS上的生产环境,突然间访问异常,接口各种报错,无奈公司没有专业的运维人员,只能硬着头皮解决一下。 问题排查 先从表面看起,数据库首先报错 直观上看,设备没有可用空间,也就是磁盘满了。 进入服务器后台,执行 发现确实磁盘满了,而且满的很彻底。系统盘占用100%,估计什么服
2020-02-10T11:58:00Z
2020-02-10T11:58:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】写在前面 今天,跑在阿里云ECS上的生产环境,突然间访问异常,接口各种报错,无奈公司没有专业的运维人员,只能硬着头皮解决一下。 问题排查 先从表面看起,数据库首先报错 直观上看,设备没有可用空间,也就是磁盘满了。 进入服务器后台,执行 发现确实磁盘满了,而且满的很彻底。系统盘占用100%,估计什么服 <a href="https://www.cnblogs.com/gcdd1993/p/12292422.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292415.html
后端跨域的N种方法 - 进击的阿晨
简单来说,CORS是一种访问机制,英文全称是Cross Origin Resource Sharing,即我们常说的跨域资源共享,通过在服务器端设置响应头,把发起跨域的原始域名添加到Access Control Allow Origin 即可。 返回新的CorsFilter(全局跨域) 在任意配置类
2020-02-10T11:56:00Z
2020-02-10T11:56:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】简单来说,CORS是一种访问机制,英文全称是Cross Origin Resource Sharing,即我们常说的跨域资源共享,通过在服务器端设置响应头,把发起跨域的原始域名添加到Access Control Allow Origin 即可。 返回新的CorsFilter(全局跨域) 在任意配置类 <a href="https://www.cnblogs.com/gcdd1993/p/12292415.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292411.html
分布式任务调度XXL-JOB初体验 - 进击的阿晨
简介 "XXL JOB" 是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 官方文档很完善,不多赘述。本文主要是搭建 和简单使用的记录。 搭建xxl job admin管理端 运行环境 Ubuntu 16.04 6
2020-02-10T11:54:00Z
2020-02-10T11:54:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】简介 "XXL JOB" 是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 官方文档很完善,不多赘述。本文主要是搭建 和简单使用的记录。 搭建xxl job admin管理端 运行环境 Ubuntu 16.04 6 <a href="https://www.cnblogs.com/gcdd1993/p/12292411.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292404.html
发布开源项目到Jcenter - 进击的阿晨
前言 为了将 "阿里云短信开箱即用" 发布到Jcenter仓库,前前后后花费了1天半的时间,把端午节都搭进去了。终于今天收到了Jcenter的消息,自己发布的包被添加到了Jcenter仓库,也算给开源社区做了次小贡献😁😁😁。 现在记录下踩过的坑。 注册Jcenter账号 要注意的地方,Jcen
2020-02-10T11:53:00Z
2020-02-10T11:53:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】前言 为了将 "阿里云短信开箱即用" 发布到Jcenter仓库,前前后后花费了1天半的时间,把端午节都搭进去了。终于今天收到了Jcenter的消息,自己发布的包被添加到了Jcenter仓库,也算给开源社区做了次小贡献😁😁😁。 现在记录下踩过的坑。 注册Jcenter账号 要注意的地方,Jcen <a href="https://www.cnblogs.com/gcdd1993/p/12292404.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/gcdd1993/p/12292385.html
Ubuntu切换为阿里镜像源 - 进击的阿晨
前言 在VM虚拟机搭建Ubuntu系统学习或者测试时,常常要使用 安装测试,但是由于系统自带的下载源在国外服务器上,下载速度慢的无法忍受。所以我们需要切换为国内镜像源,能显著加快安装包下载速度。 步骤 国内镜像源 | 名称 | 地址 | | | | | 阿里镜像源 | http://mirrors.
2020-02-10T11:51:00Z
2020-02-10T11:51:00Z
进击的阿晨
https://www.cnblogs.com/gcdd1993/
【摘要】前言 在VM虚拟机搭建Ubuntu系统学习或者测试时,常常要使用 安装测试,但是由于系统自带的下载源在国外服务器上,下载速度慢的无法忍受。所以我们需要切换为国内镜像源,能显著加快安装包下载速度。 步骤 国内镜像源 | 名称 | 地址 | | | | | 阿里镜像源 | http://mirrors. <a href="https://www.cnblogs.com/gcdd1993/p/12292385.html" target="_blank">阅读全文</a>