自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

通往精英的成长之路

张晗—致力成为优秀架构师

原创 WordPress网站访问慢解决方案(超详细图文教程)

前言 之前自己搭建一个WordPress个人网站:https://zhanghan.xin;最近发现访问比较慢,于是乎进行了排查,下面是优化的方案。 优化前: 加载耗时:21秒+ 优化后: 加载耗时:250毫秒 优化后访问速度提升84倍+ 解决方案流程图 流程图 问题&解...

2020-10-14 00:51:14 1740 10

原创 从零学ELK系列(十一):SpringBoot项目接入ELK超级版(超详细图文教程)

前言 之前在《从零学ELK系列(十):SpringBoot项目接入ELK升级版(超详细图文教程)》中演示了SpringBoot项目接入ELK请求记录及优化,本次针对于未知异常通过拦截进行记录; 优化前: 系统发生异常没有记录异常信息 优化后: 记录本次请求的异常信息 目录 从零学EL...

2020-09-19 23:21:55 1897 7

原创 阿里云个人网站免费绑定SSL证书(超详细图文教程)

前言 一年前搭建了个人网站,由于个人小程序绑定必须需要绑定HTTPS,于是乎绑定了SSL证书,最近阿里云一直在提醒SSL证书一年到期,提示续费;SSL证书续费几千,于是乎查找方案,阿里云提供个人免费SSL证书;一番操作后绑定成功;在此记录一下详细的步骤 阿里云绑定SSL证书整体流程 整体流程...

2020-09-09 18:34:55 510 0

原创 从零学ELK系列(十):SpringBoot项目接入ELK升级版(超详细图文教程)

从零学ELK系列(十):SpringBoot项目接入ELK升级版(超详细图文教程) 前言 之前在《从零学ELK系列(八):SpringBoot项目接入ELK(超详细图文教程)》中演示了SpringBoot项目接入ELK,后来项目中对这部分进行了优化,之前博文中也有读者问到,将优化整理成博文和大家...

2020-09-08 09:50:13 1863 4

原创 SpringBoot实战(十八):签到奖励实现方案

前言 最近在做社交业务,用户进入APP后有签到功能,签到成功后获取相应的奖励: 项目状况:前期尝试业务阶段; 特点: 快速实现(不需要做太重,满足初期推广运营即可) 快速投入市场去运营 用户签到: 用户在每次启动时查询签到记录(规则:连续7日签到从0开始,签到过程中有断签从0开始) 如果今...

2020-08-30 15:01:29 4085 1

原创 SpringBoot实战(十七):Redis Pipeline 轻松实现百倍性能提升(续)

Spring Boot实战:Redis批量操作轻松实现百倍性能提升 前言 最近在做业务的时候,需要批量操作Redis,虽然Redis的速度非常快,但是for循环操作Redis还是会有问题,在之前的基础上又对批量操作Redis进行了汇总; 批量操作Redis: 批量Set 批量Get 批量Set...

2020-08-30 14:20:09 2129 4

原创 Spring Boot实战分页查询附近的人: Redis+GeoHash+Lua
原力计划

前言 最近在做社交的业务,用户进入首页后需要查询附近的人; 项目状况:前期尝试业务阶段; 特点: 快速实现(不需要做太重,满足初期推广运营即可) 快速投入市场去运营 收集用户的经纬度: 用户在每次启动时将当前的地理位置(经度,维度)上报给后台 提到附近的人,脑海中首先浮现特点: 需要记...

2020-08-09 18:34:58 631 2

原创 Spring Boot实战解决高并发数据入库: Redis 缓存+MySQL 批量入库
原力计划

前言 最近在做阅读类的业务,需要记录用户的PV,UV; 项目状况:前期尝试业务阶段; 特点: 快速实现(不需要做太重,满足初期推广运营即可) 快速投入市场去运营 收集用户的原始数据,三要素: 谁 在什么时间 阅读哪篇文章 提到PV,UV脑海中首先浮现特点: 需要考虑性能(每个客户每打开...

2020-08-08 14:14:39 1759 3

原创 根据某个特定字符删除一行

前言 最近接了几个新项目的需求,为了快速开发,我们的策略是:基于原来的一套维定项目代码及数据库基础,去开发新的项目,一般步骤如下: 在原来的代码git基础上拉出一个新的git项目地址 修改代码的项目名称,代码目录结构 将原来项目对应的生产库导出表结构形成脚本 建立新项目的数据库 将原来表结构脚...

2020-07-12 23:58:51 463 2

原创 别让算法和数据结构拖你职业生涯的后腿

IT行业一直流传着一句名言,“程序设计=算法+数据结构”,这是瑞士计算机科学家Niklaus Wirth于1976年出版的一本书的书名,那么数据结构与算法在程序开发中的重要性也就不言而喻了。还记得刚上大学开始学习数据结构的时候,偶然听到一位编程大佬说数据结构其实是计算机专业基础课里最难的一门,我内...

2020-06-11 17:14:10 2136 0

原创 Git撤销之世上真有后悔药
原力计划

前言 大家在代码提交的时候有时会遇到过如下情况: 错误将一些Demo代码误提交 分支合并错误 提交有冲突代码 … 这时需要有颗后悔药来拯救; 世上真的有后悔药吗? 下面我们一起来吃次后悔药 撤销之来吃颗后悔药 前置说明 演示所用的Git服务端:码云 目标:在reset分支上撤销...

2020-03-03 16:30:17 8082 22

原创 从零学ELK系列(九):Nginx接入ELK(超详细图文教程)

【前言】 在前几篇博文中将ELK+Filebeat收集SpringBoot项目日志搭建完毕,本次我们将展示如何将Nginx接入我们搭建的日志系统,把步骤记录下来,一是方便自己以后安装,二是可以为大家做参考共享。 【一句总结一张架构图】 一、一句话总结学完本篇博文,你将学到什么...

2020-01-06 15:37:59 1778 0

原创 SCPPO(十):网站发布中的问题锦集—手动发布网站

【前言】 现在做的项目是个维护性的项目,我们是第三期的末尾,最近正忙着验收。当然在验收前会有些功能需要修改,另外也会有新的需求需要实现;再加之最近有企业核对数据等等,所以网站的发布变成主要的工作之一。当然自己也有幸被组长多安排其中一个网站发布的职责(本项目中共有两个网站);所以有了今天的这...

2019-12-30 18:04:41 19543 19

原创 从零学ELK系列(二):VMware安装Centos(超详细图文教程)

【前言】 最近在研究ELK日志收集架构,想搭一套环境收集自己项目的日志;需要Linux环境支持,自己在阿里云的服务器由于部署了自己的自有博客系统(https://zhanghan.xin),资源不充足;没有环境创造环境也要研究;于是乎想到自己在五年前玩的在Windows中通过虚拟机运行L...

2019-12-29 09:55:34 1276 1

原创 从零学ELK系列(三):Centos安装Docker(超详细图文教程)

【前言】 为了更加真实的模拟生产部署环境,不仅需要Linux环境支持,而且ELK需要在不同的机器上部署;再重新装几台虚拟机?本地资源不支持,于是乎想到了Docker;今天在上次的Linux系统(《VMware安装Centos(超详细图文教程)》)中安装了Docker环境把步骤记录下来,一...

2019-12-29 09:55:07 1092 0

原创 从零学ELK系列(四):Docker安装Elasticsearch(超详细图文教程)

【前言】 为了更加真实的模拟生产部署环境,在上次的Docker环境中(《Centos安装Docker(超详细图文教程)》)中安装了Elasticsearch把步骤记录下来,一是方便自己以后安装,二是可以为大家做参考共享。 【一句总结一张架构图】 一、一句话总结学完本篇博文,你...

2019-12-29 09:54:47 1509 2

原创 从零学ELK系列(五):Docker安装kibana(超详细图文教程)

【前言】 为了更加真实的模拟生产部署环境,在上次的Docker环境中(《Docker安装Elasticsearch(超详细图文教程)》)中安装了Elasticsearch,本次我们将安装Elasticsearch可视化组件---kibana把步骤记录下来,一是方便自己以后安装,二是可以为...

2019-12-29 09:54:23 1876 3

原创 从零学ELK系列(六):Docker安装Logstash(超详细图文教程)

【前言】 为了更加真实的模拟生产部署环境,在上次的Docker环境中(《Docker安装kibana(超详细图文教程)》)中安装了kibana,本次我们将安装日志清洗组件---logstash把步骤记录下来,一是方便自己以后安装,二是可以为大家做参考共享。 【一句总结一张架构图】 ...

2019-12-29 09:53:57 3518 3

原创 从零学ELK系列(七):Centos安装Filebeat(超详细图文教程)

【前言】 为了更加真实的模拟生产部署环境,在上次的Docker环境中(《Docker安装Logstash(超详细图文教程)》)中安装了Logstash,本次我们将安装日志收集组件---Filebeat把步骤记录下来,一是方便自己以后安装,二是可以为大家做参考共享。 【一句总结一张架构图...

2019-12-29 09:53:28 2220 4

原创 从零学ELK系列(一):为什么要跟我学从零学ELK系列

【前言】 网上写ELK日志收集系统,项目集成ELK,Docker,本地安装虚拟机这些孤立技术点文章汗牛充栋;但是很少有文章能即生动又能结合场景的从零一步一步搭建一套生产级日志收集系统并将生产项目集成日志收集系统的方案; 机缘巧合,本人负责研究公司ELK日志收集系统,并成功将其引...

2019-12-29 09:52:48 3550 5

原创 从零学ELK系列(八):SpringBoot项目接入ELK(超详细图文教程)

【前言】 在前几篇博文中将ELK+Filebeat日志收集系统搭建完毕,本次我们将展示如何将SpringBoot接入我们搭建的日志系统,把步骤记录下来,一是方便自己以后安装,二是可以为大家做参考共享。 【一句总结一张架构图】 一、一句话总结学完本篇博文,你将学到什么? ...

2019-12-28 18:42:30 3082 0

原创 Java线上排错---反编译文件

【前言】 有时候经常会遇到一些诡异的问题:明明在本地运行代码没有问题,服务器代码和本地一样,请求的参数和所连接的数据源 都一样为啥服务器上不行那? 如果在测试环境我们可以进行远程调试(参考《idea远程调试》),但是线上应该如何排查? 博主遇到很多次这种情况,最后确定都...

2019-11-23 19:00:07 441 3

原创 Redis监控利器---Redis State

【前言】 在之前的博文《Redis百万级别数据迁移》中分享我们系统为降低服务器成本,从亚马逊云迁至阿里云的一次生产迁移过程中Redis部分迁移;去年迁移Redis时数据量500w+;最近在研究如何监控Redis的性能,Redis的Key命中率如何那?皇天不负有心人,找到一款Redis监控...

2019-11-21 22:19:58 355 0

原创 SpringBoot实战(十六):集成Skywalking调用链监控系统

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 Skywalking做为生产级的调用链监控工具,不仅提供了丰富的监控系统,而且通过字节码拦截形式集成系统,对系统没有任何侵入性;最近研究一下调用链项目,在此与大家共享; 【...

2019-10-24 10:40:44 10270 1

原创 SpringBoot实战(十五):Spring Boot Admin 集成告警模块

【前言】 Spring Boot Admin做为生产级的监控工具,必然自动化告警必不可少;Spring Boot Admin可以十分简单的集成告警组件;最近研究一下集成邮件告警到项目中,在此与大家共享; 【集成告警模块】 一、集成告警模块(在此以邮件告警为...

2019-09-28 10:04:05 2405 0

原创 SpringBoot实战(十四):Spring Boot Admin 集成安全模块

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 Spring Boot Admin做为生产级的监控工具,必然不能随便让人去操作以免误操作导致线上问题,所以有必要集成Security组件;Spring Boot Admin可...

2019-09-28 09:23:15 760 0

原创 SpringBoot实战(十三):Spring Boot Admin 动态修改日志级别

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 之前关于线上输出日志一直有个困惑:如何可以动态调整的日志级别,来保证系统在正常运行时性能同时又能在出现问题时打印详细的信息来快速定位问题;最近研究一下Spring Boot ...

2019-09-24 14:53:31 2209 3

原创 SpringBoot实战(十二):集成 Spring Boot Admin 监控

【前言】 程序开发完实现相应的功能只是一个部分,如何让系统在线上运行更好创造更高的价值是另外一个部分;监控是一个生产级项目避不可少重要组成部分;最近研究一下针对SpringBoot的监控项目---Spring Boot Admin,并集成项目中,在此与大家共享; 【Sprin...

2019-09-24 13:29:56 1936 1

原创 logback 日志输出格式

【前言】 日志对一个系统的重要性不言而喻;日志通常是在排查问题时给人看,一个友好的输出样式让人看到后赏心悦目,排查效率通常也会随之提高;下面为大家共享一下通过设置logback日志输出格式,打印出令人欣喜的日志样式。 【搞一下日志格式】 一、未指定日志格...

2019-09-24 11:17:20 2237 1

原创 Required request body is missing

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 最近对代码进行统一日志处理,通过拦截器,打印请求日志,方便排查问题,通过拦截器取参数后遇到一个问题:Required request body is missing;在进行...

2019-08-07 16:07:29 3229 2

原创 BigDecimal 校验格式

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 最近收到一个需求,在管理后台对系统中的金额进行操作时,对操作的金额需要进行相关校验,如果不校验,在进行相关的计算时就可能会出问题。 【BigDecimal 校验格式】 ...

2019-07-29 21:31:32 6606 2

原创 BigDecimal 转 String

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 最近遇到一个需求,是给用户发送带钱的短信,本来自己以为挺简单,很快可以搞定,不过在实现的时候遇到一些小问题,自己辗转查和实验最终解决该问题,在此记录一下。 【BigDec...

2019-07-28 23:55:05 7368 0

原创 申请CSDN博客专家认证成功

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 今天成功通过博客专家认证,圆了自己一个梦想;感谢CSDN官方对我的博文认可,感谢老师,亲朋好友的帮助与支持;你们的肯定更是对我的激励与鞭策。 【认证过程】 一、记...

2019-07-23 23:01:03 2411 11

原创 灰度实战(六):SpringCloud灰度(2)

【前言】 在上篇博文中《灰度实战(五):SpringCloud灰度(1)》讲解了SpringCloud项目的灰度实战,其中在zuul中拦截到是灰度请求时采用重定向再次请求网关然后分发至灰度服务,在本篇将zuul针对灰度请求分发策略进行优化,由重定向优化为直接转发提高性能。 【Spring...

2019-07-06 22:20:26 772 0

原创 灰度实战(五):SpringCloud灰度(1)

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 在上四篇博文中讲解了Apollo如何动态配置,以及Apollo的对灰度发布支持;在本篇博文中为大家带来我们项目(Spring Cloud)的灰度实战。 【SpringClo...

2019-07-06 22:01:38 1159 0

原创 灰度实战(四):Apollo配置中心(4)

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 在上一篇博文《灰度实战(三):Apollo配置中心(3)》中讲解了Apollo如何动态更改程序中连接第三方中间件连接池,在本篇博文中为大家带来如何通过Apollo实现灰度配置...

2019-07-05 15:18:16 439 1

原创 灰度实战(三):Apollo配置中心(3)

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 在上一篇博文《灰度实战(二):Apollo配置中心(2)》中讲解了Apollo如何动态更改程序中通过@value配置值,在本篇博文中为大家带来如何通过Apollo动态更新程序...

2019-07-04 11:24:26 619 2

原创 灰度实战(二):Apollo配置中心(2)

【前言】 在上一篇博文《灰度实战(一):Apollo配置中心(1)》中讲解了如何搭建Apollo以及创建配置文件,在本篇博文中为大家带来程序如何通过Apollo读取配置文件,以及配置中心一大亮点---配置修改后实时推送到应用端。 【实时推送演示】 一、程序连接Apollo配置 ...

2019-07-04 11:04:23 664 0

原创 灰度实战(一):Apollo配置中心(1)

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 业务由原来一个国家扩展成多个国家,自己维护的消息平台做了些改造来支持多国家的需求;随着接入的国家越来越多,消息平台版本更新时,如果由于线上环境出问题影响的范围也越来越大;降低...

2019-07-03 21:38:54 922 0

原创 SpringBoot实战(十一):MultipartException: Could not parse multipart servlet request

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 有个在线上跑了一段时间的上传文件的程序报错,查了些资料,最终通过设置上传文件的临时路径解决此问题,在此与大家共享。 【问题解决之路】 一、报错信息 or...

2019-07-01 22:38:22 2474 0

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