金融级分布式架构,分布式系统数据层设计模式

2013 年 5 月,支付宝最后一台小型机下线,去 “IOE” 取得里程碑进展。支付宝(以及后来的蚂蚁金服)走的是一条跟传统金融行业不同的分布式架构之路。要基于普通硬件资源实现金融级的性能和可靠性,有不少难题要解决。应用层是无状态的,借助 SOA 架构还可以比较方便地扩展。而数据层就没那么简单了,...

2019-04-28 00:58:29

阅读数 299

评论数 0

偏向锁,轻量级锁,自旋锁,重量级锁的详细介绍

何为同步?JVM规范规定JVM基于进入和退出Monitor对象来实现方法同步和代码块同步,但两者的实现细节不一样。代码块同步是使用monitorenter和monitorexit指令实现,而方法同步是使用另外一种方式实现的,细节在JVM规范里并没有详细说明,但是方法的同步同样可以使用这两个指令来实...

2018-10-29 12:09:20

阅读数 148

评论数 0

虚拟内存,虚拟内存地址,物理内存,物理内存地址

在解释第一个问题之前,先说明一下计算机内存管理的中的四个名词:虚拟内存,虚拟内存地址,物理内存,物理内存地址。先说说为什么会有虚拟内存和物理内存的区别。正在运行的一个进程,他所需的内存是有可能大于内存条容量之和的,比如你的内存条是256M,你的程序却要创建一个2G的数据区,那么不是所有数据都能一起...

2018-04-02 17:43:49

阅读数 836

评论数 0

java agent基础原理

本文重点讲述javaagent的具体实现,因为它面向的是我们java程序员,而且agent都是用java编写的,不需要太多的c/c++编程基础,不过这篇文章里也会讲到JVMTIAgent(c实现的),因为javaagent的运行还是依赖于一个特殊的JVMTIAgent。对于javaagent或许大...

2018-04-02 13:28:20

阅读数 350

评论数 0

JVMTI开发教程之一个简单的Agent

概述JVM TI是JDK提供的一套用于开发JVM监控, 问题定位与性能调优工具的通用编程接口(API)。通过JVMTI,我们可以开发各式各样的JVMTI Agent。这个Agent的表现形式是一个以c/c++语言编写的动态共享库。JVMTI Agent原理: java启动或运行时,动态加载一个外部...

2018-04-02 11:44:26

阅读数 299

评论数 0

Java实现流控-Semaphore

网上类似文章很多,不多说,直接上代码:[java] view plain copy/**  * 流控类(Semaphore实现)  *   * @author ln  *  */  public class FlowControl {        /**      * 最大访问量      */...

2018-03-28 15:20:17

阅读数 372

评论数 0

缓存穿透,缓存失效(缓存雪崩)和缓存并发

缓存穿透: 通常缓存都是根据key去查找value,如果缓存中不存在,则去DB中查找,如果查找到了则将此key->value写入缓存。但是,对于某些一直不存在的数据,每次都无法在缓存中查找到,所以每次都要去DB中查找,DB中也找不到所以没法写入缓存,如此往复,便失去了缓存的意义。解决方法:对...

2018-03-28 12:14:51

阅读数 525

评论数 0

happens-before俗解

一直对happens-before和指令重排序存在误解甚至是不解,直到看到这篇文章。学习Java并发,到后面总会接触到happens-before偏序关系。初接触玩意儿简直就是不知所云,下面是经过一段时间折腾后个人对此的一点浅薄理解,希望对初接触的人有帮助。如有不正确之处,欢迎指正。synchro...

2018-03-27 20:47:32

阅读数 166

评论数 0

Linux 的硬链接与软链接

Linux 的文件与目录现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用。在 UNIX 系统中,操作系统为磁盘上的文本与图像、鼠标与键盘等输入设备及网络交互等 I/O 操作设计了一组通用 API,使他们被处理时均可统一使用字节流方式。换...

2018-03-19 16:35:27

阅读数 282

评论数 1

大话keepalive

大话keepalive我们说到keepalive的时候,需要先明确一点,这个keepalive说的是tcp的还是http的。tcp的keepalive是侧重在保持客户端和服务端的连接,一方会不定期发送心跳包给另一方,当一方端掉的时候,没有断掉的定时发送几次心跳包,如果间隔发送几次,对方都返回的是R...

2018-03-08 14:28:59

阅读数 117

评论数 0

mapreduce入门

一、mapreduce入门  1、什么是mapreduce     首先让我们来重温一下 hadoop 的四大组件:HDFS:分布式存储系统MapReduce:分布式计算系统YARN: hadoop 的资源调度系统Common: 以上三大组件的底层支撑组件,主要提供基础工具包和 RPC 框架等Ma...

2017-12-14 20:15:10

阅读数 723

评论数 0

linux下查看某一端口被哪个进程占用

方法1: lsof命令,即ls open fileslsof -i:端口号例如: 方法2: netstat命令netstat -tunpl | grep 端口号例如:

2017-12-14 16:35:22

阅读数 11398

评论数 0

Docker和虚拟机的区别

这是docker官网的图,可以看到虚拟化技术通过Hypervisor(虚拟机管理系统)为每个app启动一个Guest OS(客户机操作系统),也就是为每个app启动一个虚拟机。比较直观地说,vm通过Hypervisor对硬件资源进行虚拟化,而docker直接使用硬件资源,利用率上来看docker明...

2017-12-01 11:51:56

阅读数 29447

评论数 1

Linux下$#,$0,$1,$2,$3,$@,$*,$$,$?代表的含义

$# :传给脚本的参数个数; $0 :脚本名称; $n :n为数字,代表传给脚本的第n个参数; $@ :参数列表; $* :也是显示参数列表,与上一条命令不同的是,当在双引号里面时,”$*”表示一个参数,即”a b c”,而”$@”表示三个参数,即”a” “b” “c”; $$ :执行当前脚本的...

2017-11-29 14:11:17

阅读数 3415

评论数 0

进程间切换与线程间切换的区别

进程切换分两步1.切换页目录以使用新的地址空间2.切换内核栈和硬件上下文。对于linux来说,线程和进程的最大区别就在于地址空间。对于线程切换,第1步是不需要做的,第2是进程和线程切换都要做的。所以明显是进程切换代价大线程上下文切换和进程上下文切换一个最主要的区别是线程的切换虚拟内存空间依然是相同...

2017-10-10 19:44:01

阅读数 1534

评论数 0

二进制乘除法的实现

转自:http://www.cnblogs.com/zuoxiaolong/p/computer10.html引言   运算一直是程序运行当中一个重要的环节,而在二进制的运算过程当中,加法运算又是重中之重,它基本上奠定了二进制运算的基础。因为无论是减法还是乘法,都可以由加法运算来替代,唯有除法不能...

2017-09-25 11:49:20

阅读数 15000

评论数 0

Ubuntu异常关机后无法启动图形界面,提示 Welcome to emergency mode...的解决方法

输入密码登录root账户; 执行命令 journalctl -xb 查看日志输出,搜索关键字”fsck failed”(输入/,然后输入关键字后回车,通过N/n查看上一个/下一个匹配项),找到错误相关的设备,例如我的是/dev/sda8; 执行命令 umount /dev/sda8 (对应自己出错...

2017-09-25 11:05:56

阅读数 4834

评论数 2

22. Generate Parentheses(生成括号)

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.For example, given n = 3, a solution set is:[ ...

2017-09-21 20:39:48

阅读数 880

评论数 0

18. 4Sum(求数组中和为指定值的4个数)

Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array whi...

2017-09-20 22:27:20

阅读数 913

评论数 0

17. Letter Combinations of a Phone Number(根据手机按键求字母的组合)

Given a digit string, return all possible letter combinations that the number could represent.A mapping of digit to letters (just like on the telepho...

2017-09-19 11:48:55

阅读数 892

评论数 0

提示
确定要删除当前文章?
取消 删除