首页
资讯
Java小组
基础技术
互联网
数据库
朗度云
基于twitter雪花算法的分布式ID —— 服务器篇
分类:
互联网
阅读:
725
次
发表于:
2017-01-21
作者:
锋宇
为了能让其它系统能够使用生成的分布式ID,我用Netty框架写了一个服务器DistributedID,用于提供分布式ID的服务。
twitter的雪花算法实现(Java)
分类:
互联网
阅读:
1,384
次
发表于:
2017-01-21
作者:
锋宇
SnowFlake算法生成的ID大致上是按照时间递增的,用在分布式系统中时,需要注意数据中心标识和机器标识必须唯一,这样就能保证每个节点生成的ID都是唯一的。
Redis实现分布式锁方案二(Java源码)
分类:
互联网
阅读:
191
次
发表于:
2016-12-08
作者:
锋宇
一个实现分布式锁的方案,它使用了Redis的【set key_lock value NX PX 失效时间】命令,NX表示只有在key_lock不存在时才能set成功,PX表示设置key_lock的失效时间
Redis实现分布式锁方案一(Java源码)
分类:
互联网
阅读:
285
次
发表于:
2016-12-08
作者:
锋宇
在分布式环境中,当需要对共享资源进行互斥访问时就需要使用分布式锁,分布式锁就是一种用于分布式环境下的、保证共享资源被不同进程互斥访问的技术手段。 由于redis的单线程特性,以及提供setnx、getset的命令,可以很方便地实现分布式锁。
Linux环境下安装配置Maven
分类:
基础技术
阅读:
45
次
发表于:
2016-12-08
作者:
锋宇
Linux环境下安装配置Maven,打开网页http://maven.apache.org/download.cgi 找到你想要下载的maven版本,一般都是选择最新的版本
原码, 反码, 补码详解
分类:
基础技术
阅读:
41
次
发表于:
2016-11-27
作者:
锋宇
正数的补码就是其本身, 负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)
Netty5源码之LengthFieldBasedFrameDecoder
分类:
Java小组
阅读:
444
次
发表于:
2016-10-02
作者:
锋宇
于以消息长度标识的包协议,首先要知道消息的长度字段,再通过长度字段来读取相应长度的字节,这样才能获得完整的包消息。
TCP粘包与拆包分析及解决之道
分类:
互联网
阅读:
184
次
发表于:
2016-10-01
作者:
锋宇
TCP层在网络传输过程可能会把几个小的协议包合并成一个大的包来发送(粘包),也可能把一个完整的协议包分拆成几个小的包分开发送(拆包)。
Netty5源码之LineBasedFrameDecoder
分类:
Java小组
阅读:
252
次
发表于:
2016-09-28
作者:
锋宇
LineBasedFrameDecoder是一种解码器,专门用于以换行符为分割的消息的解码,能够处理n和rn的换行符。
JVM系列之内存泄漏
分类:
Java小组
阅读:
76
次
发表于:
2016-09-27
作者:
锋宇
在Java中,内存泄漏是指程序中存在某些对象已经不会再被使用,但由于仍被其它对象引用而造成内存不能被及时释放,从而造成内存被浪费。
Netty文档之引用计数对象
分类:
Java小组
阅读:
164
次
发表于:
2016-09-27
作者:
锋宇
ByteBuf是最值得关注的一种缓存类型,它使用引用计数来提升分配内存和释放内存的性能
Linux运维之用十条命令在一分钟内检查Linux服务器性能
分类:
基础技术
阅读:
185
次
发表于:
2016-09-26
作者:
锋宇
这些命令的输出,有助于快速定位性能瓶颈,检查出所有资源(CPU、内存、磁盘IO等)的利用率(utilization)、饱和度(saturation)和错误(error)度量,也就是所谓的USE方法。
Intellij idea生成类图和导出类图
分类:
基础技术
阅读:
3,967
次
发表于:
2016-09-26
作者:
锋宇
IDEA作为一款强大的编辑器,提供了生成类图和导出类图的功能。
Intellij 14快捷键
分类:
基础技术
阅读:
65
次
发表于:
2016-09-26
作者:
锋宇
IDEA 全称IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的。
《2048》游戏Java版本+源码(二)
分类:
Java小组
阅读:
1,089
次
发表于:
2016-09-24
作者:
锋宇
实现的原理类似于做一个心脏跳动的动画,心脏跳动时,心脏渐渐地变大,到达一定的大小后,又渐渐地变小,直到恢复为原来的大小。
如何在Swing GUI中加入音效
分类:
Java小组
阅读:
68
次
发表于:
2016-09-24
作者:
锋宇
Swing是单线程的,播放音效是一个耗时的过程,所以不要在主线程中直接播放音效,否则会阻塞界面的响应。正确的方法应该是在子线程中播放音效,尽可能地提高界面的体验。
《2048》游戏Java版本+源码(一)
分类:
Java小组
阅读:
1,806
次
发表于:
2016-09-24
作者:
锋宇
用一个4*4的二维数组来存储所有瓦片,这样游戏的整个过程就可以抽象为对这个二维数组数据的控制,游戏界面就可以根据数组的数据绘制出来。
java基础-注解Annotation原理和用法
分类:
Java小组
阅读:
219
次
发表于:
2016-09-24
作者:
锋宇
注解就是元数据,一种描述数据的数据,通俗一点就是为程序的元素(类、方法、成员变量)加上更直观的说明,这些说明信息是与程序的业务逻辑无关的。但是,我们可以通过java的反射机制来获取Annotation的信息,并根据这些信息来对程序进行赋值、分发等操作。
俄罗斯方块小游戏的Java实现(二)
分类:
Java小组
阅读:
599
次
发表于:
2016-09-24
作者:
锋宇
基本的规则是移动、旋转和摆放游戏自动输出的各种方块,使之排列成完整的一行或多行并且消除得分。
俄罗斯方块小游戏的Java实现(一)
分类:
Java小组
阅读:
739
次
发表于:
2016-09-24
作者:
锋宇
基本的规则是移动、旋转和摆放游戏自动输出的各种方块,使之排列成完整的一行或多行并且消除得分。
加载更多
热门文章
Intellij idea生成类图和导出类图
《2048》游戏Java版本+源码(一)
twitter的雪花算法实现(Java)
《2048》游戏Java版本+源码(二)
俄罗斯方块小游戏的Java实现(一)
基于twitter雪花算法的分布式ID —— 服务器篇
俄罗斯方块小游戏的Java实现(二)
MySQL查询昨天、今天、7天、近30天、本月、上月 数据
Netty5源码之LengthFieldBasedFrameDecoder
Redis实现分布式锁方案一(Java源码)
扫二维码
我要反馈
回到顶部