青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Shuffy

不斷的學(xué)習(xí),不斷的思考,才能不斷的進(jìn)步.Let's do better together!
posts - 102, comments - 43, trackbacks - 0, articles - 19

微博短網(wǎng)址原理(ShortUrl)算法

Posted on 2011-11-04 14:06 Shuffy 閱讀(1159) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Java

短網(wǎng)址一直都在微博上應(yīng)用。例如騰訊微博的短網(wǎng)址url.cn,新浪的sinaurl.cn等。 他們是如何實(shí)現(xiàn)呢,本文將介紹一下該技術(shù)算法!

比如我們?cè)隍v訊微博上發(fā)布網(wǎng)址的時(shí)候,微博會(huì)自動(dòng)判別網(wǎng)址,并將其轉(zhuǎn)換,例如轉(zhuǎn)換為:http://url.cn/3fVZf1

為什么要這樣做的,原因有以下幾點(diǎn):

1、騰訊微博限制字?jǐn)?shù)為140字一條,那么如果我們需要發(fā)一些連接上去,但是這個(gè)連接非常的長(zhǎng),以至于將近要占用我們內(nèi)容的一半篇幅,這肯定是不能被允許的,所以短網(wǎng)址應(yīng)運(yùn)而生了。

2、短網(wǎng)址可以在我們項(xiàng)目里可以很好的對(duì)開放級(jí)URL進(jìn)行管理。有一部分網(wǎng)址可以會(huì)涵蓋seqing,暴力,廣告等信息,這樣我們可以通過(guò)用戶的舉報(bào),完全管理這個(gè)連接將不出現(xiàn)在我們的應(yīng)用中,應(yīng)為同樣的URL通過(guò)加密算法之后,得到的地址是一樣的。

3、我們可以對(duì)一系列的網(wǎng)址進(jìn)行流量,點(diǎn)擊等統(tǒng)計(jì),挖掘出大多數(shù)用戶的關(guān)注點(diǎn),這樣有利于我們對(duì)項(xiàng)目的后續(xù)工作更好的作出決策。

其實(shí)以上三點(diǎn)純屬個(gè)人觀點(diǎn),因?yàn)樵谖医酉聛?lái)的部分項(xiàng)目中會(huì)應(yīng)用到,所以就了解了一下,下面先來(lái)看看短網(wǎng)址映射算法的理論(網(wǎng)上找到的資料)

1)將長(zhǎng)網(wǎng)址md5生成32位簽名串,分為4段, 每段8個(gè)字節(jié);
2)對(duì)這四段循環(huán)處理, 取8個(gè)字節(jié), 將他看成16進(jìn)制串與0x3fffffff(30位1)與操作, 即超過(guò)30位的忽略處理;
3)這30位分成6段, 每5位的數(shù)字作為字母表的索引取得特定字符, 依次進(jìn)行獲得6位字符串;
4)總的md5串可以獲得4個(gè)6位串; 取里面的任意一個(gè)就可作為這個(gè)長(zhǎng)url的短url地址;

很簡(jiǎn)單的理論,我們并不一定說(shuō)得到的URL是唯一的,但是我們能夠取出4組URL,這樣幾乎不會(huì)出現(xiàn)太大的重復(fù)。

下面來(lái)看看程序部分:


Java代碼
public static string[] ShortUrl(string url) 

//可以自定義生成MD5加密字符傳前的混合KEY 
string key = "Leejor"; 
//要使用生成URL的字符 
string[] chars = new string[]{
"a","b","c","d","e","f","g","h",
"i","j","k","l","m","n","o","p",
"q","r","s","t","u","v","w","x",
"y","z","0","1","2","3","4","5", 
"6","7","8","9","A","B","C","D", 
"E","F","G","H","I","J","K","L", 
"M","N","O","P","Q","R","S","T", 
"U","V","W","X","Y","Z"
};
//對(duì)傳入網(wǎng)址進(jìn)行MD5加密
string hex = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(key + url, "md5"); 

string[] resUrl = new string[4];
for (int i = 0; i < 4; i++)

//把加密字符按照8位一組16進(jìn)制與0x3FFFFFFF進(jìn)行位與運(yùn)算
int hexint = 0x3FFFFFFF & Convert.ToInt32("0x" + hex.Substring(i * 8, 8), 16); 
string outChars = string.Empty;
for (int j = 0; j < 6; j++)
{
//把得到的值與0x0000003D進(jìn)行位與運(yùn)算,取得字符數(shù)組chars索引 
int index = 0x0000003D & hexint;
//把取得的字符相加 
outChars += chars[index]; 
//每次循環(huán)按位右移5位
hexint = hexint >> 5; 
}
//把字符串存入對(duì)應(yīng)索引的輸出數(shù)組 
resUrl[i] = outChars; 

 
return resUrl; 
}
public static string[] ShortUrl(string url)
{
//可以自定義生成MD5加密字符傳前的混合KEY
string key = "Leejor";
//要使用生成URL的字符
string[] chars = new string[]{
"a","b","c","d","e","f","g","h",
"i","j","k","l","m","n","o","p",
"q","r","s","t","u","v","w","x",
"y","z","0","1","2","3","4","5",
"6","7","8","9","A","B","C","D",
"E","F","G","H","I","J","K","L",
"M","N","O","P","Q","R","S","T",
"U","V","W","X","Y","Z"

};
//對(duì)傳入網(wǎng)址進(jìn)行MD5加密
string hex = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(key + url, "md5");

string[] resUrl = new string[4];

for (int i = 0; i < 4; i++)
{
//把加密字符按照8位一組16進(jìn)制與0x3FFFFFFF進(jìn)行位與運(yùn)算
int hexint = 0x3FFFFFFF & Convert.ToInt32("0x" + hex.Substring(i * 8, 8), 16);
string outChars = string.Empty;
for (int j = 0; j < 6; j++)
{
//把得到的值與0x0000003D進(jìn)行位與運(yùn)算,取得字符數(shù)組chars索引
int index = 0x0000003D & hexint;
//把取得的字符相加
outChars += chars[index];
//每次循環(huán)按位右移5位
hexint = hexint >> 5;
}
//把字符串存入對(duì)應(yīng)索引的輸出數(shù)組
resUrl[i] = outChars;
}

return resUrl;
}

現(xiàn)在可以直接使用該方法,可以等到下面四組值

ShortUrl(http://www.me3.cn")[0]; //得到值fAVfui

ShortUrl("http://www.me3.cn")[1]; //得到值3ayQry

ShortUrl("http://www.me3.cn")[2]; //得到值UZzyUr

ShortUrl("http://www.me3.cn")[3]; //得到值36rQZn

原文地址:http://haohaoker-163-com.iteye.com/blog/1094692

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            99精品国产在热久久| 日韩视频免费在线观看| 久久久久久夜| 亚洲国产精品一区二区第一页 | 国产女人aaa级久久久级| 欧美精品免费播放| 国产精品超碰97尤物18| 欧美精品一区二区三区蜜桃| 欧美精品一区二区在线观看| 国产精品久久久久aaaa| 黄色精品免费| 99精品欧美一区| 亚洲欧美日韩天堂| 久久综合给合| 亚洲精品久久久久| 亚洲精品乱码久久久久久日本蜜臀| 91久久一区二区| 亚洲视频国产视频| 久久综合精品国产一区二区三区| 日韩视频一区| 亚洲欧美日韩精品久久奇米色影视| 国产精品一区二区三区四区五区| 久久躁日日躁aaaaxxxx| 欧美日韩成人一区二区三区| 国产精品久久久久9999| 亚洲春色另类小说| 欧美亚洲视频在线看网址| 欧美成人有码| 亚洲女同精品视频| 欧美激情精品久久久久久久变态| 欧美一区二区三区男人的天堂| 亚洲人成在线免费观看| 亚洲一区二区三区视频播放| 欧美一区二区在线免费播放| 男人的天堂亚洲| 国产欧美日韩| 一区二区三区精品久久久| 玖玖在线精品| 亚洲一区二区三区午夜| 欧美国产第一页| 极品尤物久久久av免费看| 中国成人亚色综合网站| 蜜臀av一级做a爰片久久| 中国成人黄色视屏| 欧美激情性爽国产精品17p| 黄色一区二区三区四区| 性久久久久久久久| 一本久道久久综合婷婷鲸鱼| 久久黄金**| 国产日产亚洲精品系列| 亚洲自拍三区| 亚洲视频观看| 国产精品久久久久久久久搜平片| 欧美大片在线观看一区| 国产精品一区二区三区乱码| 在线中文字幕一区| 亚洲丰满少妇videoshd| 在线观看视频一区二区欧美日韩 | 久久免费视频网| 国产精品欧美久久久久无广告| 久久久久国产一区二区三区| 国产精品视频导航| 欧美一区2区三区4区公司二百| 亚洲天天影视| 最新国产乱人伦偷精品免费网站| 久久综合九色欧美综合狠狠| 亚洲中字在线| 国产日韩亚洲欧美综合| 一区二区日韩| 一本大道久久精品懂色aⅴ| 欧美性一区二区| 欧美亚洲免费电影| 欧美制服第一页| 在线观看一区欧美| 亚洲国产精品成人综合色在线婷婷 | 欧美中在线观看| 午夜精品久久久久久久久久久| 亚洲影音一区| 国产午夜精品视频免费不卡69堂| 国产免费观看久久| 午夜精品一区二区三区在线| 亚洲伊人网站| 国产精品免费一区二区三区观看| 国产精品婷婷午夜在线观看| 亚洲欧美日本视频在线观看| 亚洲欧美日韩国产成人| 国产美女精品免费电影| 女人色偷偷aa久久天堂| 欧美日本亚洲| 久久蜜桃精品| 欧美日韩国产成人高清视频| 亚洲欧美日韩国产中文在线| 亚洲欧美成aⅴ人在线观看| 国产亚洲一区精品| 亚洲黄网站黄| 国产精品免费一区二区三区在线观看 | 欧美日韩免费一区二区三区| 一本久道久久久| 亚洲男同1069视频| 亚洲精品一区二区三区99| 亚洲图片欧洲图片av| 在线观看日韩精品| 亚洲午夜久久久久久久久电影网| 蜜臀久久99精品久久久久久9| 欧美日韩国产在线播放网站| 欧美一区二区三区在线| 欧美成人精品高清在线播放| 久久福利资源站| 欧美区日韩区| 欧美精品麻豆| 国产美女精品视频免费观看| 麻豆精品91| 国产精品三级视频| 亚洲高清在线播放| 国内一区二区三区在线视频| 一区二区欧美在线观看| 亚洲国产视频直播| 久久成人精品视频| 性色av一区二区三区| 欧美美女福利视频| 欧美激情视频在线播放 | 亚洲欧美日韩国产一区二区| 久久人91精品久久久久久不卡| 国产一区二区三区黄| 亚洲福利视频一区| 在线看无码的免费网站| 欧美影片第一页| 午夜欧美精品久久久久久久| 欧美精品一区二区三区高清aⅴ| 日韩一区二区精品视频| 欧美一区二区三区另类| 久久gogo国模裸体人体| 国产精品国内视频| 亚洲毛片av在线| 日韩午夜三级在线| 欧美激情精品久久久久久免费印度| 亚洲视屏一区| 欧美激情性爽国产精品17p| 亚洲欧洲日本一区二区三区| 亚洲国产日韩精品| 男女激情久久| 亚洲国产精品成人综合| 日韩一级欧洲| 欧美视频在线一区| 这里只有精品丝袜| 欧美一区二区视频免费观看 | 欧美黄色aa电影| 欧美国产日韩精品| 99精品国产在热久久婷婷| 欧美日韩免费观看中文| 亚洲一区二区三区四区中文| 久久精品亚洲一区二区三区浴池 | 亚洲一二三四久久| 亚洲一区二区高清视频| 国产精品美女www爽爽爽| 在线综合+亚洲+欧美中文字幕| 尹人成人综合网| 久久午夜精品| 亚洲国产成人高清精品| 亚洲午夜激情免费视频| 国产精品视频内| 久久国产精品黑丝| 91久久一区二区| 欧美伊人久久久久久午夜久久久久 | 国产在线观看一区| 欧美日韩精品在线视频| 欧美性做爰毛片| 亚洲欧美日韩精品久久久久| 久久久999精品视频| 亚洲国产欧美不卡在线观看| 欧美顶级大胆免费视频| 亚洲先锋成人| 欧美www视频在线观看| 一本一本a久久| 国产精品色午夜在线观看| 久久久福利视频| 一区二区三区精品视频| 毛片一区二区三区| 亚洲欧美另类国产| 亚洲激情网站免费观看| 国产欧美大片| 欧美日韩国产色视频| 久久久久久网| 亚洲在线中文字幕| 亚洲高清在线| 麻豆精品在线播放| 欧美亚洲视频在线观看| 日韩视频在线你懂得| 国内综合精品午夜久久资源| 欧美天堂亚洲电影院在线播放| 亚洲福利视频一区| 久久久不卡网国产精品一区| 在线亚洲一区二区| 亚洲国产成人tv| 国产亚洲美州欧州综合国| 欧美日韩亚洲视频| 欧美激情第3页| 久久久久久噜噜噜久久久精品| 久久精品中文字幕一区二区三区| 欧美视频在线视频|