自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(107)
  • 收藏
  • 关注

转载 Spring Boot:通过spring-boot-starter-data-redis源码了解starter和autoconfigure模块

注:本文Spring Boot为2.X版本在Spring Boot中,官方提供了spring-boot-autoconfigure包和starter包用来帮助我们简化配置,比如之前要建一个Spring mvc项目,需要我们配置web.xml,dispatcherservlet-servlet.xml,applicationContext.xml等等。而在Spring Boot中只需要在pom中引...

2019-05-28 16:25:01 1484

转载 CentOS yum 源的配置与使用

一、yum 简介  yum,是Yellow dog Updater, Modified 的简称,是杜克大学为了提高RPM 软件包安装性而开发的一种软件包管理器。起初是由yellow dog 这一发行版的开发者Terra Soft 研发,用python 写成,那时还叫做yup(yellow dog updater),后经杜克大学的Linux@Duke 开发团队进行改进,遂有此名。yum 的宗

2017-10-09 22:43:09 318

转载 Linux进程与线程概述

转自:http://www.cnblogs.com/blueclue/archive/2010/07/16/1778855.html进程是一个具有独立功能的程序关于某个数据集合的一次可以并发执行的运行活动,是处于活动状态的计算机程序。进程的定义:一个进程是一个程序的一次执行的过程;进程是资源管理的最小单位,线程是程序执行的最小单位 ps -elf    -A 显示所有进程(等价于-e)(utili...

2017-07-21 10:46:52 454

转载 Linux Centos下软件的安装与卸载方法

Linux下软件的安装与卸载 第一章   linux下安装软件,如何知道软件安装位置注:一般的软件的默认安装目录在/usr/local或者/opt里,可以到那里去找找.指令名称:whereis功能介绍:在特定目录中查找符合条件的文件。这些文件的烈性应属于原始代码,二进制文件,或是帮助文件。语法格式:whereis [-bfmsu][-B <目录>...][-M <目录>.....

2017-06-21 11:46:49 838

转载 浅谈Linux下的五种I/O模型

一、关于I/O模型的引出  我们都知道,为了OS的安全性等的考虑,进程是无法直接操作I/O设备的,其必须通过系统调用请求内核来协助完成I/O动作,而内核会为每个I/O设备维护一个buffer。如下图所示:     整个请求过程为: 用户进程发起请求,内核接受到请求后,从I/O设备中获取数据到buffer中,再将buffer中的数据copy到用户进程的地址空间,该用户进程获取

2017-05-02 16:06:28 504

转载 java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/s10461/article/details/53941091对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下。本文参考java 泛型详解、Java中的泛型方法、java泛...

2019-11-19 10:51:42 266

转载 深入理解JVM-虚拟机加载机制-类加载过程

转自 https://blog.csdn.net/limm33/article/details/56664298本文是基于周志明的《深入理解Java虚拟机》 虚拟机把描述类的数据从Class文件加载到内存,并对数据进行检验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。 从类被加载到虚拟机内存中开始,到卸载出内存为止,类的生...

2019-06-19 10:46:37 294

转载 Spring @Bean vs @Service注解区别

今天跟同事讨论了一下在Spring Boot中,是使用@Configuration和@Bean的组合来创建Bean还是直接使用 @Service等注解放在类上的方式。笔者倾向于使用第一种,即@Configuration和@Bean的组合。先来看一个例子,目标是创建SearchService的一个Bean。直接使用@Service的方式:// SearchService.java pa...

2019-04-25 17:28:47 4998

转载 Spring系列之Spring常用注解总结

传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop、事物,这么做有两个缺点:1、如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大;如果按需求分开.xml文件,那么.xml文件又会非常多。总之这将导致配置文件的可读性与可维护性变得很低。2、在开发中在.java文件和.xml文件之间不断切换,是一件麻烦的事,同时这种思维上的不连贯也会降低开发的效率。为...

2019-04-25 16:55:05 2759 1

原创 java生产环境发布代码

代码目录/data1/www/***/jiaoyi-erp/jiaoyi-erp.tar.gzjiaoyi-erp/bin/app_control.bash README.md conf/ standard-erp-web.jardev环境jenkins发布代码,在工程的配置里面有上线...

2019-03-14 17:34:27 731

转载 Docker安装指定版本

使用脚本安装 Docker1、使用sudo或root权限登录 Centos。2、确保 yum 包更新到最新。$ sudo yum update3、执行 Docker 安装脚本。$ curl -fsSL https://get.docker.com -o get-docker.sh$ sudo sh get-docker.sh执行这个脚本会添加docker.r...

2019-03-11 17:21:47 2725

原创 java面试题

简述jvm中堆和栈的区别栈内存: 在方法中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配当在一段代码块定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后java会自动释放掉为该变量所分配的内存空间, 该内存空间可以立即被另作他用堆内存: 堆内存用来存放由new创建的对象和数组. 在堆中分配的内存,由java虚拟机的自动垃圾回收器来管理Str...

2019-03-08 10:19:08 133

转载 Java jar命令 常见用法

一、jar命令作用: 进行打包-- 把多个文件打包成一个压缩包 -- 这个压缩包和Winzip的压缩格式是一样的. 区别在于jar压缩的文件默认多一个META-INF的文件夹,该文件夹下包含一个Manifest.mf(清单文件)的文件 通常来说jar命令得到的压缩包有三种(压缩格式完全一样,只是后缀名不同而已):  A、*.jar- 它里面包含N个class文件。  B、*...

2019-03-01 16:30:27 6229

转载 Thread类的run()和start()方法的区别

一、线程的start()方法start()方法来启动线程,真正实现了多线程运行,这时无需等待run方法体代码执行完毕而直接继续执行下面的代码: 通过调用Thread类的start()方法来启动一个线程,这时此线程是处于就绪状态,并没有运行。然后通过此Thread类调用方法run()来完成其运行操作的,这里方法run()称为线程体,它包含了要执行的这个线程的内容,Run方法运行结束,此...

2019-03-01 16:28:31 502

转载 Git恢复之前版本的两种方法reset、revert(图文详解)

一、问题描述在利用github实现多人合作程序开发的过程中,我们有时会出现错误提交的情况,此时我们希望能撤销提交操作,让程序回到提交前的样子,本文总结了两种解决方法:回退(reset)、反做(revert)。二、背景知识git的版本管理,及HEAD的理解使用git的每次提交,Git都会自动把它们串成一条时间线,这条时间线就是一个分支。如果没有新建分支,那么只有一条时间线,即只有一个分...

2019-02-26 15:13:44 626

转载 git checkout 命令详解

在日常的git操作中,git checkout——检出,是我们的常用命令。最为常用的两种情形是创建分支和切换分支。在下面的命令中,使用了一些简写,在这里说明一下:git st # git statusgit ci # git commitgit br # git branchgit co # git checkoutgit mg # git mergegit line # g...

2019-02-26 14:52:58 1922

原创 git账号配置

配置user_name,email_name$ git config --global user.name "superGG1990"$ git config --global user.email "[email protected]"ssh-keygen -t rsa -C "[email protected]"生成公钥私钥一路enter,不需要输入密码...

2019-01-25 14:05:51 2249

原创 maven的package与install命令区别

maven项目管理工具,集成了打包功能(生成jar包)mvn clean :清除目标目录中的生成结果mvn package : 依据项目生成 jar 文件mvn install :在本地 Repository 中安装 jarpackage(依赖的jar包会在本地仓库生成,本项目的jar包没有在本地仓库生成)install本项目jar包会在本地仓库生成packag...

2019-01-23 15:35:14 3059

转载 nginx的web缓存服务环境部署记录

web缓存位于内容源Web服务器和客户端之间,当用户访问一个URL时,Web缓存服务器会去后端Web源服务器取回要输出的内容,然后,当下一个请求到来时,如果访问的是相同的URL,Web缓存服务器直接输出内容给客户端,而不是向源服务器再次发送请求.Web缓存降低了内容源Web服务器,数据库的负载,减少了网络延迟,提高了用户访问的响应速度,增强了用户体验.web缓存服务器中,最著名的要数Squid C...

2018-03-30 11:32:24 867

原创 redis和memcache学习

https://segmentfault.com/a/1190000009695841redis单线程进程和线程的学习redis为什么是单线程?因为CPU不是redis的瓶颈,redis的瓶颈最可能是内存和网络带宽。万一CPU成了redis的瓶颈了或者不想浪费CPU多核,多开几个redis进程  考虑性能问题的前提是得了解性能的瓶颈在哪。redis 目标就是高性能内存kv存储。 异步io,纯内存操...

2018-03-28 17:49:58 230

转载 联合memcache,repcached,magent,monit四个组件搭建高可用集群方案

一、基本介绍 1、组件承担的角色 1)memcache负责缓存对象。 2)repcached负责单主单从的同步备份。 3)magent代理实现N主N备。 4)monit监听以上组件的各个实例端口,保证故障自动重启。2、集群思路 1)利用repcached对memcache进行1对1的主备设计 2)利用magent多MA负载分担实现N主N备方案。 3)利用monit的监听机制,实例宕机后,能够快速重...

2018-03-27 17:37:43 384

转载 memcached分布式缓存

阅读目录1、memcached分布式简介2、取模算法方式3、一致哈希算法方式回到顶部1、memcached分布式简介  memcached虽然称为“分布式”缓存服务器,但服务器端并没有“分布式”功能。Memcache集群主机不能够相互通信传输数据,它的“分布式”是基于客户端的程序逻辑算法进一步实现的。请看下面简图:根据上图我们简述分析分布式memcached的set与get的过程set过程:1、首...

2018-03-27 16:49:34 174

转载 Memcached的Slab Allocation机制管理内存

#Memcached那些事 本文不是为了介绍Memcached是什么,而是讨论在使用Memcached的时候你必须知道的一些事情。以便于方便排查和更好的使用Memcached。本文主要围绕两个方面来讨论这个话题:Memcached的使用和监控。 ##如何更好的使用Memcached 这部分讨论的是如何能够合理有效的让Memcached为我们服务,通过什么方式来调控Memcached,让它工作的更好...

2018-03-26 14:47:19 1100

原创 mysql学习

进入到mysql的安装目录中的bin文件夹,里面会有mysqlbinlog命令,只有这样才能正常使用,命令格式如下:./mysqlbinlog 文件路径 --stop-datetime="具体日期,精确到秒" --start-datetime="time"如./mysqlbinlog /usr/local/mysql/var/mysql-bin.000011 stop-date="2016-06-...

2018-03-22 17:35:26 157

转载 Docker学习记录

docker简单学习将本机的nginx停掉docker - nginx配置和使用http://blog.csdn.net/jsu_9207/article/details/78694441阮一峰docker ps代替docker container lshttp://www.ruanyifeng.com/blog/2018/02/docker-tutorial.htmldocker在web开发中得...

2018-03-13 16:12:53 196

原创 go语言环境搭建for windows

1.安装git    因为golang是通过git来管理远程包的,所以我们首先要安装git,下载地址:http://www.git-scm.com/download/。git安装比较简单,直接下一步即可(在Windows Explorer integration选项中将“Git Bash here”和“Git GUI here”打对勾),需要了解具体安装的可以看这里。go get github.c...

2018-02-28 15:50:24 783

转载 linux 编译安装amqp

背景: 下面的内容是我根据网上博客小松的文章 https://www.phpsong.com/2223.html 做的修改,因为我走到make 编译amqp这步报错  最开始报下面的这个错误,是因为要安装另外一个扩展rabbitmq-cconfigure: error: Please reinstall the librabbitmq distribut

2017-10-31 22:49:33 599

转载 rabbitmq php测试使用

这篇文章的php Demo代码是网上找过来的,注释添加的比较全面,容易理解,在此基础上测试消费者:接收消息逻辑:创建连接–>创建channel–>创建交换机–>创建队列–>绑定交换机/队列/路由键–>接收消息文件名为 c.php<?php /************************************* * PHP amqp(RabbitMQ) Demo -

2017-10-09 22:44:47 412

转载 Redis学习笔记——初级

阅读目录1. Redis是什么、特点、优势2. redis安装(Linux)、启动、退出、设置密码、远程连接3. Reis key4. Redis数据类型5. Redis HyperLogLog6. Redis 发布订阅7. Redis事务8. Redis脚本9. 数据备份与恢复10. 数据库操作11. 实际小应用12. 关闭持久化回到顶部1. Redis是什么、特点、

2017-08-10 17:27:08 355

转载 Linux下的工作模型以及Nginx工作原理

Web服务器主要任务就是处理来自客户端的请求,一般情况下Web服务器处理并发连接请求的工作模型有以下几种方式:1、单线程web服务器(Single-threaded web servers)此种架构方式中,web服务器一次处理一个请求,结束后读取并处理下一个请求。在某请求处理过程中,其它所有的请求将被忽略,因此,在并发请求较多的场景中将会出现严重的性能问题。(即一次只能处理一个请求

2017-07-20 14:53:59 709

转载 nginx中fastcgi_params配置参数

http://www.docker.org.cn/index.htmlDocker 的应用场景在哪里?https://www.zhihu.com/question/22969309Docker学习笔记https://www.cnblogs.com/linuxops/p/6781047.htmlhttp://www.cnblogs.com/51kata/p/5245733.htmlhttp://xi...

2017-07-20 11:04:02 3967 1

转载 Linux下永久生效环境变量bashrc

1) .bashrc文件    在linux系统普通用户目录(cd /home/xxx)或root用户目录(cd /root)下,用指令ls -al可以看到4个隐藏文件,    .bash_history   记录之前输入的命令    .bash_logout    当你退出时执行的命令    .bash_profile    当你登入shell时执行   

2017-07-11 15:35:36 5890

转载 减少if-else使用

删除 else如:function test($arg){ if($arg == 'foobar'){ return true; }else{ return false; }}尽量写成这样function test($arg){ if($arg == 'foobar'){ return true

2017-06-26 10:15:00 515

转载 linux awk命令详解

简介awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。awk其名称得自于它的创始人 Alfr

2017-06-23 11:21:33 192

转载 MySQL自动化运维之用mysqldump和mysqlbinlog实现某一数据库的每周全备和每天差异备份,并添加到执行计划【热备】

案例:    线上有一数据库,需要每周全备一次,每天差备一次[安全起见还是差备吧,不要增备,不要吝啬磁盘哦,而且差备恢复还很快]    1、每周对数据库hellodb做完全备份    crontab任务计划:10 01 * * 1 /bin/bash /work/dump-complete-hello.sh ===>每周周一凌晨1点10分执

2017-06-22 16:07:59 1200

转载 linux中service与chkconfig的替代者systemctl的简单介绍

Linux中有很多命令已经存在了N多年,渐渐一些已被一些新命令所代替,不过由于习惯的原因,很多时候我们并不能一下子适应过来 ,例如ifconfig之于ip命令。最近在升级到centos7时也发现不支持service命令了,systemctl是systemd下的一个工具。网上查了下,该命令已经存在很久了。该命令是用来替代service和chkconfig两个命令的 —— 尽管个人感觉还是后者

2017-06-21 09:43:41 353

转载 mysql主从复制实现数据库同步

mysql主从复制相信已经用得很多了,但是由于工作原因一直没怎么用过。趁着这段时间相对空闲,也就自己实现一遍。尽管互联网上已有大把类似的文章,但是自身实现的仍然值得记录。环境:主服务器:centos 6.0 mysql 5.1.67-log IP:192.168.0.107从服务器:centos 6.0 mysql 5.1.67-log IP:192.168.0.109主服

2017-06-13 14:50:31 1711

转载 CentOS7下安装MySQL5.7安装与配置(YUM)

原文链接:http://blog.csdn.net/xyang81/article/details/51759200安装环境:CentOS7 64位 MINI版,安装MySQL5.71、配置YUM源在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/ # 下载mysql源安装包shell> w

2017-05-11 22:17:46 235

转载 数据库三大范式的一己之见

设计数据库时,通常需要遵从不同的规范,设计出合理的数据库,减少数据冗余,而这些规范称为数据库范式,一般来说,只需要实现前三大范式即可。下面说说我对这三大范式的理解:以下表为例:[sql]view plain copy print?CREATE TABLE `test` (    `id` int UNSIGNED NOT NU

2017-05-10 16:34:08 303

转载 为什么Nginx的性能要比Apache高很多?

上一篇文章中,谈了一些网络编程的基本概念。在现实使用中,用的最多的就是I/O复用了,无非就是select,poll,epoll很多人提到网络就说epoll,认为epoll效率是最高的。单纯的这么认为,其实有失偏颇。epoll固然高效,可是它是怎么做到高效的,它到底比select或poll优异在哪儿?我们通过调用流程来简单分析下。首先以select为例(poll类似),看下其

2017-05-08 20:04:18 734

空空如也

空空如也

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

TA关注的人

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