IP归属地数据库,附带C,PHP访问代码

最近有打算给博客做个统计插件,看看都是哪儿来的朋友在看我的博客儿,需要一个详细的IP地址归属地数据库。网上找了个纯真的MySQL版的,30多万条数据占了20M左右的数据库空间,觉得有点浪费数据库空间,而且数据库查询时间太慢,特别是要一次性查多个结果时,更是不得了.最主要的是这种应用场合不适合做成数据库形式的。 所以就准备自己做数据库了,自己也有50000亿条数据的数据文件的设计经验。这才30多万条没什么问题。。。按自己的想法生成了文件,并写了PHP和C语言的访问API,心情好的时候再补写上Java啊,汇编啊什么的API也是挺好的。 数据库下载:GBK版 UTF8版 PHP API(函数):这个是函数形式的PHP代码,博客版面上是写描述,具体代码在这里:ips.php ip_area.php 代码调用示例:

Java反射机制及应用(二)

上一篇文章简单说明了java反射机制及其一些基本操作,这篇文章就简单写一下它的应用。 本文地址: http://www.hoverlees.com/blog/?p=539 反射机制可以应用的地方还包括函数跳转表,脚本执行等,函数跳转表常用在多路判断上,以达到线性时间判断的效果。跳转表常用在流解析等应用上,比如说解析xml,解析脚本等,我们可以做一个长度为256的跳转表,每读入一个字节直接跳到指定处理的代码段,从而不用在判断上浪费CPU。用反射机制实现的跳转表,可以使用Method数组实现。当然,跳转表这儿,我推荐的方法是接口数组实现跳转表。例如你定义一个interface包含一个函数,然后定义一个接口数组,每个接口不同的实现即可。 本文的例子是脚本执行,为了让下面的字符串执行起来。 第一行是命令,第二行是参数。说明我就写在代码里了,就不多说了,直接看代码。

Java反射机制及应用(一)

很久没有写点文章了,最近工作很忙,私事很多. 最近在做android软件的架构,虽然,我自己并不喜欢编写java程序,但现在没有android 开发的人手,需要我先把底层的架构做好,边做边招人… 此连载打算写两篇,本文主要打算讨论Java的反射机制的基本原理和相关类,下一篇写反射机制的一个应用. 本文链接 http://www.hoverlees.com/blog/?p=513 Java,本身是一门非常优秀的面向对象语言,严格的面向对象语法,跨平台,学习简单…使用相当广泛,它的优秀是无可厚非的,但它也有一些争议,比如class文件的半编译方式会降底系统性能,还有单继承的限制有时候让人不爽(可以理解,但这点我支持java的方式),还有最重要的就是Java导致很多开发人员只会编代码,而对很多计算机科学应该知道的知识不了解.因为Java太上层了.但如果一个java出生的程序员又对计算机科学有广泛的爱好,那java可以带来很多面向对象编程,架构等等的思路指导.而且现在很多的脚本语言都是趋近于java的语法,如果你能理解Java的精髓,那么Javascript,Flash的ActionScript,甚至PHP对你来说都很简单(我就是这样).当然相关方面应用的知识是一定要知道的~程序语言只是工具而已!! Java的应用很广泛,桌面程序,服务器应用,手持设备,其它设备基本上都支持由java来驱动.我们也可以扩展Java虚拟机(JNI,或源代码级修改)(哈哈,这是我最喜欢做的事了),使自己的Java虚拟机可以提供自己的包给上层开发人员调用,这些包可能直接操作设备,也可能是像支付功能一样的那些”只能让少数重要的人员维护”的功能. 吹了这么多废话,说说Java的反射机制吧,通俗地说,反射机制就是可以把一个类,类的成员(函数,属性),当成一个对象来操作,希望读者能理解,也就是说,类,类的成员,我们在运行的时候还可以动态地去操作他们.