自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (4)
  • 问答 (2)
  • 收藏
  • 关注

原创 Java整体技术体系——核心技术知识体系图

核心模块:具体细节:【设计模式、框架】

2020-12-18 14:54:34 1443 2

原创 分布式高并发设计案例 之秒杀系统设计

秒杀系统设计 【第一版设计】 1、前端页层面:防重复提交控制 1)页面秒杀按钮置灰 2)页面防重复提交 2、应用层面 1)令牌机制,通过Redis分配令牌,只有拿到令牌的用户才可去访问数据库 2)同一个用户需设置时间间隔,过时间间隔才可再次提交 3、DB层面 1)防止超卖:数据库乐观锁 【第二版设计】 0、【过滤合法请求】对请求参数做安全校验和接口签名验证 1、【请求分发过滤】请求后端接口前->引入Nginx做负载均衡,分..

2020-12-23 00:04:42 3039 7

原创 Java必备技能之实战篇—Nginx各种应用场景配置(可以直接复制修改使用)

nginx正向代理server { listen 8090; location / { resolver 218.85.157.99 218.85.152.99; resolver_timeout 30s; proxy_pass http://$host$request_uri; } access_log /data/httplogs/proxy-$host-aceess.log; }测试:http://www.ttlsa.com:8090resolver

2020-12-22 01:05:38 550

原创 软件开发本地环境工具集——常用工具

2020-12-17 01:43:53 496

原创 数据库系列——使用Canal Admin实现MySQL增量数据同步运维管理

基于上一篇文章:https://blog.csdn.net/Coder_Boy_/article/details/111055381这里主要基于Canal Admin搭建一个MySQL增量数据管理运维web平台简介Canal Admin是为canal提供整体配置管理、节点运维等面向运维的功能,提供相对友好的WebUI操作界面,方便更多用户快速和安全的操作实际安装使用中会遇到一些坑,所以作为踩坑笔记,介绍本地安装使用情况。canal-admin需依赖canal,且canal版本..

2020-12-12 22:41:03 1050

原创 数据库系列——基于Canal实现MySQL增量数据同步

环境准备:1、redis (默认端口6379)2、zookeeper (默认端口2181)3、Kafka (默认端口9092)4、Canal (默认端口 11111)5、MySQL (默认端口 3306实际项目我们是配置MQ模式,配合RocketMQ或者Kafka,canal会把数据发送到MQ的topic中,然后通过消息队列的消费者进行消费处理。这篇文章演示部署Canal,配合使用Kafka,同步数据到Redis通过架构图,我们很清晰就知道要用到的组件:MySQL、C

2020-12-12 02:34:07 4189 6

原创 数据库系列——基于MySQL主从同步实现读写分离

前提:搭建一主多从数据库集群参考上一篇文章https://blog.csdn.net/Coder_Boy_/article/details/110950347本文Github代码地址:https://github.com/cheriduk/spring-boot-integration-template本文核心:代码层面进行读写分离代码环境是springboot+mybatis+druib连接池。想要读写分离就需要配置多个数据源,在进行写操作是选择写的数据源,读操作时选择读的数据源...

2020-12-11 15:54:49 410

原创 数据库系列——MySQL主从复制配置

1、背景一个项目中数据库最基础同时也是最主流的是单机数据库,读写都在一个库中。当用户逐渐增多,单机数据库无法满足性能要求时,就会进行读写分离改造(适用于读多写少),写操作一个库,读操作多个库,通常会做一个数据库集群,开启主从备份,一主多从,以提高读取性能。当用户更多读写分离也无法满足时,就需要分布式数据库了(可能以后会学习怎么弄)。正常情况下读写分离的实现,首先要做一个一主多从的数据库集群,同时还需要进行数据同步。这一篇记录如何用mysql搭建一个一主多次的配置,下一篇记录代码层面如何实现读写分离。

2020-12-10 12:30:49 2391 4

原创 数据库系列——Mysql主从复制作用和工作原理详解

简述主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库,主数据库一般是准实时的业务数据库事务处理库,从库做查询库。一、什么是主从复制主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库,主数据库一般是准实时的业务数据库。在最常用的mysql数据库中,支持单项、异步赋值。在赋值过程中,一个服务器充当主服务器,而另外一台服务器充当从服务器;此时主服务器会将更新信息写入到一个特定的二进制文件中。并会维护文件的一个索引用来跟踪日志循环。这个日志可以记录并发送到..

2020-12-09 19:17:10 1733

原创 数据库系列—MySQL 的二进制日志恢复数据库数据

1、开启 binlog 功能及基本操作要使用 MySQL 的 binlog 日志功能,首先要在 MySQL 的配置文件中开启该功能,操作很简单。找到 MySQL 的配置文件,在文件中添加一行 log_bin = mysql-bin 即可。其实在我安装的各种 MySQL 环境中,该功能通常都是默认开启的。开启 binlog 功能后,在 MySQL 的数据库目录下就会有诸如 mysql-bin.000001、mysql-bin.000002等文件,这就是 MySQL 的二进制日志文件。每当 MySQL

2020-12-08 16:12:09 1775 1

原创 任务调度处理系列之 Spring源码分析-【SchedulingConfigurer实现原理】

可能的场景在做业务平台的时候我们经常会遇到,某些跟时间打交道的需要修改状态,比如说在时间区间之前,属于未生效状态,区间之内属于有效期,区间之后,属于过期,或者需要每天 每周 每月,甚至是年为单位的做一些固定的操作。通过定时任务可以通过开启定时任务来完成这些需求。我做合同管理模块,合同有未生效,已生效,已过期,三个状态,不可能每次用户登录的时候去判断这个状态,然后修改,这样做会在登录的逻辑里边耦合了合同业务逻辑,同时消耗了登录时间,不太可取。还有一些需要报表统计类的批量处理任务,任务量大,类别也.

2020-12-05 04:27:19 3167

原创 Redis数据类型的应用场景-基本使用

先说明一下一些名词:名词解释:

2020-12-04 18:30:36 231

翻译 Redis数据类型介绍——官网解读

官网地址:https://redis.io/topics/data-types-introRedis常用数据类型介绍An introduction to Redis data types and abstractionsRedis 数据类型和抽象的介绍Redis is not aplainkey-value store, it is actually adata structures server, supporting different kinds of values. Wha...

2020-12-04 17:39:15 862

原创 架构设计原型草图汇总-【梳理知识碎片】定期增加草图都在这里

草图编号: AC_0001草图编号:MC_0001

2020-12-03 17:13:28 449

原创 Java必备技能之源码篇(Nginx源码研究之nginx限流模块)

概述:高并发系统有三把利器:缓存、降级和限流;限流的目的是通过对并发访问/请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务(定向到错误页)、排队等待(秒杀)、降级(返回兜底数据或默认数据);高并发系统常见的限流有:限制总并发数(数据库连接池)、限制瞬时并发数(如nginx的limit_conn模块,用来限制瞬时并发连接数)、限制时间窗口内的平均速率(nginx的limit_req模块,用来限制每秒的平均速率);另外还可以根据网络连接数、网络流量、CPU或内存负载等来限流。业界主

2020-12-02 14:39:14 470

翻译 Java常用中间件之 NGINX实现限流功能的官方文档说明

官方文档:http://nginx.org/en/docs/http/ngx_http_limit_req_module.htmlModule ngx_http_limit_req_module Example Configuration 示例配置 指令 Directives limit_req limit_req_dry_run limit_req_log_level limit_req_stat...

2020-12-02 02:59:04 398

原创 Java必备技能之实战篇 (使用nginx实现分布式限流)

使用场景:一般对外暴露的系统,在促销或者黑客攻击时会涌来大量的请求,为了保护系统不被瞬间到来的高并发流量给打垮, 就需要限流.1.简介一般对外暴露的系统,在促销或者黑客攻击时会涌来大量的请求,为了保护系统不被瞬间到来的高并发流量给打垮, 就需要限流本文主要阐述如何用nginx 来实现限流. Hystrix 也是可以的。2.编码-首先部署一个对外暴露接口的程序我这里部署的是一个spring boot 项目 里面暴露了如下接口, 很简单暴露了一个 get...

2020-12-02 00:03:54 431

原创 Java必备技能之环境搭建篇 (linux ab压力测试Nginx)(实战)

1测试普通限流1)配置nginx限流速率为1qps,针对客户端IP地址限流(返回状态码默认为503),如下:http{ limit_req_zone $binary_remote_addr zone=test:10m rate=1r/s; server { listen 80; server_name localhost; location / { limit_req zone=test; root html; index index.html index.

2020-12-01 13:11:48 381

原创 Java必备技能之环境搭建篇 (linux ab压力测试)

linux ab压力测试1、安装yum -y install httpd-tools2、检测版本ab -V3、常用 ab压测 Nginx默认页做为演示:[root@localhost usr]# ab -c 100 -n 10000 http://127.0.0.1/index.html#同时处理1000个请求并运行10次index.html#-c100表示并发用户数为100#-n10000表示请求总数为10000 #简单使用说明 ./ab -c 10.

2020-12-01 11:12:00 507

K8S系列文章之 一键部署K8S环境

K8S自动部署资源包

2023-08-05

大数据系列博客——环境搭建安装包

简单来说,从大数据的生命周期来看,无外乎四个方面:大数据采集、大数据预处理、大数据存储、大数据分析,共同组成了大数据生命周期里最核心的技术,在学前大数据之前,一些必要的环境需要先搭建好才能高效学习这些技术。

2020-11-03

23种设计模式 -设计模式图解.7z

23种设计模式的特点定义、优缺点、使用场景,源码中如何使用,资料思维导图。总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

2020-09-11

中国电信运营支持系统-网络版NetCtoss素材

中国电信运营支持系统-网络版所需素材 1.images 2.styles

2018-09-08

对应博客中oracle学习的基础部分资料

此资料对应我的博客中关于oracle基础sql学习部分的资料,提供给大家学习参考用。

2018-06-03

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

TA关注的人

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