12 jimmee

尚未进行身份认证

暂无相关简介

等级
TA的排名 9w+

[转载]并发之痛 Thread,Goroutine,Actor

转自 http://jolestar.com/parallel-programming-model-thread-goroutine-actor/ 本文基于我在2月27日Gopher北京聚会演讲整理而成,进行了一些补充以及调整。投稿给《高可用架构》公众号首发。聊这个话题之前,先梳理下两个概念,几乎所有讲并发的文章都要先讲这两个概念:并发(concurrency) 并发的关...

2017-04-06 19:21:10

[转载]Why size_t matters

 http://www.embedded.com/electronics-blogs/programming-pointers/4026076/Why-size-t-matters Using size_t appropriately can improve the portability, efficiency, or readability of your code. Maybe...

2017-04-01 08:02:20

【转载】RVO V.S. std::move

Return Value OptimizationReturn value optimization, simply RVO, is a compiler optimization technique that allows the compiler to construct the return value of a function at the call site. The techn...

2016-08-31 22:11:41

paxos的实现源码分析(以keyspace的paxoslease的实现为例子)

      看过太多的paxos的算法的介绍,paxos个人认为没有那么难,但是为啥那么难懂呢?因为大家都是根据理论讨论,作为一个程序员,源码下无秘密,因此我结合keyspace的paxos lease的源码实现来分析一下paxos的算法(paxos的直接实现会存在活锁问题,因此大多数的实现都是通过一个paxos的lease算法选择一个主proposer,可以看成一轮paxos的实现)。 ...

2016-07-26 22:18:16

JVM动态调整字节码

粗略的点开btrace的源码看了一下,实际上他只是封装了JDK自带的功能而已 1. attach client到java进程  VirtualMachine vm = null; if (debug) { debugPrint("attaching to " + pid); } ...

2016-04-14 19:27:03

java字节码常量池处理说明

1. 根据java的字节码格式说明,常量池中每一项的大小不一样的。运行时,若要通过数组索引获取具体的一项时,必须要经过一定的处理才能根据数组下标进行处理,具体的实现原理实际上就是空间换时间,可以参考kvm的实现: 每一项的定义,采用的是union的定义(会取最大的字节数进行内存分配) /* Each of these represents one entry in the c...

2016-04-13 23:23:10

JPEG 简易文档 V2.15【转载】

JPEG 简易文档 V2.15------------------------------ 初稿写于 2000.1.23 最后修订 2003.12.5 2007.7.16 作者: 云风 Email: cloudwu (a) gmail.com Homepage: ht...

2016-04-10 16:35:46

Mac OSX 10.10 Yosemite编译OpenJDK 8

编译时间:2016-04-03系统版本:Mac OS X Yosemite 10.10.2编译OpenJDK版本:JDK8相关软件版本:            •          XCode版本:Version 5.1.1 (5B1008)            •          JDK版本:1.8.0_51            •          软件管理工...

2016-04-03 18:14:04

BIT DEPTH TUTORIAL

BIT DEPTH TUTORIALBit depth quantifies how many unique colors are available in an image's color palette in terms of the number of 0's and 1's, or "bits," which are used to specify each color. This ...

2016-03-30 23:04:47

JPEG 原理详细实例分析及其在嵌入式 Linux 中的应用 【转载】

级别: 中级余 涛 (yut616@21cn.com), 高级软件工程师2008 年 9 月 04 日作为一个基本的图像压缩方式,JPEG 已经得到了广泛的运用,但 JPEG 相关的基本原理,却经常被忽视,或解释得很不确切。这里我们详细讨论一下 JPEG 的编码原理,并结合实例来给出一个更加感性的认识。JPEG 编码的详细过程有着诸多的信息可以给我们巨大的启发,我们在这里讨论的就是要...

2016-03-30 22:18:53

同时管理多个ssh私钥【转载】

在设置github的时候,官方的说明文档要求备份当前的id_rsa,然后生成一份新的私钥用于github的登陆。如果真这样做,那么新的私钥是无法再继续登陆之前的机器的。这种方法有点暴力…还好ssh可以让我们通过不同的私钥来登陆不同的域。首先,在新增私钥的时候,通过指定不同的文件名来生成不同的私钥文件ssh-keygen -t rsa -f ~/.ssh/id_rsa.work ...

2016-03-27 09:13:01

SSH原理与运用【转载】

SSH是每一台Linux电脑的标准配置。随着Linux设备从电脑逐渐扩展到手机、外设和家用电器,SSH的使用范围也越来越广。不仅程序员离不开它,很多普通用户也每天使用。SSH具备多种功能,可以用于很多场合。有些事情,没有它就是办不成。本文是我的学习笔记,总结和解释了SSH的常见用法,希望对大家有用。虽然本文内容只涉及初级应用,较为简单,但是需要读者具备最基本的"Shell知识"和了解...

2016-03-27 09:12:41

MySQL日志——Undo | Redo【转载】

InnoDB 有两块非常重要的日志,一个是undo log,另外一个是redo log,前者用来保证事务的原子性以及InnoDB的MVCC,后者用来保证事务的持久性。和大多数关系型数据库一样,InnoDB记录了对数据文件的物理更改,并保证总是日志先行,也就是所谓的WAL(Write Ahead Log),即在持久化数据文件前,保证之前的redo日志已经写到磁盘一、概念1、Innodb C...

2016-03-26 16:00:06

由浅入深理解索引的实现【转载】

这篇文章是介绍MySQL数据库中的索引是如何根据需求一步步演变最终成为B+树结构的以及针对B+树索引的查询,插入,删除,更新等操作的处理方法。Oracle和DB2数据库索引的实现基本上也是大同小异的。文章写得很通俗易懂,就转在这了。关于B+树和索引内部结构可以参考:《B 树、B- 树、B+ 树和B* 树》和《深入理解DB2索引(Index)》。 00 – 背景知识- B-Tree &...

2016-03-26 15:17:56

物理IO与逻辑IO

IO性能对于一个系统的影响是至关重要的。一个系统经过多项优化以后,瓶颈往往落在数据库;而数据库经过多种优化以后,瓶颈最终会落到IO。而IO性能的发展,明显落后于CPU的发展。Memchached也好,NoSql也好,这些流行技术的背后都在直接或者间接地回避IO瓶颈,从而提高系统性能。 IO系统的分层:   三层结构上图层次比较多,但总的就是三部分。磁...

2016-03-19 21:30:01

MySQL查询优化之explain的深入解析【转载】

可参考mysql的官方文档:http://dev.mysql.com/doc/refman/5.7/en/explain-output.html在分析查询性能时,考虑EXPLAIN关键字同样很管用。EXPLAIN关键字一般放在SELECT查询语句的前面,用于描述MySQL如何执行查询操作、以及MySQL成功返回结果集需要执行的行数。explain 可以帮助我们分析 select 语句,让我...

2016-01-09 23:05:56

MySQL索引实验-主键索引一定比辅助索引快吗?【转载】

一、在一个表执行了分别执行了两条语句:a.SELECT ID FROM MNG_ROLE ORDER BY ID; -- 耗时37秒b.SELECT ID FROM MNG_ROLE ORDER BY ID, NAME; -- 耗时0.01秒c.SELECT ID FROM MNG_ROLE; -- 耗时0.22秒二、表结构如下,插入3万条数据,而且REMARK和RESERVER字段都是填满数据...

2016-01-09 22:53:27

C语言的异常机制--setjump()和longjump()实现【转载】

   goto语句可以用于同一个函数内异常处理,不幸的是,goto是本地的,它只能跳到所在函数内部的标号上。为了解决这个限制,C函数库提供了setjmp()和longjmp()函数,它们分别承担非局部标号和goto作用。头文件<setjmp.h>申明了这些函数及同时所需的jmp_buf数据类型。    1.setjmp(jbuf)设置“jump”点,用正确的程序上下文填充jmp_bu...

2015-12-20 08:48:12

运用Autoconf和Automake生成Makefile的学习之路【转载】

一、    相关概念的介绍什么是Makefile?怎么书写Makefile?竟然有工具可以自动生成Makefile?怎么生成啊?开始的时候,我有这么多疑问,所以,必须得先把基本的概念搞个清楚。 1. Makefile  makefile用来定义整个工程的编译规则。一个工程中的源文件计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件...

2015-12-12 15:16:37

mac下autoconf automake安装【转载】

curl -O http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gztar -xzvf m4-1.4.13.tar.gzcd m4-1.4.13./configure –prefix=/usr/localmakesudo make installcd ..curl -O http://mirrors.kernel.org/gnu/autoconf...

2015-12-12 14:05:54

查看更多

勋章 我的勋章
    暂无奖章