自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(137)
  • 收藏
  • 关注

原创 chain33 区块链开发框架诞生记

chain33 区块链开发框架诞生记  chain33 诞生记很多年没有写博客了,应该说,自从2013年开始玩比特币,就没有写过了。这5年来,做了很多事情,也见了很多以前做梦都没有想到过都事情。我做的最开心的事情,也是觉得最有意义的事情,就是负责开发了一个区块链开发框架 chain33 ,目前这个框架已经在 github 上开源,开源地...

2018-11-21 14:09:00 832

原创 Go语言异步服务器框架原理和实现

Go语言异步服务器框架原理和实现     Go语言类库中,有两个官方的服务器框架,一个HTTP,一个是RPC。使用这个两个框架,已经能解决大部分的问题,但是,也有一些需求,这些框架是不够的,这篇文章,我们先分析一下HTTP 和 RPC服务器的特点, 然后结合这两个服务器的特点,我实现了一个新的服务器,这个服务器非常适合客户端和服务器端有大量交互的情...

2013-08-05 14:58:00 387

原创 go sync.Mutex 设计思想与演化过程 (一)

go sync.Mutex 设计思想与演化过程 (一)      go语言在云计算时代将会如日中天,还抱着.NET不放的人将会被淘汰。学习go语言和.NET完全不一样,它有非常简单的runtime 和 类库。最好的办法就是将整个源代码读一遍,这是我见过最简洁的系统类库。读了之后,你会真正体会到C#的面向对象的表达方式是有问题的,继承并不是必要的东西...

2013-06-24 23:57:00 237

原创 如何把普通的exe服务器程序注册成windows 服务

如何把普通的exe服务器程序注册成windows 服务     虽然写的大部分程序是在 freebsd 和 linux 下面的。但是,最近还是遇到了一个windows 下面的问题,那就是如何让一个 用Go语言写的服务器,在windows 下面开机的时候不登录就自动启动。所以,不能设置成在run里面启动。把服务器组成成一个window的服务比较靠...

2013-05-27 19:45:00 224

原创 横向同步问题

横向同步问题     最常见到的同步是防止一个资源同时被多个人访问,这里要介绍的同步问题要不一样一点,他是多个线程之间要互相等待的一种同步,就像我们出去爬山,如果有人慢了,就要停下来等等他,这样我们才能一起到达目的地。     这个问题最初是在金融历史数据反演的时候遇到的,简单的说,拿一份历史的股票或者外汇,期货的数据,按照时间顺序的模拟价格...

2012-10-28 12:44:00 125

原创 技术工人的升华

技术工人的升华     如果你有过装修,或者家里造房子的经历,你会发现,大多数“技术工人”都是半瓶水,让你满意的人实在是凤毛麟角。就算你要找一个很有责任感的,不需要你去监督,做事情精益求精的人都基本上没有。     你或许在装修,并正在抱怨那样的技术工人。但是,你的老板或许也同样的在抱怨你:只有半瓶水,还吹牛吹的不行。当,没有人监督,没有项目...

2012-07-14 13:59:00 105

原创 浮点数系列之:把 float 转成 double

浮点数系列之:把 float 转成 double     大多数语言都提供从float到double的转换,比如C语言,你可以直接通过一个赋值语句来实现把一个float的数字转成 double。而某些蛋疼的语言里面,对二进制的支持实在是少的可怜,我们还是不得不处理这样蛋疼的问题。     MQL4 这种语言大家可能没有这么听说过,是一种写金融...

2012-06-09 11:24:00 3803

原创 基数排序的一个变形应用

基数排序的一个变形应用     说起排序,大多数人在实际项目中很少自己去写一个排序,一般来说,qsort一行话就可以了。我也很少在实际项目中用到过基数排序,最近,写了一篇博客文章叫做: 字符串之全文索引 ,这篇文章的下一篇文章 要用到一个倍增算法。这个倍增算法,就可以非常巧妙的运用基数排序。作为那篇文章的一个铺垫,我专门写了一篇基数排序的文章。这篇...

2011-12-20 00:28:00 123

原创 如何学习Yii

如何学习Yii 我是在Yii的官方wiki上看到这篇文章的。读的第一遍觉得很不错,还有一种想翻译出来的冲动。虽然,本人英文很烂,但是毕竟写了这样多年的代码,估计大概的意思是能有的吧。英文原文:http://www.yiiframework.com/wiki/268/how-to-learn-yii/   下面是针对Yii的初学者的一个一步一步如...

2011-12-09 23:13:00 113

原创 如何在apache启动的时候不输入ssl的密码

如何在apache启动的时候不输入ssl的密码 今天突然发现网站挂掉了。原因就是机房意外的重启了我的机器,因为apache 要输入ssl密码才能启动,所以就启动不起来。 用下面的方法就可以避免这个问题: ee /usr/local/etc/apache22/httpd.conf   找到: <IfModule ssl_module&...

2011-11-30 10:12:00 129

原创 字符串之全文索引

字符串之全文索引     字符串,我现在正在写的就是一个字符串。我们的源代码就是一个字符串,计算机科学里面,一大部分问题都是字符串处理的问题。比如,编译器,就是一个字符串处理程序。还有,搜索引擎,也在处理一个字符串问题。数据库,最难处理的还是字符串部分。索引,一般是一种预处理的中间程序。在我们写代码的时候,往往需要对一个对象进行预处理。这个预处...

2011-11-27 16:55:00 154

原创 2011 october calendar wallpapers

2011 october calendar wallpapers Wallpaperfox contain many anime wallpapers, such as Fairy Tail wallpapers, bleach wallpapers, naruto wallpapers, one piece wallpapers, and so ...

2011-10-11 11:09:00 127

原创 深入PHP内核(1) 引用

深入PHP内核(1) 引用     最近,和一个网友交流的时候,给我提了一个非常奇怪的问题。那就是,在一个运算中,加了一个引用之后,发现性能慢了一万倍。在我的脑海里面,引用是一个非常容易出错的问题,特别是PHP里面的引用,有非常多的陷阱。因为,以前专门研究过这一块PHP的源代码,所以,我可以比较清晰的解析引用到底是怎么一回事,希望,读了我这篇博客的...

2011-04-28 21:53:00 218

原创 IP快速查找数据库

IP快速查找数据库 最近一段时间,在研究PHP的共享内存。于是,我想尝试一下共享内存和普通文件相比,能提高多少的性能。本来想简单的把纯真IP数据库导入到共享内存然后查询。但是,后来发现这个数据库设计过于复杂,查询IP速度非常的慢,于是我对这个数据库的结构重新进行了设计。头部:4 * 4 个字节。就记录一个总数//总数|0|0|0索引...

2011-03-07 14:03:00 254

原创 用PHP dom 处理xml,增加或者修改节点

用PHP dom 处理xml,增加或者修改节点 今天有人在PHP的群里面问这样一个问题:<?xml version="1.0" coding="utf-8"?><country><city>北京</city><city>香港</city&amp

2011-02-28 21:18:00 144

原创 汉字转拼音问题

汉字转拼音问题     这是一个非常经典的问题,同时,也是一个很难解决的问题。经典是因为,这个问题非常常见,而且有很多解决方案。难以解决是因为,存在多音字。可以发现很多股票软件都有这问题,比如zgyh 出来的不是中国银行,而是找不到,这是因为,中国银行的 “行” 查出来读的是 "xing" 。我篇文章我只是提供了一个原始的转换方法,就是查表...

2011-01-26 19:29:00 165

原创 多态的内幕--(C++, C)语言两个版本

多态的内幕--(C++, C)语言两个版本     本文通过分析C++编译器生成的汇编代码,分析多态的机制。并实现了一个C语言版本。    在编译性语言里面,多态真的是一个伟大的发明。它可以现在写好代码,编译好,并且可以调用未来的代码。这多少有了点动态的感觉。很多人,也在脚本语言里面抱怨,为什么不提供多态的功能啊。脚本语言里面,一个函数参数...

2011-01-20 14:01:00 92

原创 linux man 命令后面的圆括号的意义

linux man 命令后面的圆括号的意义 我们经常会看到 在说一个对象的man page 的时候,会有这样的格式:mmap(2) shm_open(3)这个后面的数字是什么意思呢,通过 man man 命令就可以知道,这个是数字是,section大多数类unix 操作系统,都采用相同的section 的约定:Section 1...

2011-01-20 11:48:00 132

原创 关于KDJ指标的MQL4的实现

关于KDJ指标的MQL4的实现 在看我这篇文章之前,先看看关于KDJ的相关资料和背景。下面的链接可以参考。http://www.shenmeshi.com/Business/Business_20070523005553.html 简单的说,KDJ 有四个要计算的东西。RSV ,K, D, J RSV: 中文翻译过来就是 未成熟...

2010-12-27 21:48:00 911

原创 如何自动的检测字符串编码

如何自动的检测字符串编码 很多时候,一个字符串,你很难检测它的编码。是理论上就不行,比如一个字符串,你把他当作一个utf8的编码是一个汉字串,把他当成gb2312 还是一个汉字出串,而且在字库里面都存在。所以,我们检查也只能是说,大部分能检测出来。    我遇到的问题是这样的,百度搜索引擎的中关键字的问题。http://www.baidu.co...

2010-12-20 18:46:00 387

原创 在编码转错的情况下,如何恢复

在编码转错的情况下,如何恢复 编码问题的确非常的棘手。很多时候,你一不小心,在某个阶段没有正确的转码,结果造成存储下来的文件 或者 保存进入数据库的字段是乱码。如果这个字段是非常重要的信息,你可能认为,你已经无法恢复这些信息了,其实,在大多数情况下面这个是能够恢复的,你要分析你转码的每个过程,确定出差错的位置,然后进行这个编码的逆转。 这里我只举一...

2010-12-17 19:15:00 280

原创 PHP高级编程之--单线程实现并行抓取网页

PHP高级编程之--单线程实现并行抓取网页 钻研PHP很多年,想总结一下自己,但是不知从何说起,那就先谈一些我知道的PHP的用法,这些用法很多有多年的工作经验的人可能都不知道。实际中可能用不到,但是用到了,就是体现你实力的时候。现在问题是这样的,一个用户,用的是windows 的虚拟服务器,然后呢,当打开一个页面的时候,要并行的抓取大概10...

2010-12-15 14:03:00 73

原创 发布一个纯PHP的中文关键字自动提取工具

发布一个纯PHP的中文关键字自动提取工具     周末的时候看到腾讯的空间里面写日志的时候能自动提取关键字,感觉这个功能非常的好,于是我自己准备也写一个。因为,提取关键字,肯定要涉及分词,现在的分词算法,最好的估计是统计算法,但是实现稍微复杂一点,用PHP的话,性能往往也不够。于是,我一切从简,争取星期天一天能写完这个工具。    我翻了一下最...

2010-12-06 14:36:00 129

原创 完全二叉树判断,简单而复杂

完全二叉树判断,简单而复杂 今天有个人问我如何判断一棵树是完全二叉树。我一下子想不出怎么解决这个问题,按照定义,严蔚敏那本教材上的说法:一个深度为k,节点个数为 2^k - 1 的二叉树为满二叉树。这个概念很好理解,就是一棵树,深度为k,并且没有空位。首先对满二叉树按照广度优先遍历(从左到右)的顺序进行编号。一颗深度为k二叉树,有n...

2010-11-11 20:33:00 227

原创 IE6 图片src加载bug

IE6 图片src加载bug     刚才我们网站的后台看到,IE6 依然有62%的客户在使用,IE7 有10%, IE8有23%。看来重点还是要把IE6给调整正确。虽然google 说不支持IE6了,可是中国有中国的国情。顺便说一句,.NET 只有在不到50%的机器上安装,至少我们的客户是这样的。    一般来说IE6 和 IE7 是相似...

2010-11-08 20:23:00 84

原创 【娱乐】给你的电脑检查兼容性,并获取你的电脑上安装的软件

【娱乐】给你的电脑检查兼容性,并获取你的电脑上安装的软件 最近大家可好。中国又内讧了。最近听说腾讯经常扫描用户电脑,获取用户安装软件的信息。所以,我就开始想想腾讯是怎么实现的。按照360的说法,腾讯是通过扫描桌面快捷方式的方式来实现的。我觉得腾讯很脑残,为什么要扫描桌面呢?直接用我的方法,保证不会扫描硬盘也能获取安装列表。开个玩笑,其实,聪...

2010-11-04 23:06:00 107

原创 PHP 文件上传的一个问题

PHP 文件上传的一个问题     写PHP也写了4,5年了,最近一年,很少会遇到在PHP 方面让我很困惑的问题,今天,就让我遇到了一个。不知道大家有没有遇到过这样的问题,在文件上传的时候,用 move_uploaded_file 这个函数不能移动文件,而用copy 或者 rename 确是可以的。我也一直很困惑。在文档上,说的比较模糊,就是 mo...

2010-09-03 19:38:00 87

原创 如何检测网络中断, 并自动重启网卡

如何检测网络中断, 并自动重启网卡     本人比较穷,住的是平民窟。所以,要和别人共享网络。很多不厚道的人喜欢用arp 病毒攻击。害的我的网络不是很稳定,经常会断网。断网后,必须,重启网卡网络才能恢复。    一来重启网卡麻烦,每次断网了都要手动重启一下,二来,晚上挂机下载电影,经常下个半个小时,网络就断了,害我白开一晚上电脑。    对...

2010-08-22 18:16:00 574

原创 哈希表之数学原理

哈希表之数学原理    .NET程序员,大多数时候是不需要数学的。因为,有了.NET, 数据结构和算法的重要性被弱化了,操作系统接口相关的东西被强化了。程序员只要求管理好代码,而不是设计好算法。     计算机,我只学会了技术,所以很多问题我都感觉似是而非,感觉是在学习一个API,而不是在学一门科学。     最近要实现一个哈希表,我查找了很多...

2010-05-06 13:45:00 191

原创 [转]程序员能力矩阵 Programmer Competency Matrix

[转]程序员能力矩阵 Programmer Competency Matrix 注意:每个层次的知识都是渐增的,位于层次n,也蕴涵了你需了解所有低于层次n的知识。 计算机科学 Computer Science ...

2010-04-28 16:35:00 71

原创 改变 javascript 函数 内部 this 指针 指向 的三种方法

改变 javascript 函数 内部 this 指针 指向 的三种方法 javascript 的this 值,真的是非常的莫名奇妙。我一直被搞的很头晕,也许正是这个this,让大多数人感觉js 非常的莫名其妙。在查了大量的资料后,我总结了 下面的三条规则,这三条规则,已经可以解决目前我所遇到的所有问题 规则0:函数本身是一个特...

2010-04-23 00:21:00 119

原创 监控 url fragment 的变化

监控 url fragment 的变化      url 里面的 #后面的部分  可以实现无刷新的改变url 的值。这个特点非常有用。比如视频网站土豆中的豆单,你进入视频列表以后,点击播放某个视频。当然,页面最好不要刷新,但是,拷贝一下浏览器的链接,又希望是下次能定位到你播发的那个视频。方法很简单,改变一下 url 的 fragment 就可以...

2010-04-19 11:59:00 169

原创 vista sp2 网络不稳定 经常断线 DCHP经常获取不到IP地址的问题

vista sp2 网络不稳定 经常断线 DCHP经常获取不到IP地址的问题      vista sp2 真是个难缠的东西。最近网络非常的不稳定,不知道怎么回事,经常断网,开始以为是别人用arp 软件攻击我,所以,请了高手来分析分析。高手觉得应该没有人攻击,然后,让它检查我的机器,为什么上不了网,高手也是搞不定。    后来安装了arp防...

2010-04-16 00:36:00 60

原创 overflow:auto 的情况下,position:relative 的兼容性的问题

overflow:auto 的情况下,position:relative 的兼容性的问题     虽然,理论是可以一套又一套。但是,到了实战中,总会有些莫名其妙的问题,占用了你大量的时间。像Jquery 这样的框架,可以兼容各种各样的浏览器,可以非常完美的,简洁的进行编程。但是CSS 的设计没有这样简单,没有通用的解决方案。只能靠平时的点滴积累...

2010-04-09 15:35:00 612

原创 innerHTML 和 getElementsByName 在IE下面的bug 的解决

innerHTML 和 getElementsByName 在IE下面的bug 的解决 innerHTML 真的一个麻烦的东西。IE 和 firefox 对dom 处理的方式不是很一样。IE 对动态加载的很多dom 不支持动态更新。比如有这样一个问题。<div id="playlist"> </div>在...

2010-04-08 14:56:00 156

原创 vista sp2默认网关开机丢失的解决办法

vista sp2默认网关开机丢失的解决办法 最近上网老是经常短线。一直以为是存在什么arp 攻击。可是查找路由器的日志,又不像是被攻击的样子。后来才发现是因为默认网关经常丢失。我找了好久,终于在一个国外论坛里面找到了解决方案:运行: regedit然后一路往下找:HKEY_LOCAL_MACHINE\SYSTEM\CurrentC...

2010-04-04 17:20:00 80

原创 解决PHP数组内存耗用太多的问题

解决PHP数组内存耗用太多的问题     一般来说,PHP数组的内存利用率只有 1/10, 也就是说,一个在C语言里面100M 内存的数组,在PHP里面就要1G。特别是在PHP作为后台服务器的系统中,经常会出现内存耗费太大的问题。    因为这个是语言的问题,常规方案比较难以解决。下面是一种通过string 解决的方案。    代码...

2010-04-03 19:19:00 165

原创 多重循环 如何 转换 成一个迭代器

多重循环 如何 转换 成一个迭代器 最近有一个问题,要实外汇交易策略的优化问题。问题很简单:配置n 个参数,这n 个参数都取一定的范围,找出最优的参数组合。比如:a  = [0, 10]  (从 0, 10, a 是整数) b = [20, 30]当然,解决方案很简单,用一个两个for 循环就可以了。就可以求出所有的组合情况了。...

2010-04-03 12:58:00 128

原创 小学一年级的题目,给程序员做做

小学一年级的题目,给程序员做做 要求:解法越复杂,越有趣越好。最好用上大学数学。有更厉害的,可以用上研究生数学。 程序员的话,比谁代码写的长。越长越好。 posted @ 2010-03-19 18:46 暮夏 阅读(...) 评论(...) 编辑 收藏 ...

2010-03-19 18:46:00 160

原创 三行核心代码解决全排列问题

三行核心代码解决全排列问题 早上还在床上的时候,用手机看到了博客园上一个全排列算法。刚才,出去晒了一下太阳,突然想起那个全排列算法,感觉还是比较的繁琐。回来后,我仔细分析了一个这个问题,觉得,实际上,3行代码就可以解决这个问题了。顺便,也说说,递归问题的一般解决思路吧。 这个问题,非常明显,是一个 n! 复杂度的程序,如果是这样,基...

2010-03-19 15:18:00 209

空空如也

空空如也

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

TA关注的人

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