logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

mysql数据如何恢复到任意时间节点?mysql数据恢复,mysql数据备份

作为互联网开发人员来说,数据安全性一直排在第一位的重中之重。mysql作为关系型数据库的一个巨头,其备份与恢复更是大家所关心的。今天就详细聊聊,mysql如何备份,以及被“删库跑路”之后如何恢复。发生删库跑路,不要慌,还是可以恢复数据的。正常来说全量备份+binlog就可以恢复所有的数据,但是数据安全性可并不止这些。“不要把所有的鸡蛋放在同一个篮子中”,无论是全量备份还是 Binlog,都不要和数

#mysql
Spring中Environment详解,一文搞透Spring运行环境Environment

通常来说,我们使用Spring上下文通过getEnvironment方法获取的Environment,都是调用的ConfigurableApplicationContext的getEnvironment方法,该方法返回一个ConfigurableEnvironment,顾名思义,是一个可以配置写入的Environment。我们发现,这里的setEnvironment,就是使用的applicatio

#spring#java#后端
python操作windows桌面实现鼠标、键盘操作,python之pyautogui库文档详解

PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,多平台支持(Windows,OS X,Linux)。PyAutoGUI可以模拟鼠标的移动、点击、拖拽,键盘按键输入、按住操作,以及鼠标+键盘的热键同时按住等操作,可以说手能动的都可以。PyAutoGUI支持Python 2.x和Python 3.x。

#windows#python
分布式事务详解【分布式事务的几种解决方案】彻底搞懂分布式事务

什么是事务?举个生活中的例子:你去小卖铺买东西,“一手交钱,一手交货”就是一个事务的例子,交钱和交货必须全部成功,事务才算成功,任一个活动失败,事务将撤销所有已成功的活动。明白上述例子,再来看事务的定义:事务可以看做是一次大的活动,它由不同的小活动组成,这些活动要么全部成功,要么全部失败。2PC即两阶段提交协议,是将整个事务流程分为两个阶段,准备阶段(Prepare phase)、提交阶段(com

文章图片
#分布式#java#数据库
MyBatis源码分析(四)插件拦截器的原理及使用

一般开源框架都会提供扩展点,让开发者自行扩展,从而完成逻辑的增强。基于插件机制可以实现了很多有用的功能,比如说分页,字段加密,监控等功能,这种通用的功能,就如同AOP一样,横切在数据操作上。而通过Mybatis插件可以实现对框架的扩展,来实现自定义功能,并且对于用户是无感知的。Mybatis插件本质上来说就是一个拦截器,它体现了 JDK动态代理和责任链设计模式的综合运用。

文章图片
#mybatis#java
Spring Cloud Ribbon源码解析,Ribbon为什么可以实现负载均衡,为什么可以用服务名调用

Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端 负载均衡的工具。简单的说,Ribbon是Neflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简

文章图片
#spring cloud#ribbon#负载均衡
docker-compose容器编排使用详解+示例

Docker-Compose是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。Compose 是 Docker 公司推出的一个工具软件,可以管理多个 Docker 容器组成一个应用。你需要定义一个 YAML 格式的配置文件docker-compose.yml,写好多个容器之间的调用关系。然后,只要一个命令,就能同时启动/关闭这些容器。

文章图片
#docker
学习日志框架之——搞懂logback

Logback是由log4j创始人设计的又一个开源日志组件。Logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个改良版本。此外logback-classic完整实现SLF4J API。使你可以很方便地更换成其它日志系统如log4j或

文章图片
#学习#logback#log4j
Java内存缓存神器:Caffeine(咖啡因)

Caffeine是一个基于Java8开发的提供了近乎最佳命中率的高性能的缓存库。缓存和ConcurrentMap有点相似,但还是有所区别。最根本的区别是ConcurrentMap将会持有所有加入到缓存当中的元素,直到它们被从缓存当中手动移除。但是,Caffeine的缓存Cache 通常会被配置成自动驱逐缓存中元素,以限制其内存占用。在某些场景下,LoadingCache和AsyncLoadingC

#java#缓存#开发语言
Spring-WebFlux使用,一文带你从0开始学明白Spring-WebFlux,学明白响应式编程

传统的基于Servlet的Web框架,如Spring MVC,在本质上都是阻塞和多线程的,每个连接都会使用一个线程。在请求处理的时候,会在线程池中拉取一个工作者( worker )线程来对请求进行处理。同时,请求线程是阻塞的,直到工作者线程提示它已经完成为止。在Spring5中,引入了一个新的异步、非阻塞的WEB模块,就是Spring-WebFlux。该框架在很大程度上是基于Reactor项目的,

文章图片
#spring#java
暂无文章信息