使用redis实现程序或者服务的高可用

使用redis实现程序或者服务的高可用,就是将某一程序或服务部署在不同服务器上,或者是跨机房部署,当运行服务的服务器挂了之后,其他服务器上的该服务能立马顶上,这里我简单的使用redis实现这一目的。 思路是: 部署在不同服务器上的相同服务,隔段时间去redis上查下某一个键(自己定义),如果该键不存在,则设置该键的值,可以是自己本服务器的IP,并设置的一个过期时间,然后执行服务的业务逻辑,如果该键存在,查看该键的值是不是自己的IP,如果是,更新该键的过期时间。代码如下: # coding:ut
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

数据类型的内置方法:元组

目录 数据类型的内置方法:元组 作用 定义 优先掌握的内置方法 数据类型的内置方法:元组 作用 能够存储多个元素,元素与元素之间逗号隔开 ,元素可以是任意类型,元组不能被修改。 存一个只or多个值:多个值 有序or无序:有序 可变or不可变:不可变 定义 num = (1,2,3,4,5,6) # num = tuple((1,2,3,4,5,6)) 优先掌握的内置方法 1:按索引取值(正向或反向取),只能取 num = (1,2,3,4,5,6) print(num[5]) # 6
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

小米 9 SE 获取Root 和 安装Magisk

1、刷入第三方REC 和 Magisk 参考教程:【LR.Team】小米9SE专版TWRP中英文修改优化版_小米9 SE_MIUI论坛 使用上面的工具,傻瓜式操作即可。 关于刷入成功之后的说明:刷入成功后,系统会重启进入TWRP 首先需要设置一个密码; 然后需要签名boot 然后获取root,这样才会在手机中安装Magisk框架。 最后,手机重启,即可成功。 注意: 小米官方是按开机+音量-进入REC,但是刷入这个TWPR之后,需要按开机+音量+才能进入REC。 如果你还是按开机+音量-,则会
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

spring-boot学习 (Groovy与Spring Boot Cli)

一、使用idea创建一个spring-boot项目,选择groovy语言 二、编写相应代码 1、创建实例类 package com.zhi.example class Man { Long id String name String phone Man(Long id, String name, String phone) { this.id = id this.name = name th
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

Django 之restfromwork 源码分析之--视图组件

restframework 源码分析以及使用 mixins 中的五种类方法 from rest_framework import mixins # mixins 中一种有五种类 # 第一种:用户保存数据 class CreateModelMixin(object): """ Create a model instance. """ def create(self, request, *args, **kwargs): # 序列化的类的对象
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

数据类型的内置方法:集合

目录 数据类型的内置方法:集合 作用 定义 优先掌握的内置方法 数据类型的内置方法:集合 作用 用于关系运算的集合体,由于集合内的元素无序且集合元素不可重复,因此集合可以去重,但是去重后的集合会打乱原来元素的顺序。 一个值or多个值:多个值,且值为不可变数据类型 有序or无序:无序 可变or不可变:可变 定义 {} 内用逗号分隔开多个元素,每个元素必须是不可变类型。 s = {1,2,1,'a'} # s = set({1,2,'a'}) print(s) # {1,2,'a'} 优先掌握
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

发生线上故障后问责是不是第一要务

《Google SRE》这本书,说过这样一句话:系统正常,只是该系统无数异常情况下的一种特例。故障是不可避免的,不管是再牛的系统、再知名的科技公司。 既然不可避免,我们要做的就是不断提升能力和优化流程,减少故障出现的概率。 今天公司线上系统出现了响应迟钝的情况,白天偶现,到了晚上,出现雪崩效应。各个系统,都出现相应超时等情况。最终定位到有一个太服务器的CPU跑满了。 其实监控系统已经出现报警提醒,但因未有一套规范流程。没有第一时间观察到。出现线上有问题,第一时间应该查看监控系统是否有异常情况,
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

学习笔记:CentOS7学习之二十三: 跳出循环-shift参数左移-函数的使用

目录 学习笔记:CentOS7学习之二十三: 跳出循环-shift参数左移-函数的使用 23.1 跳出循环 23.1.1 break和continue 23.2 Shift参数左移指令 23.3 函数的使用 23.3.1 函数创建语法 23.3.2 函数的使用 23.3.3 返回值 23.3.4 把函数值赋给变量使用 23.3.5 函数的传递 23.3.7 函数中变量的处理 23.4 实战-自动备份mysql数据库脚本和nginx服务启动脚本 23.4.1 自动备份mysql数据库脚本 23.
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

mysql主从之主机名导致主从机制失败的问题

一 主库 mysql主服务器的正确配置需要指定log-bin、log-bin-index server-id = 1 log-bin=master-bin log-bin-index = master-bin.index 如果使用正确的配置,主机名改变后,即使mysql重启了,主从同步是能够照常进行的。 如不指定的话,binlog文件名就会依赖于主机名,如下配置 server-id = 1 log-bin 例如配置变为: [mysqld] bind-address=0.0.0.0 port
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

TLS1.3 认证和秘钥建立握手环节的分析

1、ClientHello 中的参数 ClientHello---{ Random_C 、extension } 在 extension中的扩展中包含 ( supported_version 、 supported_groups、 signatureschemlist、key_shared ) 2、服务器接收到之后需要选择支持的最高版本协议,秘钥分发算法和选择的公钥,加密签名算法、以及random_S、session_id 回复 serverHello,算出自己前主秘钥,紧接着使用自己选择的加
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

temp for @青

4层方法 IBaseController BaseControllerImpl IBaseService BaseServiceImpl IBaseComponent IBaseComponentImpl IBaseRepository BaseRepositoryImpl /findPagination find /findPagination find /findPagination findPagination /findPagination findPagination find(St
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

内存泄漏问题总结

1、内存的生命周期   无论你使用那种语言,内存的生命周期基本是都差不多:分配内存 —— 使用内存 —— 释放内存,以下是生命周期中每一步发生了什么的一个概述:   Allocate memory —— 操作系统分配内存,允许你的程序使用它。在基础语言中(例如 C ),这是一个开发者自己处理的明确操作。然而,在高级语言中,它已经为你处理了。   Use memory —— 现在你就可以使用之前分配好的内存了。当你在代码中使用变量时,读 和 写 的操作正在发生。   Release memory
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

win7+64位+Java学习基本软件安装+环境配置+eclipse(IDE)

一、下载安装JDK 1、安装包下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html 根据需要进行下载,我的电脑是win7+64位,所以选择版本:jdk-9.0.1_windows-x64_bin.exe 2、双击安装包 ,点击下一步,建议不要装在C盘,我一般习惯性将所有软件装在E盘下面,首先是安装JDK; 3、继续点击下一步,安装完jdk-9.0.1,会自动安装jre-9
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

windows系统下,在C#程序中自动安装字体

  在Windows系统中,原有自带的字体样式有限,有时候我们的程序会使用到个别稀有或系统不自带的字体。因此我们需要将字体打包到程序中,当程序启动时,检测系统是否有该字体,如果没有则安装该字体,也可以动态加载字体。   1.1、使用代码安装字体   注意:安装字体时,需要windows的管理员权限。 [DllImport("kernel32.dll", SetLastError = true)] public static extern int WriteProfileString(st
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

mvn-dependencies-vs-dependencyManagement

dependencyManagement里只是声明依赖,并不实现引入,因此子项目需要显式的声明需要用的依赖。 dependencies 相对于dependencyManagement,所有声明在dependencies里的依赖都会自动引入,并默认被所有的子项目继承。
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

Oracle数据库---触发器

SQL> --当我们对empnew执行删除操作之后,它就会出现一个提示信息,提示:这是删除操作! SQL> CREATE TRIGGER first_trigger 2 AFTER DELETE 3 ON empnew 4 BEGIN 5 DBMS_OUTPUT.put_line('这是删除的操作!'); 6 END; 7 / Trigger created SQL> SET SERVEROUTPUT ON SQL> DELETE FROM empnew WHERE empno = 7788;
分类: 其他 发布时间: 07-04 23:21 阅读次数: 0

Go程序设计语言——前言

Go是一种开源的程序设计语言,意在使得人们能够方便地构建简单、可靠、高效的软件。 Go语言及其配套工具集使得编译和执行既富有表达力又高效,而且使得程序员能够轻松写出可靠、健壮的程序。 Go语言实现并发功能的设施是全新高效的,实现数据抽象和面向对象的途径是极其灵活的,还实现了自动化的内存管理,或称为垃圾回收。
分类: 其他 发布时间: 07-04 23:11 阅读次数: 0

跟廖雪峰学习git(2.0)

git status 可以让我们时刻掌握仓库当前的状态 git diff 是查看difference,显示的格式正是Unix通用的diff格式 On branch master 在分支主机上 Changes to be committed: 要提交的更改 提交修改和提交新文件是一样的两步,第一步是:git add git add readme.txt 下一步,就可以放心地提交了: $ git commit -m "add distributed" 输出如下: [master b55662a]
分类: 其他 发布时间: 07-04 23:11 阅读次数: 0

《以太坊技术详解与实战》---第二章:以太坊架构与组成

以太坊整体架构 底层服务 以太坊中的区块、交易等数据最终是存在LevelDB数据库中的。分片优化使得可以并行验证交易,大大加快了区块的生成速度 核心层 以太坊虚拟机-EVM是智能合约的运行环境 顶层应用 以太坊的DApp通过Web3.js与智能合约层进行信息交换。是最接近用户的一层 共识算法用于解决点对点网络节点之间账本的一致性 区块 区块头:包含前一个区块的散列值(Prev_Hash)、时间戳(Timestamp)、随机数(Nonce)、Merkle树的根值(Tx_Root)和当前区块的散列
分类: 其他 发布时间: 07-04 23:11 阅读次数: 0

HTML:一种标记语言而不是编程语言(5.0)

HTML 图像 通过使用 HTML,可以在文档中显示图像。 图像标签(img)和源属性(Src) 在 HTML 中,图像由 <img> 标签定义。 <img> 是空标签,意思是说,它只包含属性,并且没有闭合标签。 要在页面上显示图像,你需要使用源属性(src)。src 指 "source"。源属性的值是图像的 URL 地址。 定义图像的语法是: <img src="url" /> URL 指存储图像的位置。如果名为 "bilibili.jpg" 的图像位于 http://www.bilibil
分类: 其他 发布时间: 07-04 23:11 阅读次数: 0