自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

转载 APOLLO配置中心Java客户端使用指南

APOLLO配置中心Java客户端使用指南 一、准备工作 1.1 环境要求 Java: 1.7+ Guava: 15.0+ Apollo客户端默认会引用Guava 19,如果你的项目引用了其它版本,请确保其版本号大于等于15.0。 注:对于Apollo客户端,如果确有需要,可以做少量...

2020-05-18 20:53:08 25 0

原创 解决mybatis-plus查询字段中含有关键词时异常问题

在使用mybatis-plus查询mysql某张表的数据时,一直告警提示sql syntax error。于是,把异常提示里的sql语句复制到navicat执行,也提示sql syntax error。仔细看了下,发有几个字段在navigate里面标示为蓝色(这几个字段为sensitive、sta...

2020-05-11 12:01:11 54 0

原创 git 修改最后一次提交的信息

使用git进行版本控制,修改最后一次提交的用户名,命令为: git commit --amend --author=xxx 就会将git最后一次提交的用户名修改为xxx。 修改最后一次commit提交信息,命令为: git commit --amend -m "update...

2020-03-23 12:19:50 78 0

转载 MySQL的时间戳(Timestamp)类型学习

生产环境中部署着各种版本的MySQL,包括MySQL 5.5/5.6/5.7三个大版本和N个小版本。由于MySQL在向上兼容性较差,导致相同SQL在不同版本上表现各异,尤其是对于时间戳数据类型。下面从几个方面来详细介绍时间戳数据类型。 一、时间戳数据存取 在MySQL上述三个大版本中,默认时间...

2020-03-17 15:28:26 128 0

转载 RedisTemplate用法学习

Redis可以存储5种不同类型的数据结构,这5种数据结构分别为: String(字符串)、List(列表)、Set(集合)、Hash(散列)和 Zset(有序集合)。 Spring-data-redis是spring大家族的一部分,提供了在srping应用中通过简单的配置访问redis服务,对re...

2020-03-13 23:17:16 68 0

转载 APOLLO配置中心学习

目录 1、Apollo是什么 1.1 背景 1.2 Apollo简介 1.3 配置基本概念 2、为什么选Apollo 3、Apollo初识 3.1 基础模型 3.2 界面概览 3.3 添加/修改配置项 3.4 发布配置 3.5 客户端获取配置(Java API样例) 3...

2020-03-11 17:12:25 34 0

转载 @Mapper注解学习

@Mapper 是 Mybatis 的注解,和Spring没有关系。@Mapper注解的的作用 1:为了把mapper这个DAO交給Spring管理,参考 http://412887952-qq-com.iteye.com/blog/2392672 2:为了不再写mapper映射文件,参考ht...

2020-03-11 16:02:10 90 0

原创 @KafkaListener注解学习

本文只是介绍一下@KafkaListener的工作流程,并不详细深入。 一、@KafkaListener 注解使用方式 spring-kafka使用基于@KafkaListener注解,@KafkaListener使用方式如下。 @KafkaListener(topics = "...

2020-03-11 15:19:24 207 0

原创 Mac删除系统文件保护Rootless权限文件的方法

如果想删除或创建某个Mac 系统文件,如/System 目录下,或/usr/bin 目录下的某个link链接,需要关闭Mac系统的Rootless权限。关闭步骤如下: 1.重启进入恢复模式(重启时一直长按command+R) 1.1在终端输入关闭rootless指令:csrutil d...

2020-03-11 14:38:35 103 0

原创 mybatis-plus学习

一、mybatis-plus介绍 MyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 官网地址:https://mybatis.plus git源代码地址:https://github.com/bao...

2020-03-10 18:10:12 20 0

原创 SpringBoot定时任务@EnableScheduling

一、定时任务作用? 定时任务就是到什么时间自动做什么事情(执行什么命令或脚本)。 二、SpringBoot中使用定时任务 1、pom.xml中导入必要的依赖   <parent> <groupId>org.springframework.boot&...

2020-03-10 09:28:43 11 0

原创 swagger2注解学习@Api

一、swagger简介 Swagger是目前最好用的Restful API文档生成的开源项目。通过swagger-spring项目,其实现了与SpingMVC框架的无缝集成功能,方便生成spring restful风格的接口文档。同时,swagger-ui还具有测试spring restful风...

2020-03-09 22:55:11 29 0

原创 IDEA出现Module ** must not contain source root **. The root already belongs to module **错误的解决方法

本人在IDEA中导入一个名称为CUT的项目后,打开 File——>Project Structure...,点击左侧的Modules,发现除了名称为CU的module,还有一个“main”和一个“test”。通过查看详细信息,发现“main”和“test”都属于“CUT”这个项目。   在...

2020-03-06 18:55:18 170 0

转载 macOS High Sierra10.13.3安装homebrew报错LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54解决方法

在mac系统中,使用homebrew可以很方便的管理包。按照官网的说明执行以下命令时,总是报错: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/insta...

2020-03-05 16:41:18 98 0

原创 mac使用brew命令安装java8sdk提示Cask 'java8' is unavailable的解决方案

之前在mac上安装java8sdk的时候,使用的命令为: brew cask install homebrew/cask-versions/java8 今天使用同样的命令在mac上安装java8sdk,去提示发生如下错误: Error: Cask 'java8' is...

2020-02-27 14:52:23 906 0

原创 redis五大数据类型的底层实现

一、redis数据类型简介 二、字符串对象(string) 三、列表对象(list) 四、哈希对象(hash) 五、集合对象(set) 六、有序集合对象(zset) 七、总结 一、redis数据类型简介 redis的五大数据类型,也称五大数据对象。redis有六大数据结构,分别为简...

2020-02-22 22:29:57 78 0

原创 Redis的底层数据结构

一、Redis的数据结构简介 Redis的底层数据结构一共有6种,分别为:简单动态字符串(SDS)、链表、字典、跳跃表、整数集合、压缩列表。 Redis的数据类型一共有5种,分别为:字符串对象、列表对象、哈希对象、集合对象、有序集合对象。这五大数据类型(数据对象)都是由一种或几种数结构构成。 ...

2020-02-22 18:31:12 51 0

转载 Redis简介

Redis概述 1、Nosql,非关系型数据库,key-value键值对存贮。 2、内存型数据库,支持持久化,可将数据保存在硬盘上。 3、单线程处理请求,但采用io多路复用技术。 4、读写性能好,支持集群。 Redis数据类型 1、String类型:最基础的数据类型,简单的key-...

2020-02-22 12:20:18 29 0

原创 字符串中找出连续最长数字串(PHP版本)

题目描述一:读入一个字符串str,输出字符串str中的连续最长的数字串。如果有多个连续最长的数字串,只需输出第一个即可。 输入描述 输入包含1个测试用例,一个字符串str,长度不超过255。 输出描述 在一行内输出str中里连续最长的数字串。 示例 输入为: abcd12345ed125ss...

2020-02-21 20:08:07 98 0

转载 进程、线程和协程的理解

一、进程 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序...

2020-01-13 20:14:55 50 0

原创 PHP错误Allowed memory size of XXXXXXXX bytes exhausted的解决方案

最近迁移一个PHP系统,在旧有的服务器上运行没有任何问题,在新的服务器上运行就会一直报“Allowed memory size of XXXXXXXX bytes exhausted”,尝试了好几种解决方案,记录如下。 第一种方案: 在PHP文件中加入ini_set(”memory_limit...

2019-12-30 19:40:18 41 0

转载 看懂Serverless,这一篇就够了

1.无服务器(Serverless)计算是什么 云计算涌现出很多改变传统IT架构和运维方式的新技术,比如虚拟机、容器、微服务。无论这些技术应用在哪些场景,“降低成本、提升效率”是云服务永恒的主题。 过去十年来,我们已经把应用和环境中很多通用的部分变成了服务。Serverless的出现,带来了...

2019-12-05 20:08:41 355 0

原创 curl无法访问http/https的解决方法

今天遇到一个奇怪的事情,curl无法访问http/https url地址,但是postman可以调用,浏览器也可以访问。如下所示: 仔细看了下curl -v的返回值,发现请求的是本地IP和端口,推测可能有http代理进程干扰。于是,顺藤摸瓜,查询下是否有进程占用这个端口,使用命令如下: ...

2019-11-15 23:41:45 177 0

原创 supervisor配置示例

supervisor是通过配置文件来管理进程的。可以把所有配置项都写到supervisord.conf 文件里,但并不推荐这样做。推荐做法是:通过 include 的方式,把不同的程序(或程序组)写到不同的配置文件里。 为了举例,我们使用目录 /etc/supervisor/ 存放这些配置文件,...

2019-11-12 18:09:51 63 0

原创 php支持mongo模糊查询、转义特殊字符

在php里面,mongo模糊查询某些带特殊符号的字符串,发现查不到结果。于是,一顿找资料,发现:必须将带转义特殊字符的字符串进行转义处理,才能匹配到结果。 封装了一个PHP版本的mongo模糊查询转义特殊字符的方法,如下所示: /** * 转义正则特殊字符 ($()*+.[]?\^{}...

2019-11-05 14:25:22 64 0

原创 php实现获取某指定叶子结点到根结点的路径

问题:有一个多叉树,如下所示: class node { public $data = null; public $children = null; public function __construct($data) { $this->dat...

2019-10-30 15:59:51 50 0

原创 php实现获取从叶子结点到根结点的路径

问题:有一个多叉树,如下所示: class node { public $data = null; public $children = null; public function __construct($data) { ...

2019-10-30 15:46:09 118 0

原创 高并发中的惊群效应简介

一.惊群效应简介 所谓惊群效应,就是多个进程或者线程在等待同一个事件,当事件发生时,所有进程或者线程都会被内核唤醒。然后,通常只有一个进程获得了该事件,并进行处理;其他进程在发现获取事件失败后,又继续进入了等待状态。这在一定程度上降低了系统性能。 具体来说,惊群通常发生在服务器的监听等待调用上...

2019-10-29 19:47:12 72 0

原创 C10k问题简述

所谓c10k问题,指的是:服务器如何支持10k个并发连接,也就是concurrent 10000 connection(这也是c10k这个名字的由来)。由于硬件成本的大幅度降低和硬件技术的进步,如果一台服务器能够同时服务更多的客户端,那么也就意味着服务每一个客户端的成本大幅度降低。从这个角度来看,...

2019-10-28 21:08:30 289 0

原创 单台服务器并发TCP连接数到底可以有多大

曾几何时,我们还在寻找网络编程中C10K问题的解决方案。现在,从硬件和操作系统支持来看,“单台服务器支持上万并发连接”已经没有多少挑战性了。 我们先假设:单台服务器最多只能支持万级并发连接。其实,这对绝大多数应用来说,已经远远足够了。但是,对于一些拥有很大用户基数的互联网公司,往往面临的并发连接...

2019-10-28 14:25:02 95 0

原创 php实现笛卡尔积

问题:有那么一个数组 $arr = array( array(1, 2, 3), array('中','国','人'), array('a','b','c�...

2019-10-26 17:37:57 35 0

转载 深入理解 MySQL ——锁、事务与并发控制

本文对 MySQL 数据库中有关锁、事务及并发控制的知识及其原理做了系统化的介绍和总结,希望帮助读者能更加深刻地理解 MySQL 中的锁和事务,从而在业务系统开发过程中可以更好地优化与数据库的交互。 1、MySQL 服务器逻辑架构 ...

2019-10-21 20:19:18 24 0

原创 mac下安装python3

mac下安装python3 1.先用brew search命令查看 brew search python3 结果如下所示: ==> Formulae boost-python3 python3 ...

2019-10-14 14:45:30 359 0

原创 etcdAPI 文档

etcd 对外通过 HTTP API 对外提供服务,这种方式方便测试(通过 curl 或者其他工具就能和 etcd 交互),也很容易集成到各种语言中(每个语言封装 HTTP API 实现自己的 client 就行)。 下面介绍下 etcd 通过 HTTP API 提供了哪些功能,并使用httpi...

2019-09-11 14:33:52 395 0

原创 etcd安装简介

etcd的简介请参考https://blog.csdn.net/chinawangfei/article/details/95046120。 本篇主要介绍etcd的安装。 etcd 是用 go 语言编写的,安装过程简单,只需要下载对应的二进制文件,并放到合适的路径即可。 1.单点安装 如果...

2019-09-10 17:41:48 78 0

原创 mac安装mongodb

mac安装mongodb比较简单,直接使用命令brew install mongodb即可。安装过程所示: $ brew install mongodb ==> Installing dependencies for mongodb: python@2 ==> Installing...

2019-07-19 16:00:17 59 0

原创 mac安装redis

mac安装redis比较简单,直接使用命令brew install redis即可。安装过程所示: $ brew install redis ==> Downloading https://homebrew.bintray.com/bottles/redis-5.0.5.mojave.b...

2019-07-19 15:21:55 58 0

原创 mac安装mysql

mac安装mysql比较简单,直接使用命令brew install mysql即可。安装过程所示: $ brew install mysql Updating Homebrew... ==> Downloading https://homebrew.bintray.com/bottles...

2019-07-19 15:16:24 44 0

原创 mac安装nginx

mac安装nginx比较简单,直接使用命令brew install nginx即可。安装过程所示: $ brew install nginx ==> Installing dependencies for nginx: openssl and pcre ==> Installing...

2019-07-18 14:12:39 356 0

转载 etcd使用场景

要问etcd是什么?很多人第一反应可能是“一个键值存储仓库”,却没有重视官方定义的后半句,用于配置共享和服务发现。 A highly-available key value store for shared configuration and service discovery. 实际上,...

2019-07-08 17:59:34 231 0

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