4 丁文浩

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 6w+

Linux下Redis安装

初始环境:yum install gcc-c++解压:tar -zxvf redis-5.0.5.tar.gz进入解压目录安装:make && make install脚本方式配置redis开机自启进入目录:cd/home/software/redis-5.0.5/utils复制脚本文件至init.d:cp redis_init_script /etc/init.d/创建redis工作目录:mkdir -p /usr/local/redis/work核心配置文件.

2020-06-13 16:42:07

Keepalived+LVS+Nginx高可用集群负载均衡

一、需具备环境两台Keepalived服务器192.168.3.119192.168.3.122两台nginx服务器192.168.3.120192.168.3.121VIP:192.168.3.200(虚拟IP)二、主节点Keepalived配置ip :192.168.3.119global_defs { # 路由id:当前安装keepalived的节点主机标识符,保证全局唯一 router_id keep_119} vrrp_ins..

2020-06-13 15:43:06

搭建LVS-DR模式的负载均衡

一、准备条件准备三台虚拟机,一台为LVS节点,两台为nginx节LVS节点:DIP:192.168.3.119(内网IP,虚拟机静态IP)VIP:192.168.3.200(虚拟IP)Nginx节点:RIP:192.168.3.120(真实IP/内网IP)RIP:192.168.3.121(真实IP/内网IP)即:三台服务器,192.168.3.119、192.168.3.120、192.168.3.121DIP:即director ip ,调度者IPRI..

2020-06-13 12:34:03

centos7使用

一、虚拟机安装后配置静态IP执行命令:cd /etc/sysconfig/network-scripts/编辑配:vi ifcfg-enp0s3删除文件内旧数据粘贴如下配置:DEVICE="enp0s3" # 网卡名TYPE="Ethernet" # 网络类型为以太网ONBOOT="yes" # 该网卡是否随网络服务启动BOOTPROTO="static" # 手动分配ipIPADDR=192.168.3.117 # 配置的固定IPNETMASK=255.255

2020-06-12 12:05:49

keepalied双主热备

一、keepalied安装下载keepalied后解压,进入解压目录,执行 configure 命令配置安装目录与conf配置文件目录./configure --prefix=/usr/local/keepalived --sysconf=/etcprefix : keepaivied 安装路径sysconf :核心配置文件所在位置,固定,改为其他位置无法启动执行命令后若提示以下内容,则需安装 libnl/libnl-3 依赖安装 libnl/libnl-3 依赖yu..

2020-06-04 11:15:55

苹果APP授权登录

一、前值说明苹果App开发完成后支持微信QQ一键登录,审核时要求具备Apple登录以防万一,苹果登录有两种方式,一种是jwt,二是授权码模式,这里采用jwt模式,开发语言为java二、代码实现使用相关技术:jwt+restTemplate+fastjson/** * 解析apple授权token * @param jwt * @return * @throws Exception */ public JSONObject ap.

2020-05-26 14:41:50

Nginx基础使用配置

一、nginx在虚拟机下的安装1. 安装依赖# 安装依赖yum install -y gcc-c++ # 安装 gcc 环境yum install -y pcre pcre-devel # 安装 PRCE 库,用于解析正则表达式yum install -y zlib zlib-devel yum install -y openssl openssl-devel # https协议2. 下载nginx建议切换至 /home/software 目录下下载,目录不存在执行:mkdir.

2020-05-22 10:38:04

springboot整合swagger文档

1. 普通方式:@Configuration@EnableSwagger2public class Swagger2 { // 配置swagger2核心配置 @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) // 指定api类型为swagger2 .apiInfo(apiInfo()) .

2020-05-21 16:45:29

处理mysql数据库中null字段为空字符串

UPDATE user_infoSET head_image= ( CASE WHEN IFNULL ( head_image, '' ) = '' THEN '' ELSE head_image END ) WHERE head_image IS NULL

2020-05-16 10:47:36

批量修改教程带后缀文件名

public class Test { static String newString = "";//新字符串,如果是去掉前缀后缀就留空,否则写上需要替换的字符串 static String[] oldString = {"_[访问daobanke.com] (2)【daobanke.com】","【daobanke.com】","_[访问daobanke.com]【daobanke.com】","_[访问daobanke.com]"};//要被替换的字符串 static Stri.

2020-05-14 11:59:07

Java调用极光IM API注册用户并上传头像

梗概:根据极光文档,java注册用户到极光IM分为两个步骤,第一步,调用文件上传接口,上传头像,获取返回的 media_id ,即资源文件id。第二步调动注册接口,带上头像数据即可。代码如下:相关技术栈:RestTemplate,Lombok一、编写上传文件方法上传成功后返回资源id//文件上传极光 public String uploadHead(String u...

2020-05-06 17:19:11

shiro通过sessionId获取当前用户登录信息

一、应用场景前后端分离架构,使用shiro做权限管理,登录成功将sessionId返回,访问接口时在请求头携带即可。由于业务需要,现有需要接口不做拦截,在方法内做权限判断,于是将sessionId携带在RequestParam中,进行登录或权限校验。二、实现代码ProfileResult:登录中构造安全数据的实体类import com.guangjutx.entity.au...

2020-04-17 11:19:33

SpringBoot+Shiro解决跨域问题

第一步:package com.guangjutx.config;import lombok.extern.slf4j.Slf4j;import org.springframework.stereotype.Component;import javax.servlet.*;import javax.servlet.http.HttpServletRequest;import ja...

2020-03-21 16:44:56

高并发下缓存数据库数据一致性解决方案及实现代码

一、技术栈springboot+mybatis+redis二、实现原理以商品库存为例:更新商品库存的时候,根据数据(如商品ID )的唯一标识,将操作路由之后,发送到一个jvm内部的队列中读取数据(库存)的时候,如果发现数据不在缓存(redis)中,那么将执行重新读取数据+更新缓存的操作,根据唯一标识路由之后,也发送同一个jvm内部的队列中一个队列对应一个工作线程,每个工作线...

2019-12-31 18:03:09

Redis企业级架构方案(十)

1、redis的各个知识点redis:持久化、复制(主从架构)、哨兵(高可用,主备切换)、redis cluster(海量数据+横向扩容+高可用/主备切换)持久化:高可用的一部分,在发生redis集群灾难的情况下(比如说部分master+slave全部死掉了),如何快速进行数据恢复,快速实现服务可用,才能实现整个系统的高可用复制:主从架构,master -> slave 复制,读...

2019-12-21 11:42:27

redis在实践中的一些常见问题以及优化思路(包含linux内核参数优化)(九)

1、fork耗时导致高并发请求延时RDB和AOF的时候,其实会有生成RDB快照,AOF rewrite,耗费磁盘IO的过程,主进程fork子进程fork的时候,子进程是需要拷贝父进程的空间内存页表的,也是会耗费一定的时间的一般来说,如果父进程内存有1个G的数据,那么fork可能会耗费在20ms左右,如果是10G~30G,那么就会耗费20 * 10,甚至20 * 30,也就是几百毫秒的时...

2019-12-20 19:21:00

redis cluster节点内部通信机制(八)

一、节点间的内部通信机制1、基础通信原理(1)redis cluster节点间采取gossip协议进行通信跟集中式不同,不是将集群元数据(节点信息,故障,等等)集中存储在某个节点上,而是互相之间不断通信,保持整个集群所有节点的数据是完整的维护集群的元数据用得,集中式,一种叫做gossip集中式:好处在于,元数据的更新和读取,时效性非常好,一旦元数据出现了变更,立即就更新到集中式...

2019-12-20 19:02:20

搭建读写分离+高可用+多master的redis cluster集群(七)

1、redis cluster最最基础的一些知识redis cluster: 自动,master+slave复制和读写分离,master+slave高可用和主备切换,支持多个master的hash slot支持数据分布式存储停止之前所有的实例,包括redis主从和哨兵集群2、redis cluster的重要配置cluster-enabled <yes/no>clus...

2019-12-20 16:42:06

Redis三节点方式部署哨兵集群(六)

1、哨兵的配置文件sentinel.conf最小的配置每一个哨兵都可以去监控多个maser-slaves的主从架构为不同的项目,部署了多个master-slaves的redis主从集群相同的一套哨兵集群,就可以去监控不同的多个redis主从集群你自己给每个redis主从集群分配一个逻辑的名称sentinel monitor mymaster 127.0.0.1 6379...

2019-12-11 17:25:39

Linux目录结构

图示结构:系统启动必须:/boot:存放的启动Linux 时使用的内核文件,包括连接文件以及镜像文件。/etc:存放所有的系统需要的配置文件和子目录列表,更改目录下的文件可能会导致系统不能启动。/lib:存放基本代码库(比如c++库),其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。/sys:这是linux2.6内核的一个很大的变化。该目...

2019-12-10 17:20:45

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。