大雁小鱼的博客

Talk is cheap,show me your code please.

Redis持久化机制

Redis有2种持久化机制,分别是RDB和AOF RDB持久化机制 RDB持久化机制的原理 主要用于redis数据周期性备份使用,这种机制会对内存数据做一个快照,生成一个文件存储在磁盘上,运维人员可以将这个文件远程拷贝到其他机器上备份起来,在需要的时候可以拿来复原内存数据(人们常说的冷备)。 RDB持久化机制的优点: 读取文件中的数据还原数据比AOF快 RDB持久化机制的缺点: 由于...

Iptables学习

iptables学习 命令 iptables [-t table] {-A|-D} chain rule-specification table主要有 filter(默认,也是就是没有使用-t参数时默认的) net mangle raw -A就是添加的意思 -D就是删除的意思 chain主要有INPUT OUTPUT target主要有DROP ACCEPT rule-spec...

网络的分层设计的理解

网络协议的设计是一项很复杂的事情,但不知读者是否知道这样一句话:在计算机领域,分层能解决绝大多数的设计难题,网络协议的设计也是如此 网络协议从一开始就是分层设计的, 从上面这幅图中可以看出,网络分为应用层、运输层、网络层和链路层。当前我再学习链路层,所以本文我就说一说链路层的情况。 在TCP/IP协议族中,链路层主要有3个目的: 为模块发送和接收IP数据报 为ARP模块发送ARP...

Dubbo限流

在面试dubbo的时候,会被问到Dubbo限流是如何做的这个问题,今天我就来说说这个问题。 在说之前,要说明一件事情,要想理解所有的与dubbo相关的文章,首先就是要理解dubbo内部是如何运行的,也就是它的机制如何,同样,要想理解本文,首先得理解dubbo的运行机制,由于这块内容非常庞大,无法在此文中讲解,所以我假设读者是在已经理解dubbo原理的基础上阅读本文的。 Dubbo中的限流是...

死锁分析

死锁常用面试知识整理

面试的时候会问到死锁问题,下面我就编写一个死锁程序来进行分析。 要想编写一个100%死锁的程序有点难度,大多数人编写的死锁程序是使用Thread.sleep函数来实现,但大家都明白,其实由于最终的线程调度取决于OS调度器,而它如何执行调度是不确定的,所以没有100%死锁的程序,只能尽可能死锁。 下面这个例子就是一个在大多数运行时死锁的程序。 package com.iydsj.serve...

写代码时遇到的坑

在编写代码过程中有时会遇到非常恶心的代码,这些代码在正常情况下是可以运行的,但在异常情况下会出现你事先没有想到的情况,让你措手不及。作为一个合格的程序员,应当要对各种异常情况有一个清晰的认识,知道存在哪些异常情况,知道这些异常情况会对系统产生怎样的影响,这很大程度上靠经验和自我学习。以下尽我所能罗列一些坑代码 被拉长的数据库事务 @Transactional void f...

事务上下文

同一个类内部直接调用含有事务注解的方法,其实是跳过事务代理的,此时事务是不起作用的,解决方法是: <aop:aspectj-autoproxy expose-proxy="true"/> ((XXX)AopContext.currentProxy()).method();

Mac权限不足的解决方法

Mac系统中存在一个Rootless机制,这让我们在root权限下也不能随心所欲得读写任意路径,在某些特殊情况下我们需要关闭Rootless,可以这样操作: 重启按住Command+R,进入恢复模式,打开终端 输入命令csrutil disable reboot 打开的命令是csrutil enable

数据结构工具

数据结构工具 这是一款不错的学习数据结构的工具 https://www.cs.usfca.edu/~galles/visualization/Algorithms.html

项目总结

项目总结 我接触过一个学生跑步APP项目,现在对该项目中用到的安全技术要点做一些自己的总结和整理,我对其中有些细节做了改良,小弟很菜,还望高手勿喷。 概要 首先介绍一下该项目。随着国家对大学生体育健康素质的重视,要求各个高等教育学府增加对学生体育健康素质的考核,比如要求学生每周参加一定量的体育运动。这个政策对大学老师是个考验,如何监督学生的体育运动呢?于是学生跑步APP项目诞生了,它是一款...