自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 内存png读取程序

//pngReader.h#ifndef _PNGREADER_H_#define _PNGREADER_H_#include "gfx/mstBitmap.h"#include "png.h"/* Transparency parameters */#define PNG_ALPHA     -2         /* Use alpha channel in PNG file, if there is one */#define PNG_SOLID     -1         /* No transp

2010-07-29 09:24:00 1004 1

原创 内存jpeg文件读取程序

内存jpeg读取代码

2010-07-23 18:46:00 878

hypertable-0.9.8.9-src.tar.gz

Hypertable 是一个正在进行中的开源项目,以google的bigtable论文为基础指导,使用c++语言实现。目的是为了解决大并发,大数据量的数据库需求。目前 只支持最基本的查询功能,对于事物,关联查询等都不支持。对单条查询的响应时间可能也不如传统数据库(要看数据量,量越大,对hypertable越有 力)。好处是,可以处理大量并发请求,和管理大量数据。可扩缩性好,扩容只需要增加集群中的机器就ok了。任何节点失效,既不会造成系统瘫痪也不会丢失数 据。在集群节点足够的情况下,并发量和数据量对性能基本没有影响。 注意:Hypertable不是关系数据库。而且它对稀疏数据是只存储其有效部分的。举个例子来说,假设一个表有10列。表中的一条记录,只有第三列有 值。那么实际上只有第三列被存储了,无值的列没有保留空位。这些特点使得 Hypertable 在使用的时候与关系数据库不同。

2015-08-04

sigar-sigar-1.6.4.tar.gz

开源工具包 SIGAR System Information Gatherer And Reporter 即 系统信息收集和报告 官方站点: http: support hyperic com display SIGAR Home;jsessionid A9705887A07D20BBAC9A96500BC60822 SIGAR 官方站点 写道 The Sigar API provides a portable interface for gathering system information such as: System memory swap cpu load average uptime logins Per process memory cpu credential info state arguments environment open files File system detection and metrics Network interface detection configuration info and metrics TCP and UDP connection tables Network route table This information is available in most operating systems but each OS has their own way s providing it SIGAR provides developers with one API to access this information regardless of the underlying platform The core API is implemented in pure C with bindings currently implemented for Java Perl Ruby Python Erlang PHP and C# 几乎所有的硬件信息 网络情况都可以得到 1 CPU信息 包括基本信息(vendor model mhz cacheSize)和统计信息(user sys idle nice wait) 2 文件系统信息 包括Filesystem Size Used Avail Use% Type 3 事件信息 类似Service Control Manager 4 内存信息 物理内存和交换内存的总数 使用数 剩余数;RAM的大小 5 网络信息 包括网络接口信息和网络路由信息 6 进程信息 包括每个进程的内存 CPU占用数 状态 参数 句柄 7 IO信息 包括IO的状态 读写大小等 8 服务状态信息 9 系统信息 包括操作系统版本 系统资源限制情况 系统运行时间以及负载 JAVA的版本信息等 ">开源工具包 SIGAR System Information Gatherer And Reporter 即 系统信息收集和报告 官方站点: http: support hyperic com display SIGAR Home;jsessionid A9705887A07D20BBAC9A96500BC60822 SIGAR 官方站点 写道 The Sigar API provides a portable interface for gathering system i [更多]

2014-09-29

tokyocabinet-1.4.48.tar.gz

http://www.cppblog.com/converse/archive/2010/01/10/105317.html 开始正式的研究key-value形式的持久化存储方案了,第一个阅读的项目是tokyo cabinet tokyo cabinet支持几种数据库形式,包括hash数据库,B+树数据库,fix-length数据库,table数据库。目前我仅看了第一种hash数据库的实现。之所以选择这个,是因为第一这种类型的数据库似乎是TC中使用的最多的一种,其次它的算法比之B+树又更简单一些而效率上的表现也丝毫不差。 看看TC中代码的组织。关于上面几个分类的数据库实现,实际上在TC项目的代码组织中各自以单个文件的形式出现,比如hash数据库的代码全都集中在 tchdb.c/h中,也只不过4000多行罢了。除去这几种数据库的实现文件,其余的代码文件功能可以大体上分为两类,一类是辅助性质的代码,给项目中各个部分使用上的,另一部分就是单独的管理数据库的CLI程序的代码,比如tchmgr.c/h就是用于管理HASH数据库的CLI程序的代码。之所以要交代一下项目中代码的组织,无非是为了说明,其实如果将问题集中在HASH数据库或者其他形式的数据库实现上,起码在TC中,所要关注的代码是不多的。

2013-09-02

leveldb-1.5.0.tar.gz

Leveldb是一个google实现的非常高效的kv数据库,版本1.2已能支持billion级别的数据量了。 在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计。特别是LSM算法。 那么数据库最怕的的随机IO他是如何解决的呢? 先说随机写,它的写都是先记录到日志文件去的,在日志文件满之前只是简单的更新memtable,那么就把随机写转化成了顺序写。在日志满了后,把日志里面的数据排序写成sst表同时和之前的sst进行合并,这个动作也是顺序读和写。大家都知道传统磁盘raid的顺序读写吞吐量是很大的,100M左右是没有问题。在写日志文件的时候,用到是buffer IO,也就是说如果操作系统有足够的内存,这个读写全部由操作系统缓冲,效果非常好。即使是sync写模式,也是以数据累计到4K为一个单位写的,所以效率高。 那么随机读呢?这个它解决不了。但是ssd盘最擅长随机读了。这个硬件很自然的解决了这个问题。 所以leveldb的绝配是ssd盘的raid.

2012-09-11

Gnutella半结构化自适应拓扑方案.pdf

算不得很好的资料,聊胜于无。 Gnutella 半结构化自适应拓扑方案 汤景新,李景涛,赵一鸣 (复旦大学软件学院,上海 200433) 摘 要:给出一种Gnutella 半结构化自适应拓扑方案——ISATS。基于“搭便车现象”的网络特征,进行拓扑结构的改进。基于查询算法 中的分级邻居缓存机制,提出自适应拓扑方案。模拟实验数据分析表明,该方案减少了网络通信量和查询响应时间,提高了查询效率及成 功率。 关键词:Gnutella 网络;半结构化覆盖;自适应拓扑;分级邻居缓存

2012-08-27

HTML 5与CSS 3权威指南.pdf

HTML5与CSS3权威指南完整版,pdf

2012-05-28

HTML,XHTML,and.CSS.Bible,5th.Edition.pdf

HTML,XHTML,and.CSS.Bible,5th.Edition.pdf (全) An essential update to the key web authoring standards of HTML, XHTML, and CSS The existence of Web pages depends on three vital technologies: HTML (base language that Web pages are written in), XHTML (standards that define how to write HTML pages), and CSS (standard that applies formatting styles to Web pages). This new edition provides you with critical coverage of these three Web authoring standards, and places special focus on the upcoming releases of HTML 5 and CSS 3. Serving as a tutorial and reference, this comprehensive resource explains the basic structure and necessary formatting to create a static (non-changing) and dynamic (changing) page on the Internet. HTML, XHTML, and CSS are the three major Web authoring standards for creating either a static or dynamic Web page Guides you through using HTML to create Web documents and introduces updates to HTML 5 Demonstrates best practices for using tools and utilities to create Web documents Includes coverage of the new CSS 3 and tips and tricks for maximizing its abilities Helpful examples round out this essential guide and will get you up and running with HTML, XHMTL, and CSS in no time!

2012-05-28

淘宝软件基础设施构建实践

一、基础设施的规模与挑战 二、事例:图片存储与CDN系统 三、软件基础设施项目 四、淘宝开源平台 五、小结

2012-04-24

hypertable-0.9.5.6源码

Hypertable 是一个正在进行中的开源项目,以google的bigtable论文为基础指导,使用c++语言实现。目的是为了解决大并发,大数据量的数据库需求。目前 只支持最基本的查询功能,对于事物,关联查询等都不支持。对单条查询的响应时间可能也不如传统数据库(要看数据量,量越大,对hypertable越有 力)。好处是,可以处理大量并发请求,和管理大量数据。可扩缩性好,扩容只需要增加集群中的机器就ok了。任何节点失效,既不会造成系统瘫痪也不会丢失数 据。在集群节点足够的情况下,并发量和数据量对性能基本没有影响。 注意:Hypertable不是关系数据库。而且它对稀疏数据是只存储其有效部分的。举个例子来说,假设一个表有10列。表中的一条记录,只有第三列有 值。那么实际上只有第三列被存储了,无值的列没有保留空位。这些特点使得 Hypertable 在使用的时候与关系数据库不同。

2012-04-24

Taobao oceanbase代码

//供学习用,禁止用于商业用途。 2012.04.20   OceanBase解决什么问题   许多公司的核心资产是各种各样的商业数据,例如淘宝的商品、交易、订单、购物爱好等等,这些数据通常是结构化的,并且数据之间存在各种各样的关联,传统的关系数据库曾经是这些数据的最佳载体。然而,随着业务的快速发展,这些数据急剧膨胀,记录数从几千万条增加到数十亿条,数据量从百GB增加到数TB,未来还可能增加到数千亿条和数百TB,传统的关系型数据库已经无法承担如此海量的数据。OceanBase解决不断增加的结构化数据存储与查询的问题。   从Eric Brewer教授的CAP(一致性C: Consistency, 可用性A: Availability,分区容错性P: Tolerance of network Partition)理论角度分析,作为电子商务企业,淘宝和其他公司的业务对一致性和可用性的要求高于分区容错性,数据特征是数据总量庞大且逐步增加,单位时间内的数据更新量并不大,但实时性要求很高。这就要求我们提供一套更加偏重于支持CA特性的系统,同时兼顾可分区性,并且在实时性、成本、性能等方面表现良好。   OceanBase的架构   OceanBase的逻辑架构简图    ▲   OceanBase架构的一些基本概念   主键   row key,也称为primary key,类似于DBMS的主键,与DBMS不同的是,OceanBase的主键总是二进制字符串(binary string),但可以有某种结构。OceanBase以主键为顺序存放表格数据   sstable   一种数据存储格式,OceanBase用来存储一个或几个表的一段按主键连续的数据   tablet   一个表按主键划分的一个(前开后闭的)范围,通常包含一个或几个sstable,一个tablet的数据量通常在256MB左右   基准数据和动态数据   OceanBase以增量方式记录一段时间内的表格数据的增删改,从而保持着表格主体数据在一段时间内相对稳定,其中增删改的数据称为动态数据(通常在内存,也称为内存表),而一段时间内相对稳定的主体数据称为基准数据,基准数据和转储后(保存到SSD固态盘或磁盘)的动态数据以sstable格式存储   ChunkServer   保存基准数据的服务器,通常是多台,为了避免软件硬件故障导致的服务中断,同一份基准数据通常保存了3份并存储在不同ChunkServer上   UpdateServer   保存动态数据的服务器,一般是单台服务器。为了避免软件硬件故障导致的服务中断,UpdateServer记录commit log并通常使用双机热备   MergeServer   进行静态动态数据合并的服务器,常常与ChunkServer共用一台物理服务器。MergeServer使得用户能够访问到完整的最新的数据   RootServer   配置服务器,一般是单台服务器。为了避免软件硬件故障导致的服务中断,RootServer记录commit log并通常采用双机热备。由于RootServer负载一般都很轻,所以它常常与UpdateServer共用物理机器   冻结   指动态数据(也称为内存表)的更新到一定时间或者数据量达到一定规模后,OceanBase停止该块动态数据的修改,后续的更新写入新的动态数据块(即新的内存表),旧的动态数据块不再修改,这个过程称为冻结   转储   出于节省内存或者持久化等原因将一个冻结的动态数据块(内存表)持久化(转化为sstable并保存到SSD固态盘或磁盘上)的过程   数据合并(merge)   查询时,查询项的基准数据与其动态数据(即增删改操作)合并以得到该数据项的最新结果的过程。此外,把旧的基准数据与冻结的动态数据进行合并生成新的基准数据的过程也称为数据合并   联表(join)   一张表与另一张或几张表基于主键的左连接关系,类似于DBMS的自然连接   COW   Copy on Write的缩写,在OceanBase中特指BTree在更新时复制数据备份写入,避免系统锁的技术手段   OceanBase的特点   OceanBase功能   OceanBase设计和实现的时候暂时摒弃了不紧急的DBMS的功能,例如临时表,视图(view),研发团队把有限的资源集中到关键点上,当前OceanBase主要解决数据更新一致性、高性能的跨表读事务、范围查询、join、数据全量及增量dump、批量数据导入。   OceanBase数据访问特点   虽然数据总量比较大,但跟许多行业一样,淘宝业务一段时间(例如小时或天)内数据的增删改是有限的(通常一天不超过几千万次到几亿次),根据这个特点,OceanBase把一段时间内的增删改等修改操作以增量形式记录下来(称之为动态数据,通常保存在内存中),这样也使得了主体数据在一段时间内保持了相对稳定(称之为基准数据)。   由于动态数据相对较小,通常情况下,OceanBase把它保存在独立的服务器UpdateServer的内存中。以内存保存增删改记录极大地提高了系统写事务的性能。此外,假如每条修改平均消耗100 Bytes,那么10GB内存可以记录100M(即1亿)条修改,且扩充UpdateServer内存即增加了内存中容纳的修改量。不仅如此,由于冻结后的内存表不再修改,它也可以转换成sstable格式并保存到SSD固态盘或磁盘上。转储到SSD固态盘后所占内存即可释放,并仍然可以提供较高性能的读服务,这也缓解了极端情况下UpdateServer的内存需求。为了应对机器故障,动态数据服务器UpdateServer写commit log并采取双机(乃至多机)热备。由于UpdateServer的主备机是同步的,因此备机也可同时提供读服务。   因为基准数据相对稳定,OceanBase把它按照主键(primary key,也称为row key)分段(即tablet)后保存多个副本(一般是3个)到多台机器(ChunkServer)上,避免了单台机器故障导致的服务中断,多个副本也提升了系统服务能力。单个tablet的尺寸可以根据应用数据特点进行配置,相对配置过小的tablet会合并,过大的tablet则会分裂。   由于tablet按主键分块连续存放,因此OceanBase按主键的范围查询对应着连续的磁盘读,十分高效。   对于已经冻结/转储的动态数据,OceanBase的ChunkServer会在自己不是太繁忙的时候启动基准数据与冻结/转储内存表的合并,并生成新的基准数据。这种合并过程其实是一种范围查询,是一串连续的磁盘读和连续的磁盘写,也是很高效的。   传统DBMS提供了强大的事务性、良好的一致性和很短的查询修改响应时间,但数据规模受到严重制约,缺乏扩展性;现代云计算提供了极大的数据规模、良好的扩展性,但缺乏跨行跨表事务、数据一致性也较弱、查询修改响应时间通常也较长,OceanBase的设计和实现融合了二者的优势:   --------------------------------------------------------------------------------   UpdateServer:类似于DBMS中的DB角色,提供跨行跨表事务和很短的查询修改的响应时间以及良好的一致性。   ChunkServer:类似于云计算中的工作机(如GFS的chunk server),具有数据多副本(通常是3)、中等规模数据粒度(tablet大小约256MB)、自动负载平衡、宕机恢复、机器plug and play等特点,系统容量及性能可随时扩展。   MergeServer:结合ChunkServer和UpdateServer,获得最新数据,实现数据一致性。   RootServer:类似于云计算中的主控机(如GFS master),进行机器故障检测、负载平衡计算、负载迁移调度等。   --------------------------------------------------------------------------------   上述的DBMS和云计算技术的优势互补使得OceanBase既具有传统DBMS的跨行跨表事务、数据的强一致性以及很短的查询修改响应时间,还有云计算的海量数据管理能力、自动故障恢复、自动负载平衡以及良好的扩展性。   OceanBase当前在淘宝的应用   OceanBase现在已经应用于淘宝收藏夹,用于存储淘宝用户收藏条目和具体的商品、店铺信息,每天支持4~5千万的更新操作。等待上线的应用还包括CTU、SNS等,每天更新超过20亿,更新数据量超过2.5TB,并会逐步在淘宝内部推广,也期待外部合作者。   主要的性能数据   测试软硬件环境   Red Hat Enterprise Linux Server release 5.4 (Tikanga)   gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)   Intel(R) Xeon(R) CPU E5520 @ 2.27GH   ChunkServer & MergeServer:Memory 16GB Disk 300GB SAS*10 NO Raid   UpdateServer & RootServer:Memory 48GB Disk 300GB SAS*6 Raid1   测试环境部署简图   ▲   测试数据规模   21亿条数据,基准数据3备份。   测试Schema   两张表,其中表1中有21列,表2中11列。   其中表1中的11列和表2中的11列存在join关系。   单条记录大小为500字节。   测试性能曲线图   Range数据查询   ▲   单条数据查询   ▲   当压力最大时,ChunkServer单台输出数据90MB/S,已经接近了千兆网卡的极限   更新数据   ▲

2012-04-20

mongodb-mongo-r2.1.0-1967-g869e8b4.tar.gz

  MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。   MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。 特点   它的特点是高性能、易部署、易使用,存储数据非常方便。主要功能特性有:   *面向集合存储,易存储对象类型的数据。   *模式自由。   *支持动态查询。   *支持完全索引,包含内部对象。   *支持查询。   *支持复制和故障恢复。   *使用高效的二进制数据存储,包括大型对象(如视频等)。   *自动处理碎片,以支持云计算层次的扩展性。   *支持RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。   *文件存储格式为BSON(一种JSON的扩展)。   *可通过网络访问。

2012-04-20

这就是搜索引擎:核心技术详解

这就是搜索引擎:核心技术详解。 这是市面上能找到的对搜索引擎和分布式计算讲述最到位的书了吧。 适合对搜索引擎和和SEO感兴趣的朋友

2012-04-16

doom3源代码

不用我说,你知道这个引擎的分量。 TTimo-doom3.gpl-7db8be7.zip The Doom 3 source-code -- based upon the id Tech 4 engine -- is now available as open-source software to the gaming community under the GNU GPL license. Pushed onto GitHub is the Doom 3 source-code. This comes after John Carmack had to work-around Carmack's Reverse due to legal issues. The source drop is right in line with what we were expecting. More details to come soon on the open-source drop of Doom 3, which will hopefully spark a new wave of more impressive free software games. https://github.com/TTimo/doom3.gpl

2011-12-22

ImageMagick-6.6.8-10.

ImageMagick-6.6.8-10 含一些gdal不支持的格式,如dds、djvu。 ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过89种基本格式的图片文件,包括流行的TIFF、JPEG、GIF、 PNG、PDF以及PhotoCD等格式。利用ImageMagick,你可以根据web应用程序的需要动态生成图片, 还可以对一个(或一组)图片进行改变大小、旋转、锐化、减色或增加特效等操作,并将操作的结果以相同格式或其它格式保存。对图片的操作,即可以通过命令行进行,也可以用C/C++、Perl、Java、PHP、Python或Ruby编程来完成。同时ImageMagick提供了一个高质量的2D工具包,部分支持SVG。现在,ImageMagic的主要精力集中在性能、减少bug以及提供稳定的API和ABI上。

2011-12-22

osgGIS0.9源代码

osgGIS0.9源代码 Prerequisites ¶ The 3rd-party dependencies are: OpenSceneGraph 2.6 or later. GDAL/OGR version 1.4 or newer. Easier: just get FWTools and put it in your path. Expat 2.0.1, an XML parsing library. (This comes with FWTools BTW). Lua 5.1.2, an embedded scripting language. toLua 5.1, which creates C++ bindings for Lua.

2009-06-25

OSG开源教程(word版)

即美国海军教程的word版。 供给初学者,可能重复了,请留心。

2009-05-11

StepIntoOpenSceneGraph(Freesouth).pdf

供给初学者,适用的OSG版本有点老,不过不影响阅读 csdn没看到,补上来

2009-05-11

virtools电子教程

书名:virtools电子教程<br>格式:exe<br>

2008-05-08

Introduction to Programming for Image Analysis with VTK.pdf

Introduction to Programming for Image Analysis with VTK.pdf<br>介绍如何使用VTK进行图像分析。<br>

2008-05-08

空空如也

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

TA关注的人

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