- 博客(23)
- 收藏
- 关注
原创 curl下载和上传
cURL 概述cURL 是一个利用 URL 语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称 cURL 为下载工具。常见用法下载文件下载文件 -o,自定义路径和文件名:# filename可以包含路径,自定义路径和文件名curl -o filename http:www.linux.com/dodo1.JPG下载文件 -O,使用远程文件名:# 大写O,以服务器上的名称保存文件到本地curl -O http://www
2021-10-22 11:23:51 4084 1
原创 scp命令 上传下载文件 java实现
文章目录概要语法参数说明使用实例程序调用概要scp 是 secure copy 的缩写,是基于ssh登录进行安全验证的远程文件拷贝命令。scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。语法usage: scp [-346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] source ... targ
2021-10-20 18:50:57 816
原创 zookeeper 链接异常 java.lang.IllegalStateException: zookeeper not connected
文章目录问题解决过程设置超时时间修改host文件问题内网下,java程序不能正常链接zookeeper,使用GUI程序,可以正常链接zookeeper java.lang.IllegalStateException: zookeeper not connected at org.apache.dubbo.remoting.zookeeper.curator.CuratorZookeeperClient.<init>(CuratorZookeeperClient.java:83) ~[du
2021-10-18 20:47:54 1665
原创 Redis 独立功能的实现
发布与订阅将消息发给频道的订阅者和模式的订阅者: pubsub channels // 返回服务器被订阅的所有频道 pubsub channels "news.[is]" // 返回和 “news.[is]” 匹配的频道 pubsub numsub channel // 返回频道 channel(特定某一个)的订阅者数量 pubsub numpat // 返回服务器当前被订阅模式的数量事务事务的执行流程如下:监视器...
2021-03-31 23:18:16 82
原创 Redis 多机服务器 复制、哨兵、集群
文章目录主从复制设置主从服务器旧版复制功能的实现新版复制功能的实现心跳检测重点回顾哨兵(Sentinel)集群主从复制设置主从服务器使用 slaveof ip port 命令,将本服务器设置为参数对应服务器的从服务器。步骤如下:设置主服务器的地址和端口,首先将主服务器的IP和端口保存到服务器状态的masterhost和masterport建立套接字连接发送ping命令身份验证发送端口信息同步命令传播旧版复制功能的实现同步的步骤如下。旧版中,如果从服务器断线,重连时,也会进行完
2021-03-31 11:36:00 491
原创 redis 的 RDB 和 AOF
文章目录RDBRDB 文件的创建和载入自动间隔保存RDB 文件结构分析 RDB 文件重点AOFRDBRedis 是一个内存数据库,数据信息存储在内存中,一旦服务器进程退出,数据全部消失。为了解决这个问题,Redis提供了 RDB 持久化功能,可以将数据保存到 RDB 文件中。RDB 文件的创建和载入自动间隔保存RDB 文件结构分析 RDB 文件重点AOF...
2021-03-30 14:49:14 326
原创 redis中的对象
五种对象对象总共有五种,可以用type 命令查看数据库键对应的值对象的类型。不同类型可能对应不同的编码格式,可以使用 object encoding key 来查看。embstr编码的字符串对象是只读的。如果要修改,会先转换编码为 raw,然后修改。同时,对象就变成了 raw 类型的。字符串对象可以使用 append 命令,将非 raw 类型的对象转化为 raw类型。列表对象列表对象的编码可以是 ziplist 或者 linkedlist。哈希对象哈西对象的编码可以是 zip
2021-03-29 22:08:09 286
原创 redis底层数据结构2——跳跃表、压缩列表、整数集合
文章目录跳跃表结构整数集合压缩列表跳跃表跳跃表(skiplist)是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。跳跃表支持平均O(logN)、最坏O(N)复杂度的节点查找,还可以通过顺序性操作来批量处理节点。在大部分情况下,跳跃表的效率可以和平衡树相媲美,并且因为跳跃表的实现比平衡树要来得更为简单,所以有不少程序都使用跳跃表来代替平衡树。Redis使用跳跃表作为有序集合键的底层实现之一,如果一个有序集合包含的元素数量比较多,又或者有序集合中元素的成员
2021-03-29 20:19:12 204
原创 redis底层数据结构1——简单动态字符串、链表、字典
文章目录简单动态字符串SDS 的结构SDS 和C字符串的区别(优势)常数复杂度获取字符串长度杜绝缓冲区溢出减少修改字符串时带来的内存分配次数空间预分配惰性空间释放二进制安全兼容部分C字符串函数链表链表结构字典结构实现哈希算法解决键冲突rehash哈希表扩展和述所的条件rehash 的过程渐进式 rehash简单动态字符串为了提高效率,redis 以空间换时间为代价,创建了一种简单动态字符串(simple dynamic string,SDS)。在redis里面,C字符串只会作为字符串字面量用在无需对字
2021-03-29 16:13:53 384
原创 面向对象的三个基本特征:封装、继承、多态及常见问题
面向对象的三个基本特征:封装、继承、多态及常见问题文章目录面向对象的三个基本特征:封装、继承、多态及常见问题面向对象和面向过程的区别面向过程面向对象封装继承多态常见问题接口和抽象类,继承和实现重写和重载父类引用、子类引用、父类对象和子类对象父类子类中不同内容的初始化顺序本文介绍面向对象的三个基本特征:封装、继承、多态,以及常见问题如:父类子类初始化顺序,接口和抽象类,对象和引用等。面向对象和面向过程的区别面向过程面向过程是具体化的,流程化的,解决一个问题,你需要一步一步的分析,一步一步的实现。优
2021-03-13 00:15:29 503
原创 linux命令行大于号、小于号、双大于号、双小于号
文章目录实例测试< 和 ><< 和 >>总结实例测试< 和 >使用 cat > test.txt,向文件中写入数据。然后使用 cat < test.txt 查看文件数据,和 cat test.txt 作用类似。~] cat > test.txt123^C~] cat < test.txt 123再次使用 cat > test.txt,可以看到,文件数据被覆盖。~] cat > test.txt456
2021-03-11 11:29:16 7505 2
原创 redis 分布式锁
文章目录前言实现方式方案1 setnx + setex方案2 set key value nx ex方案3 random value + lua script前言Redis(Remote Dictionary Server) 是一个使用 C 语言编写的,开源的(BSD许可)高性能非关系型(NoSQL)的键值对数据库。Redis 可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串、列表、集合、散列表、有序集合。与传统数据库不同,Redis 的数据是存在内存中的,所
2021-03-10 20:42:02 288 1
原创 算法导论阅读笔记——第16章 贪心算法
第16章 贪心算法定义及原理活动选择问题问题描述及分析赫夫曼编码定义及原理和动态规划算法相比,贪心算法是一种更简单、更高效的算法。它在每一步都住处当时看起来最佳的选择,也就是说,它总是做出局部最优的选择,寄希望于这样的选择能导出全局最优解。贪心算法并不能保证得到最优解,但是对于一些问题,确实可以得到最优解。活动选择问题问题描述及分析假定有一个n个活动的集合S={a1,a2,……,an}。这些活动都使用同一个资源,而这个资源在同一时间只能被一个活动使用(比如教室)。每一个活动ai有一个开始时间si
2020-09-06 17:25:32 384
原创 算法导论阅读笔记——第15章 动态规划
第15章 动态规划定义及原理钢条切割问题最长公共子序列最优二叉搜索树定义及原理动态规划和分治法类似,都是通过组合子问题的解来求解原问题。动态规划应用于子问题重叠的情况,及不同的子问题具有公共的子子问题。在这种情况下,分治法会做许多不必要的工作,重复计算求解那些公共子子问题。而动态规划只求解一次,避免了不必要的工作。我们通常按照下面四个步骤来设置动态规划算法:刻画一个最优解的结构特征递归地定义最优解的值计算最优解的值,通常采用自底向上的方法利用计算出的信息构造一个最优解前三步是动态规划算法
2020-07-11 22:21:31 534
原创 算法导论阅读笔记——第一部分 基础知识
第一章 基础知识算法定义思考题算法定义算法就是把输入转化为输出的计算过程。如果对所有输入,算法都能输出正确的结果,那么这个算法就是正确的。反之,输出不正确的结果,或者算法本身导致死循环,这个算法就是不正确的。只要其错误率可控,不正确的算法也可能是有用的(如大素数算法)。思考题1-1 运行时间的比较。假设求解问题的算法需要f(n)毫秒,对下表中的每个函数f(n)和时间t,确定可以在时间t内求解的问题的最大规模n。1秒钟1分钟1小时1天1月1年1世纪lgn1秒钟
2020-06-20 16:41:00 684
原创 git基础使用
廖雪峰:https://www.liaoxuefeng.com/wiki/896043488029600一文讲透 Git 底层数据结构和原理:https://mp.weixin.qq.com/s/l5JU9e6_HrS_-ixiBIrqsAGit命令参考手册:https://www.oschina.net/question/156344_148084Git和Github:https://blog.csdn.net/xudailong_blog/category_7275795.htmlhttps:/
2020-06-16 20:21:28 312
原创 Cron Expressions 详解
cron表达式被用来配置CronTrigger实例,用法如下: // 建立一个触发器,每隔两分钟,每天上午8点至下午5点之间: trigger = newTrigger() .withIdentity("trigger3", "group1") .withSchedule(cronSchedule("0 0/2 8-17 * * ?")) .forJob("myJob", "group1")
2020-05-27 00:54:49 1417
原创 [java] Comparator和Comparable的用法和区别
ComparatorComparable位置java.utiljava.lang使用在类外实现接口在类内实现接口重写方法int compareTo(T o)int compare(T o1, T o2)排序方法Collections.sort(List list)Collections.sort(List list, Comparator<? super T> c)用法示例:public class SortTest {class...
2020-05-26 00:23:27 143
原创 foreach内删除元素详解 ConcurrentModificationException抛出条件
// foreach内删除元素,抛出ConcurrentModificationException异常 List<String> list = new ArrayList<String>(); list.add("1"); list.add("2"); list.add("3"); for (String temp : list) { if ("3".equals(temp)) { ..
2020-05-19 20:51:22 435
原创 idea 链接github ping github.com超时
现象:idea直接添加github账号失败,ping github.com服务器超时解决方案:修改host文件(C:\Windows\System32\drivers\etc)199.232.69.194 github.com13.229.188.59 github.global.ssl.fastly.net13.229.188.59是执行ping github.com命令时,展示出的IP125.120.42.110的查询网站为:https://fastly.net.ipaddress.com/
2020-05-15 00:21:13 639
原创 win10 装系统后,关闭自动更新与磁盘利用率100%问题解决
文章目录1)关闭自动更新2)磁盘利用率问题解决1)关闭自动更新2)磁盘利用率问题解决
2020-03-08 23:05:01 884
原创 连接到服务器时出错 无法打开到 SQL Server 的连接
错误描述:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: Named Pipes Provider, error: 40 - 无法打开到 SQL Server 的连接) (Microsoft SQL Server,错误: 2)解决方法:打开服务,找到MS...
2018-05-09 08:43:31 3591
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人