自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (2)
  • 收藏
  • 关注

转载 通过blockchain_go分析区块链交易原理

原文链接-石匠的Blog1.背景在去中心化的区块链中进行交易(转账)是怎么实现的呢?本篇通过blockchain_go来分析一下。需要进行交易,首先就需要有交易的双方以及他们的认证机制,其次是各自的资金账户规则。在分布式账本系统里面,需要有机制能够准确验证一个用户身份以及对账户资金的精确计算,不能出现一丁点差错。在区块链中交易通过Transaction表示,而账户的自己并不是在每个节点上保...

2018-07-15 14:20:28 2203

转载 用Solidity在Truffle上构建一个HelloWorld智能合约

原文地址:石匠的blogTruffle的环境安装在前文已经整理,这次用Solidity在Truffle写一个HelloWorld以太坊智能合约,并在testrpc上进行测试。当前的软件版本信息如下:Truffle v4.1.11 (core: 4.1.11)Solidity v0.4.24 (solc-js)项目创建打开Mac的terminal终端,创建一个新目录,并truf...

2018-06-21 13:02:18 375

转载 Mac下基于testrpc和truffle的以太坊智能合约开发环境搭建

原文地址:石匠的blogtruffle是一个基于Javascript开发的一套智能合约开发框架,使用Solidity语言编写合约。truffle有一套自动的项目构建机制,集成了开发,测试和部署的各个流程细节,不用开发人员关注。truffle使用说明.testrpc是基于pyethereum,可以快速的搭建一个模拟以太坊的测试网络,并且预制了若干存有代币的账号,可以直接使用。不像geth是一...

2018-06-21 12:59:49 1383

转载 游戏开发项目管理那些事

原文链接: 石匠1号的Blog为什么需要项目管理项目管理可以理解为为了达到一个特定的目标,所实施的一系列对项目过程要素的管理,内容包括人员,资源,关系和技术等。项目管理的三个核心要素是:成本,时间,质量。通过平衡协调各方面的资源最终完成既定目标。小项目通常不需要启动专门的项目管理方法论,仅通过核心管理人员的粗放式管理把控即可基本上满足需求。但是当项目规模越来越大,涉及的各方资源和人员越...

2018-06-02 13:18:14 4760

转载 游戏开发过程中需求变化那些事

原文链接 : http://www.bugclosed.com/post/18背景随着软件项目越来越庞大,为了提高开发效率和有效的质量管控,开发过程中的项目管理越来越重要,流程分工也在不断细化。传统的软件开发过程分大致分为如下几个步骤:需求提出可行性分析需求分析概要设计详细设计编码测试集成交付产品的最终形态和功能都是第一步的需求所决定,“蝴蝶效应”在开发过程中体现...

2018-05-30 09:54:07 906

转载 浅谈滚服游戏如果实现一键合服

背景近几年的游戏行业中,出现了各种各样的滚服游戏,包括页游,手游,H5游戏等等。滚服游戏和大服游戏的区别在于同时游戏人数,大服游戏是有很多用户在一起玩,甚至几十上百万玩家。而滚服游戏则一般会设计游戏在线上限,比如3000,达到上限则新开一组服务器,并引导用户进入新区。滚服模式是游戏类型,技术架构和急功近利的坑钱策略等因素共同决定的,大服游戏包括绝大部分端游,以及类COC这样类型的游戏。另外...

2018-05-13 14:48:01 6306 2

转载 mac通过蓝牙抓包分析iPhone app网络请求

在游戏或者手机app开发过程中,前后端为了调试定位协议问题,有时候需要抓取客户端服务器的网络交互数据包进行分析。在linux服务器上可以方便的在命令行使用tcpdump抓包,在windows或者mac上 也可以选择Wireshark,Ethereal等工具。但是以上方式都是桌面系统或者服务器进行抓包,在手机app的网络场景需要采用其他机制。一般的思路都是手机通过连接到电脑连接上网,然后在电脑端...

2018-05-12 21:27:59 4447 1

转载 golang mongodb驱动mgo异常崩溃问题

##背景在我的后端游戏架构中,有一个golang开发的数据服务器,用来存储落地玩家的历史数据,并提供给客户端http接口查询。由于之前的项目已经在使用mongodb,出于方便易用支持类json格式的bson类型,且mongodb3.0以后引入了高效的WiredTiger引擎,因此该数据服务也直接使用mongodb作为落地存储和缓存。mongodb官方提供了各种语言的驱动,但是并没提供官方驱动,业界...

2018-05-08 15:09:44 2223

转载 CAP为什么不能兼得

什么是CAP所谓CAP原则,是指在分布式系统中Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性)三者不能同时得到。一致性:在分布式系统中,一个数据存在多个副本的情况下,各个副本的值是否一致。可用性:当系统收到一个请求后,在一定时间之内,总是可以反馈一个结果给用户,无论成功还是失败。分区容错性:当网络出现分割后,系统仍然可以提...

2018-05-07 22:11:14 672

原创 系统可用性几个9

经常看到各种技术文章或者分布式系统介绍说系统的可用性达到了多少个9,那么所谓”几个9“到底是怎么计算的?又意味着什么?我们简单计算分析下看看。所谓”1个9“是指90%,”2个9“是指99%,”3个9“是指99.9%,依次类推。可用性的反面是故障时间,网站或者分布式系统会因为很多原因导致不可用,比如:程序bug;运维更新错误;环境配置升级变化;机器硬件故障;被恶意攻击;网关不小心踢掉了网线/电源插座...

2018-05-07 22:10:31 13927

转载 Latex格式html文件转换pdf和docx文档

最近有需求将包含latex格式的html文档转换成pdf和docx文档的需求,由于之前完全没接触过,最近几天调研和实验了一番后将格式转换的关键点都实验成功,总结记录一下。转换原理各种转换工具对比之后选择了号称“格式转换瑞士军刀”的pandoc,pandoc功能强大且开源,从官方说明文档就知道多厉害了。由于历史原因,需要转换的html格式文件比较复杂,直接用pandoc转换到docx,有极少数格式会...

2018-05-07 22:09:04 1152

原创 产品汪和程序猿

产品汪:我们要去月球,需要开发一个火箭。程序猿:具体啥需求啊?产品汪:需求就是能够去月球啊,人的话能多载就多栽,其他没啥需求了。程序猿:你这需求没法开发啊,有产品设计么?产品汪:产品设计还没有,不过没关系,我这里有一个神舟飞船发射的视频,你拿去看看,按照上面做就可以了。程序猿:。。。产品汪:无非就是弄几个侧翼,最下面装上发动机,推进器啥的,火箭头要流线型设计,减小风阻,对了,在火箭中间部分给我留出...

2018-05-07 22:06:46 544 2

原创 golang配置文件热更新

配置文件热更新是服务器程序的一个基本功能,通过热更新可以不停机调整程序的配置,特别是在生产环境可以提供极大的便利,比如发现log打得太多了可以动态调高日志等级,业务逻辑参数变化,甚至某个功能模块的开关等都可以动态调整。每种语言都有自己的热更新实现方式,在golang里面我看到了有人采用了一种错误的实现方式,如下:type Config struct { Test1 string `json...

2018-05-07 22:04:52 1921

转载 基于consul构建golang系统分布式服务发现机制

在分布式架构中,服务治理是一个重要的问题。在没有服务治理的分布式集群中,各个服务之间通过手工或者配置的方式进行服务关系管理,遇到服务关系变化或者增加服务的时候,人肉配置极其麻烦且容易出错。之前在一个C++项目中,采用ZooKeeper进行服务治理,可以很好的维护服务之间的关系,但是使用起来较为麻烦。现在越来越多新的项目采用consul进行服务治理,各方面的评价都优于ZooKeeper,经过几天的研...

2018-05-07 22:03:43 1170

转载 golang二进制协议接口映射

在写服务器程序时,特别是业务向的服务(比如游戏服务器),经常会遇到处理许多客户端协议的情况,如果是http服务,那么定义好处理接口,剩下的交给web服务器就可以了。但是二进制协议就没有这么方便了。通常的自定义二进制协议规则都是固定长度消息头+变长消息体构成,在消息头中会有消息长度,消息id等字段。(基于TCP流式协议),服务器接收到客户端消息后,首先读取消息头,解析得到消息长度,再按照指定长度获取...

2018-05-07 22:01:35 1006

原创 温故知新之数据类型二进制表示

(1)负数在内存中是怎么保存的?有符号正数的表示方法是最高位代表符号位,0表示正数,1表示负数。比如0000 0011表示3(只用一个字节来示意),那么-3怎么表示呢?按道理应该是1000 0011,但实际是不是这样的。因为3+(-3)应该=0,看看下面的计算:  0

2011-08-26 22:45:28 402

mangos分析笔记

自己分析mangos的几篇日记,与大家交流一下

2010-01-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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