加载中
对协程的一些理解

协程 协程(coroutine)最早由Melvin Conway在1963年提出并实现,一句话定义:协程是用户态的轻量级的线程 线程和协程 线程和协程经常被放在一起比较;线程一旦被创建出来,编写者是无法决定什...

2016/12/09 18:11
4.7K
Java调用Lua

前言 最近一款游戏开发中,客户端基于lua语言开发,为了方便客户端调用原型数据,所有的原型数据都以lua表格的形式存放;对于服务器端的java语言就需要解析出lua中的数据, 转换为java对象。...

2016/12/08 23:03
1K
2PC/3PC到底是啥

讨论 提到2PC/3PC首先想到的是它是一致性协议,而且经常把它和Paxos协议放在一起比较,并且经常看到这样的说法"世上只有一种一致性算法,那就是Paxos",2PC/3PC并不是严格意义上的一致性协议...

2016/12/06 22:00
1K
Protostuff序列化分析

前言 最近项目中需要将业务对象直接序列化,然后存数据库;考虑到序列化、反序列化的时间以及生产文件的大小觉得Protobuf是一个很好的选择,但是Protobuf有的问题就是需要有一个.proto的描述...

2016/12/05 17:17
898
从ACID到CAP/BASE

由集中式系统到分布式系统的发展,事务的原则也有原先的ACID发展成了CAP/BASE。 ACID 事务(Transaction)是由一系列对系统中数据进行访问和更新的操作锁组成的一个程序执行逻辑单元(Unit),狭...

cap
2016/11/29 17:00
382
Disruptor和LinkedBlockingQueue性能对比以及分析

Disruptor和LinkedBlockingQueue简介 Disruptor是Java实现的用于线程间通信的消息组件,其核心是一个Lock-free(无锁)的Ringbuffer;LinkedBlockingQueue是java.util.concurrent包中提供的一个...

2016/11/23 23:35
780
Java CAS操作的ABA问题

CAS介绍 比较并交换(compare and swap, CAS),是原子操作的一种,可用于在多线程编程中实现不被打断的数据交换操作,从而避免多线程同时改写某一数据时由于执行顺序不确定性以及中断的不可预...

2016/11/22 16:41
1K
Netty通过MBean监控流量

Netty流量统计 netty专门提供了一个traffic包用于流量的统计,如下图所示: 分别提供了全局的GlobalTrafficShapingHandler和针对channel的ChannelTrafficShapingHandler,同时提供了Traffic...

2016/11/19 16:03
1K
Log4j1,Logback以及Log4j2性能测试对比

环境 jdk:1.7.0_79 cpu:i5-4570@3.20GHz 4核 eclipse:3.7 操作系统:win7 准备 1.log4j:1.7.21 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</arti...

2016/11/16 17:49
6K
Eclipse连接Hadoop分析的三种方式

Hadoop一般都部署在linux平台上,想让Hadoop执行我们写好的程序,首先需要在本地写好程序打包,然后上传到liunx,最后通过指定命令执行打包好的程序;一次两次还可以,如果进行频繁的调试是很...

2016/10/27 20:35
1K
Thrift代理Hbase

使用HBase的2种方式: 1.直接使用HBase客户端API,这样就限制了只能使用java语言 2.使用一些能够将请求转换成API的代理,这些代理将原始Java API包装成其他协议,这样客户端可以使用API提供的...

2016/09/22 17:08
678
Eclipse远程连接Hbase

安装Hadoop和Hbase hadoop和hbase版本的选择以及安装,参考之前的文章: Hadoop的版本选择和单机模式:http://codingo.xyz/index.php/2016/08/16/hadoop-stand-alone/ Hadoop的伪分布式模式:...

2016/09/14 17:16
851
Netty实现shadowsocks客户端

Shadowsocks是什么 shadowsocks是基于socks5协议实现的代理方式,分为服务器和客户端,双端之间通过使用指定的加密方式(AES,BlowFish,Table等)进行数据传输,有效的突破了GFW。 整个流程可以...

2016/09/08 19:17
2.9K
Netty模拟redis服务器

Redis的客户端与服务端采用叫做 RESP(Redis Serialization Protocol)的网络通信协议交换数据,客户端和服务器通过 TCP 连接来进行数据交互, 服务器默认的端口号为 6379 。客户端和服务器发送...

2016/08/28 10:23
3.8K
Vps虚拟化技术

国内外vps主机提供商所提供的主机大多是基于Xen、OpenVZ、KVM、Hyper-V、VMWare五种虚拟化技术。 1.Xen Xen 由剑桥大学开发,它是基于硬件的完全分割,物理上有多少的资源就只能分配多少资源...

2016/08/21 14:44
51
模拟登录流程

不管是抢购火车票还是电商网站上抢购商品,如果在节假日没有抢购工具是很难靠手动抢到的,所以市面上的抢购工具也是层出不穷,但流程都是差不多的,大体上分为2步: 1.模拟用户登录 2.发送订...

2016/08/13 20:06
1K
Redis存储对象

redis已经应用相当广泛了,但redis本身并没有直接存储对象的方法,我们可以通过转换对象的方式来存储对象。 大致总结了以下几种方案来存储对象: 方案一:序列化对象为二进制 使用redis的接口...

2016/08/04 18:00
1K
Redis集群方案

单机 redis最主要的适用场景:少量数据存储,高速读写访问,数据全部in-momery 的方式来保证高速访问,同时提供数据落地的功能。 分布式 随着用户量的增长,数据量随之增长,大型网站应用,热...

2016/08/03 20:35
228
Maven Assembly构建发布包

maven的出现更近一步的加深了大家对模块化开发的热忱,如何更好的打包,可以让我们工作更加高效,maven提供的Assembly插件能帮你构建一个完整的发布包,下面基于一个实例来发布一个zip包。 ...

2016/06/01 14:54
106
Java Instrumentation 进行热替换

使用 Instrumentation,开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助运行在 JVM 上的程序,甚至能够替换和修改某些类的定义。有了这样的功能,开发者就可以实现更为...

2016/05/21 22:00
530

没有更多内容

加载失败,请刷新页面

下一页

返回顶部
顶部