类装载器的工作机制:
1、装载,查找和导入Class文件
2、链接,进行校验、准备和解析步骤,其中解析步骤是可以省略的
(1)校验:检查载入class文件数据的准确性
(2)准备:给类的静态变量分配存储空间
(3)解析:将符号应用转为直接引用
3、初始化:对类的静态变量、静态代码块执行初始化
classloader 类型:
1、根装载器(非classlo……继续阅读 »
6年前 (2019-10-26) 2204浏览
0个赞
导读:不管是在单体应用时代还是分布式应用时代,一些保障我们数据安全的手段从来都未过时,只是底层实现发生了一些变化,今天我就来分享一下我司使用了六年的分布式锁方案,希望对一些同学有一些帮助。
关键词:分布式,并发,原子性
前言
提到数据一致性、操作原子性,诸如此类的一些与并发有关的词汇时不知道你第一时间会联想到什么呢?我相信大多数人可能会想到“锁”,为什么是锁……继续阅读 »
6年前 (2019-10-11) 1901浏览
0个赞
对象复活导致 finalize只执行一遍,后面不会继续执行
public class GC {
public static GC SAVE_HOOK = null;
public static void main(String[] args) throws InterruptedException {
// 新建对象,……继续阅读 »
6年前 (2019-06-18) 2195浏览 0评论
0个赞
最近使用Spring 的 RestTemplate 工具类请求接口的时候发现参数传递的一个坑,也就是当我们把参数封装在Map里面的时候,Map 的类型选择。 使用RestTemplate post请求的时候主要可以通过三种方式实现
post 请求方式
1、调用postForObject方法
2、使用postForEntity方法
3、调用exch……继续阅读 »
6年前 (2019-05-29) 3011浏览 0评论
0个赞
笔记
01. HTTP 入口解析
……继续阅读 »
6年前 (2019-04-14) 2551浏览 0评论
0个赞
到J2SE 1.4为止,一直无法在Java程序里定义实参个数可变的方法——因为Java要求实参(Arguments)和形参(Parameters)的数量和类型都必须逐一匹配,而形参的数目是在定义方法时就已经固定下来了。尽管可以通过重载机制,为同一个方法提供带有不同数量的形参的版本,但是这仍然不能达到让实参数量任意变化的目的。
然而,有些方法的语义要求它们必须……继续阅读 »
6年前 (2019-04-10) 2382浏览 0评论
0个赞
一、键值设计
1. key名设计
(1)【建议】: 可读性和可管理性
以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id
ugc : video:1
(2)【建议】:简洁性
保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如:
user:{uid}:friends:messages:{mid}简化为……继续阅读 »
6年前 (2019-04-08) 2145浏览 0评论
0个赞
转载
linux 启动文件及设置环境变量
系统级启动文件
====================================
1、/etc/rc 主启动文件,不要修改它
2、/etc/rc.conf 决定启动哪些系统自带的守护进程,不要修改它
3、/etc/rc.conf.local 如果你想干涉系统启动时启动的守护进程,请编辑本文件,本文件的内容……继续阅读 »
6年前 (2019-04-01) 2421浏览 0评论
0个赞
PHP注释规范
https://www.kancloud.cn/hongwei_php_team/code_standard/407709
……继续阅读 »
6年前 (2019-03-20) 2545浏览 0评论
1个赞
三高系统常用的架构模式
总结一下三高(高性能、高并发、高可用)系统在架构时常见的模式及技术。
面向互联网的三高系统,最关注的软件质量属性是:性能、可用性、伸缩性、扩展性、安全性。
而构建此类系统,最常见的架构模式有:横向分层、纵向分割、分布式化、集群化、使用缓存、使用异步模式、使用冗余、自动化(发布、部署、监控)。
具体来说,可以在不同层次常用的技术有:
前……继续阅读 »
6年前 (2019-03-14) 2984浏览 1评论
0个赞