今天用酷狗搜索音樂,突然頓悟
原來(lái)酷狗使用了原始的P2P思想,把每個(gè)人的音樂共享出來(lái),這樣大家就可以互相搜索了,而且也可以隨便下載,本身并不用花費(fèi)很大的代價(jià),這個(gè)思想太有才了
1、每個(gè)人安裝客戶端,
客戶端與服務(wù)器通信方式:
1、客戶端不是時(shí)時(shí)刻刻跟服務(wù)器相連,每次連接后保持連接一定的時(shí)間,也可能是馬上斷開(如果考慮到服務(wù)器負(fù)載的話)
2、一些必要的東西是從服務(wù)器獲取的,歌曲排行等等
3、客戶端每次跟服務(wù)器連接的時(shí)候,除了獲取自己想要獲取的信息外,可能還接受一些服務(wù)器指派的任務(wù),比如搜索之類的
搜索部分:
1、客戶端搜索本地硬盤上的音樂,根據(jù)既定的規(guī)則讀取音樂信息,比如歌手,歌名形成列表
3、將列表作為該客戶端可以共享給別人的音樂列表
4、當(dāng)一個(gè)客戶端發(fā)送搜索請(qǐng)求的時(shí)候,服務(wù)器可能進(jìn)行幾種處理:
音樂下載部分:
1、音樂下載部分沒什么好說(shuō)的,一般的P2P下載處理,服務(wù)器或者客戶端發(fā)送給該客戶端搜索結(jié)果的時(shí)候就說(shuō)明可以從哪里下載,直接連接過去就可以了,這部分沒什么懸念
總之來(lái)說(shuō),目前這種P2P的思想真的很強(qiáng)大,這一切都開始于BT,至少我知道的是這樣啊,說(shuō)錯(cuò)了你就趕快告訴我,呵呵,開始的BT只是用來(lái)下載,可是現(xiàn)在可以用來(lái)聽音樂和看視頻,似乎無(wú)所不在,P2P的好處就是,不需要有一個(gè)很強(qiáng)大的服務(wù)器,每個(gè)人在獲取的同時(shí)也在貢獻(xiàn),嗯,很有前途,也許目前的云彩也是基于這個(gè)原理,或者云彩可以向P2P多靠近一些哦,hoho
上面的分析純屬一些愚見,偶爾想到的,也許大家早就明白了,算是與君共勉吧,已經(jīng)明白的多多指教,還沒明白的,咱們一起探討
原來(lái)酷狗使用了原始的P2P思想,把每個(gè)人的音樂共享出來(lái),這樣大家就可以互相搜索了,而且也可以隨便下載,本身并不用花費(fèi)很大的代價(jià),這個(gè)思想太有才了
1、每個(gè)人安裝客戶端,
1、客戶端不是時(shí)時(shí)刻刻跟服務(wù)器相連,每次連接后保持連接一定的時(shí)間,也可能是馬上斷開(如果考慮到服務(wù)器負(fù)載的話)
2、一些必要的東西是從服務(wù)器獲取的,歌曲排行等等
3、客戶端每次跟服務(wù)器連接的時(shí)候,除了獲取自己想要獲取的信息外,可能還接受一些服務(wù)器指派的任務(wù),比如搜索之類的
1、客戶端搜索本地硬盤上的音樂,根據(jù)既定的規(guī)則讀取音樂信息,比如歌手,歌名形成列表
3、將列表作為該客戶端可以共享給別人的音樂列表
4、當(dāng)一個(gè)客戶端發(fā)送搜索請(qǐng)求的時(shí)候,服務(wù)器可能進(jìn)行幾種處理:
- 第一種,服務(wù)器將搜索請(qǐng)求發(fā)送給所有當(dāng)前跟服務(wù)器有聯(lián)系的客戶端,每個(gè)客戶端搜索自己的共享音樂列表,然后將結(jié)果直接發(fā)送給發(fā)出搜索請(qǐng)求的客戶端(或者通過服務(wù)器轉(zhuǎn)發(fā)給那個(gè)客戶端。
這種方式不可取,服務(wù)器負(fù)載太高,一個(gè)是要求有所有客戶端時(shí)刻跟服務(wù)器連接,在一個(gè)搜索結(jié)果可能把那個(gè)客戶端給淹死 - 第二種,客戶端將搜索請(qǐng)求直接發(fā)送給服務(wù)器,服務(wù)器將該請(qǐng)求發(fā)送給當(dāng)前跟服務(wù)器有通信的客戶端,收到搜索任務(wù)的客戶端搜索本地的音樂列表,如果搜索到了就將相關(guān)的信息發(fā)送給服務(wù)器,或者直接發(fā)送給那個(gè)搜索的客戶端,收到搜索任務(wù)的客戶端會(huì)判斷一下,比如搜索任務(wù)超時(shí)之類的或者跟目標(biāo)客戶端通信的速度太低,或者不可連接什么的,
這種方式也不太可行,服務(wù)器的負(fù)載還是太高,而且貌似客戶端的負(fù)載也太高 - 第三種,客戶端有一個(gè)最近聯(lián)系的其他客戶端連接信息列表,跟其他客戶端的任何通信都會(huì)更新這個(gè)列表,當(dāng)客戶端有搜索請(qǐng)求的時(shí)候會(huì)同時(shí)發(fā)送給服務(wù)器和列表中的所有客戶端,服務(wù)器會(huì)根據(jù)發(fā)出請(qǐng)求客戶端的特點(diǎn)(網(wǎng)通還是電信、IP地址段等等)將該請(qǐng)求發(fā)送給相關(guān)的客戶端(可能在所有符合條件的客戶端中挑幾個(gè)),收到請(qǐng)求的客戶端搜索本地的音樂列表,如果有結(jié)果就將結(jié)果發(fā)送給最初發(fā)送查詢請(qǐng)求的那個(gè)客戶端,這些客戶端還可能將搜索請(qǐng)求發(fā)送給自己的最近聯(lián)系客戶端列表中的客戶端,并通過在查詢請(qǐng)求上增加一個(gè)轉(zhuǎn)發(fā)次數(shù)計(jì)數(shù),如果這個(gè)計(jì)數(shù)大于多少就不再轉(zhuǎn)發(fā),受到搜索請(qǐng)求的客戶端同樣處理。在傳播的過程中有可能因?yàn)樗阉鬓D(zhuǎn)發(fā)次數(shù)太多而終止傳播,也可能根據(jù)請(qǐng)求發(fā)送的時(shí)間來(lái)決定是否繼續(xù)轉(zhuǎn)發(fā),或者是否處理,
這種可能性很大哦,hoho,反正如果我設(shè)計(jì)這種方案最終肯定會(huì)被采用,因?yàn)榉?wù)器的負(fù)載最小
1、音樂下載部分沒什么好說(shuō)的,一般的P2P下載處理,服務(wù)器或者客戶端發(fā)送給該客戶端搜索結(jié)果的時(shí)候就說(shuō)明可以從哪里下載,直接連接過去就可以了,這部分沒什么懸念
總之來(lái)說(shuō),目前這種P2P的思想真的很強(qiáng)大,這一切都開始于BT,至少我知道的是這樣啊,說(shuō)錯(cuò)了你就趕快告訴我,呵呵,開始的BT只是用來(lái)下載,可是現(xiàn)在可以用來(lái)聽音樂和看視頻,似乎無(wú)所不在,P2P的好處就是,不需要有一個(gè)很強(qiáng)大的服務(wù)器,每個(gè)人在獲取的同時(shí)也在貢獻(xiàn),嗯,很有前途,也許目前的云彩也是基于這個(gè)原理,或者云彩可以向P2P多靠近一些哦,hoho
上面的分析純屬一些愚見,偶爾想到的,也許大家早就明白了,算是與君共勉吧,已經(jīng)明白的多多指教,還沒明白的,咱們一起探討