麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

C#版Oracle Berkeley DB 性能測試

2019-11-17 03:52:58
字體:
來源:轉載
供稿:網友
大家有更好的測試結果,妨請告訴我,我的郵箱:[email protected], 此文權當拋磚引玉。
轉載不必說明出處,隨便轉去。

Oracle Berkeley DB 基礎知識:http://www.oracle.com/technology/PRoducts/berkeley-db/index.html

Berkeley DB的中國官方博客: Oracle Berkeley DB 中國研發團隊的博客 » BDB C# API初探

BDB性能測試程序C#版本
官網說在XP sp3上可以達到45,748條/s,不過那不是用C#寫的,估計快一些, 以下是我測的結果:
本機上Intel 單核2.8G, 2G,   大約15337條/S,
服務器至強四核的, 大約47,746條/S,
網上幾乎找不到C#的性能測試程序,就是樣例也極少,建議大家看看Berkeley DB的中國官方博客
地址:Oracle Berkeley DB 中國研發團隊的博客 » BDB C# API初探

以下是小弟寫的BDB C#版測試核心程序,大家可以參考

代碼
using System;
using System.Collections.Generic;
using System.Text;
using BerkeleyDB;

public class BRBDBDefault : IDisposable
{
BTreeDatabaseConfig btreeDBConfig;
BTreeDatabase btreeDB;
public BRBDBDefault() : this("bdb.db") { }
public BRBDBDefault(string dbName)
{
btreeDBConfig = new BTreeDatabaseConfig();

btreeDBConfig.Duplicates = DuplicatesPolicy.SORTED;

btreeDBConfig.Creation = CreatePolicy.IF_NEEDED; //如果不存在數據庫就創建

btreeDBConfig.PageSize = 4 * 1024;//頁大小

btreeDBConfig.CacheSize = new CacheInfo(0, 1024 * 1024 * 80, 0);//緩存大小

btreeDB = BTreeDatabase.Open(dbName, btreeDBConfig);

}
public void SetData(int id, string data)
{
DatabaseEntry k = new DatabaseEntry();
DatabaseEntry d = new DatabaseEntry();
k.Data = BitConverter.GetBytes(id);
d.Data = ASCIIEncoding.ASCII.GetBytes(data);
try
{
btreeDB.Put(k, d);
}
catch (System.accessViolationException av)
{


}
catch { }
}
public void SetData(string id, string data)
{
DatabaseEntry k = new DatabaseEntry();
DatabaseEntry d = new DatabaseEntry();
k.Data = ASCIIEncoding.ASCII.GetBytes(id);
d.Data = ASCIIEncoding.ASCII.GetBytes(data);
try
{
btreeDB.Put(k, d);
}
catch (System.AccessViolationException av)
{


}
catch { }
}
public string GetData(int id)
{
DatabaseEntry de = new DatabaseEntry();
de.Data = BitConverter.GetBytes(id);
KeyValuePair<DatabaseEntry, DatabaseEntry> pair = btreeDB.Get(de);
if (pair.Value != null)
return ASCIIEncoding.ASCII.GetString(pair.Value.Data);
return string.Empty;
}
public string GetData(string id)
{
DatabaseEntry de = new DatabaseEntry();
de.Data = ASCIIEncoding.ASCII.GetBytes(id);
KeyValuePair<DatabaseEntry, DatabaseEntry> pair = btreeDB.Get(de);
if (pair.Value != null)
return ASCIIEncoding.ASCII.GetString(pair.Value.Data);
return string.Empty;
}
public string GetDBPath()
{
return btreeDB.FileName + btreeDB.DatabaseName;
}
#region IDisposable 成員
public void Close()
{
btreeDB.Close();
}
public void Dispose()
{
if (btreeDB != null) btreeDB.Dispose();
}

#endregion
}



關于測試環境的搭建,請大家自己看官網博客,說的很詳盡。前臺測試代碼就不粘了,就一個循環統計時間,

推薦大家用老趙的CodeTimer


1 0 0
(請您對文章做出評價)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久99深爱久久99精品 | 91成人免费在线观看 | 亚洲欧美在线看 | 亚洲尻逼视频 | 素人视频在线观看免费 | 黄色高清视频网站 | 日韩视频―中文字幕 | 毛片三区 | 欧美激情第一区 | 九九热在线视频观看 | 九九黄色影院 | 久久国产28 | 成人性生活视频在线播放 | 爱操影视 | 91亚洲免费视频 | 国产无区一区二区三麻豆 | 91色一区二区三区 | 欧洲精品久久久久69精品 | 日本中文不卡视频 | 在线中文字幕网站 | 久久国产精品99国产 | 成人在线观看免费视频 | 日韩毛片免费观看 | 日本精品免费观看 | 久久一区二区三区av | 一级黄色影片在线观看 | 欧美成人精品欧美一级乱黄 | 超污视频在线看 | 少妇的肉体2无删减版 | 最新se94se在线欧美 | 男女亲热网站 | 成年人观看免费视频 | 爱性久久久久久久 | 午夜视频中文字幕 | 日日综合 | 天天曰夜夜操 | 国产成人精品一区二区三区电影 | 欧美一级黄色影院 | 久久久久久久久久91 | 成人一级在线 | 4p一女两男做爰在线观看 |