初识专业的分布式多场景发号器Vesta

点击Vesta进入我们的项目主页,获得更多信息和内容。

发号器

Vesta发号器是一个通用的发号器,它不但可以嵌入在原生Java程序中,还可以作为Restful服务进行发布,你只需要简单的几个步骤就可以成功搭建Vesta的Rest服务,并且在任何语言中都可以使用HTTP协议来获取全局唯一的ID。


安装与启动

  1. 打包最新版本的REST发布模式的发布包。

下载Vesta源码,

在根目录下执行命令。

./make-release.sh

在target目录找到vesta-rest-netty-0.0.1-bin.tar.gz。

  1. 解压发布包到任意目录。

tar xzvf vesta-rest-netty-0.0.1-bin.tar.gz

  1. 解压后更改属性文件。
  • 属性文件:

vesta-rest-netty-0.0.1/conf/vesta-rest-netty.properties

  • 文件内容:

vesta.machine=1022 vesta.genMethod=2 vesta.type=0

  • 这里,机器ID为1022, 如果你有多台机器,递减机器ID,同一服务中机器ID不能重复。
  • 这里,genMethod为2表示使用嵌入发布模式
  • 这里,type为0, 表示最大峰值型,如果想要使用最小粒度型,则设置为1
  1. REST发布模式的默认端口为8088,你可以通过更改启动文件来更改端口号,这里以10010为例。
  • 启动文件:

vesta-rest-netty/target/vesta-rest-netty-0.0.1/bin/server.sh

  • 文件内容:

port=10010

  1. 修改启动脚本,并且赋予执行权限。
  • 进入目录:

cd vesta-rest-netty-0.0.1/bin

  • 执行命令:

chmod 755 *

  1. 启动服务。
  • 进入目录:

cd vesta-rest-netty-0.0.1/bin

  • 执行命令:

./start.sh

  1. 如果看到如下消息,服务启动成功。

apppath: /home/robert/vesta/vesta-rest-netty-0.0.1 Vesta Rest Netty Server is started.

测试Rest服务

  1. 通过URL访问产生一个ID。
  • 命令:

curl http://localhost:10010/genid

  • 结果:

1138729511026688

  1. 把产生的ID进行反解。
  • 命令:

curl http://localhost:10010/expid?id=1138729511026688

  • 结果:

{"genMethod":0,"machine":1,"seq":0,"time":12235264,"type":0,"version":0}

JSON字符串显示的是反解的ID的各个组成部分的数值。

  1. 对产生的日期进行反解
  • 命令:

curl http://localhost:10010/transtime?time=12235264

  • 结果:

Fri May 22 14:41:04 CST 2015

  1. 使用反解的数据伪造ID。
  • 命令:

http://localhost:8080/makeid?machine=1021&seq=0&time=94990103&genMethod=2&type=0&version=0

  • 结果:

2305844108284681216

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏转载gongluck的CSDN博客

cocos2dx 打灰机

#include "GamePlane.h" #include "PlaneSprite.h" #include "BulletNode.h" #include...

5286
来自专栏张善友的专栏

Silverlight + Model-View-ViewModel (MVVM)

     早在2005年,John Gossman写了一篇关于Model-View-ViewModel模式的博文,这种模式被他所在的微软的项目组用来创建Expr...

2898
来自专栏杨龙飞前端

scrollto 到指定位置

2494
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

4798
来自专栏张善友的专栏

Miguel de Icaza 细说 Mix 07大会上的Silverlight和DLR

Mono之父Miguel de Icaza 详细报道微软Mix 07大会上的Silverlight和DLR ,上面还谈到了Mono and Silverligh...

2667
来自专栏Ceph对象存储方案

Luminous版本PG 分布调优

Luminous版本开始新增的balancer模块在PG分布优化方面效果非常明显,操作也非常简便,强烈推荐各位在集群上线之前进行这一操作,能够极大的提升整个集群...

3035
来自专栏魂祭心

原 canvas绘制clock

4004
来自专栏我和未来有约会

Silverlight第三方控件专题

这里我收集整理了目前网上silverlight第三方控件的专题,若果有所遗漏请告知我一下。 名称 简介 截图 telerik 商 RadC...

3955
来自专栏我和未来有约会

Kit 3D 更新

Kit3D is a 3D graphics engine written for Microsoft Silverlight. Kit3D was inita...

2506
来自专栏java 成神之路

使用 NIO 实现 echo 服务器

4507

扫码关注云+社区