java多线程    Java入门    vsftp    ftp    linux配置    centos    FRP教程    HBase    Html5缓存    webp    zabbix    分布式    neo4j图数据库    

游戏上瘾如何戒掉游戏

MAC 移除quarantine属性

苹果系统有一个GateKeeper保护机制(自 OSX 10.5 加入)。从互联网上下载来的文件,会被自动打上com.apple.quarantine标志,翻译过来就是免疫隔离,系统根据这个附加属性对这个文件作出限制。 在安装软件的时候需要移除quarantine属性,步骤如下: 1、开启任何来源代码 打开终端,输入sudo spctl --master-disable然后回车,输入电脑密码后回 More


redis的分布式锁实现

总结: 单机互斥锁 1. SET KEY Value PX milliseconds NX SET 商品ID 线程ID PX 30000 NX 1.PX 防止锁过期,NX互斥 2.线程ID 记录下来,作为唯一值 3.释放锁验证value,不能让别人的线程,解了别人的锁。 2. 集群锁 RedLock 假设集群5个节点 P1.获取当前Unix时间,毫秒为单位 P2.依次从5台机器,相同的KEY 和 唯一性的Value请求锁,为每 More


REDIS缓存穿透,缓存击穿,缓存雪崩

REDIS缓存穿透,缓存击穿,缓存雪崩原因+解决方案 缓存穿透:程序绕过缓存,不停的查询数据库 key对应的数据在数据源并不存在,每次针对此key的请求从缓存获取不到,请求都会到数据源,从而可能压垮数据源。比如用一个不存在的用户id获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库。 举例子:查询id=-1 这条数据库不 More


订单过期30分钟,不支付自动取消方案

订单过期30分钟,不支付自动取消方案 1. 扫描数据库 最简单,粗暴的办法。开个任务,每3分钟扫描一次数据库 select orderid from table where .... 服务器开启crontab 定时扫描 优点:容易实现,支持集群服务 缺点: 1. 服务器消耗大 2. 存在延迟,并不是精确的3分钟 3. 如果订单量很大,比如1000万条没有付款,数据库压力很大 2. JDK延迟 More


JVM运行基础原理

1 什么是JVM 1.1 定义: JVM:Java Virtual Machine 直接翻译java虚拟机,就是java虚拟了一个机器,安装在你的电脑上,java跨平台属性全靠JVM Java Runtime Environment (JRE) is the implementation of the Java Virtual Machine (JVM). JVM analyze the bytecode, interprets it, and execute the same bytecode to display the output. JRE是一个JVM的 More


JAVA 堆栈存储运行例子

寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。) 堆:存放所有new出来的对象。 静态域:存放静态成员(static定义的) 常量池:存放字符串常量和基本类型常量(public More


Java中对象和对象引用的区别,引用、指向理解

Java中对象和对象引用的区别,引用、指向是什么意思 new Person(); //一个对象 Person p1 = new Person();//p1 是一个对象的引用 P1指向那个对象new Person() Java的变量分为两大类:基本数据类型和引用数据类型。 其中基本类型变量有四类8种:byte short int long float double char boolean,除了8种基本数据类型变量,其他变量都是引用数据类型,如类、接口 More


java堆与栈 java String分配内存空间(详解)

栈内存 堆内存 基础类型,对象引用(堆内存地址) 由new创建的对象和数组 存取速度快 相对于栈内存较慢 数据大小声明周期必须确定 分配的内存由java虚拟机自动垃圾回收器管理。动态分配内存大小 共享特性栈中如果有字符串,则直接引用 如果没有,开辟新的空间存入值 每new一次在堆内存中生成一个新的对象。 创建之后值可 More


大型电商网站系统架构演变过程

小的时候,只有一台服务器,把程序,文件,数据库丢在一起 2. 流量变大了,买了三台服务器,把程序,文件,数据库分开 3. 为了加速,开始加入缓存服务器组,redis,memcached 等 4. 流量进一步增加,开始用负载均衡,把应用服务器,改为一组,使用LVS,NGINX减少单机应用压力 5. 数据库进行读写分离,主库负责写,多台从库负责 More


CDN的理解

CDN 可以有效解决大规模网络流量问题,比如一天上亿PV了,本地集群也做了一主多从,但是主机器也给你搞崩溃了。如果一个IP只对了一个机器,那么这个机器一天上亿,一定崩 还好啊,客户访问的不是IP,是域名,一个域名可不是只能对应一个主机,一个域名可以对应很多主机 CDN简单的比方: CDN就是相当于遍布各个地方的仓储一样,打一个比方,如果你想以最快的速度 More