掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
MySQL

成都做網(wǎng)站、網(wǎng)站建設(shè)服務(wù)團(tuán)隊(duì)是一支充滿著熱情的團(tuán)隊(duì),執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時(shí)竭誠(chéng)為客戶提供服務(wù)是我們的理念。成都創(chuàng)新互聯(lián)公司把每個(gè)網(wǎng)站當(dāng)做一個(gè)產(chǎn)品來(lái)開(kāi)發(fā),精雕細(xì)琢,追求一名工匠心中的細(xì)致,我們更用心!
關(guān)系型數(shù)據(jù)庫(kù)存儲(chǔ)系統(tǒng),我們的DBA團(tuán)隊(duì)很強(qiáng)大,每人管理上百臺(tái)MySQL服務(wù)器,其他就不多說(shuō)了,網(wǎng)上資料太多了
Tokyo Cabinet
一個(gè)key-value的存儲(chǔ)引擎,日本人開(kāi)發(fā),國(guó)內(nèi)很多公司也開(kāi)始使用,我們內(nèi)部很多地方也用它來(lái)代替 MySQL來(lái)做存儲(chǔ),比如我們的搜索結(jié)果頁(yè)的用戶資料,就是用它來(lái)做一層MySQL外的冗余存儲(chǔ),目的是加快搜索結(jié)果頁(yè)的顯示。在key-value并需要持久存儲(chǔ)的場(chǎng)景下,用它比MySQL更有效,Cabinet本身只是一個(gè)存儲(chǔ)引擎,沒(méi)有網(wǎng)絡(luò)處理能力,你可以用它作為自己的某個(gè)系統(tǒng)的下層存儲(chǔ)引擎,更好的是搭配Tokyo Tyrant使用。
Tokyo Tyrant
一個(gè)支持Memcached傳輸協(xié)議的網(wǎng)絡(luò)接口,由Tokyo Cabinet的作者開(kāi)發(fā),目的是為T(mén)okyo Cabinet提供網(wǎng)絡(luò)接入能力,即Tokyo Tyrant處理網(wǎng)絡(luò)連接,協(xié)議解析,然后調(diào)用Tokyo Cabinet的API來(lái)完成持久化存儲(chǔ)。
ICE
一個(gè)跨語(yǔ)言的網(wǎng)絡(luò)通訊框架,框架本身提供了強(qiáng)大的通訊能力,管理工具,負(fù)載均衡方案,其跨語(yǔ)言能力也是一個(gè)很大的亮點(diǎn),基于這個(gè)框架之上,我們選用合適的語(yǔ)言來(lái)提供合適的服務(wù),比如我們使用C++來(lái)開(kāi)發(fā)Cache服務(wù),使用Java來(lái)開(kāi)發(fā)一些邏輯服務(wù)??蚣鼙旧砜梢院苤?,也可以很輕,具體要看你怎么用:)
Memcached
一個(gè)純內(nèi)存的key-value的cache系統(tǒng),高效、穩(wěn)定,使用廣泛,如果你連它都沒(méi)聽(tīng)說(shuō)過(guò)就太out 啦,memcached本身不具備分布式能力,需要依靠Client來(lái)實(shí)現(xiàn)分布,這里強(qiáng)調(diào)一點(diǎn)的是,你應(yīng)該選擇一致性Hash來(lái)做key的分布。各種語(yǔ)言的client都有,我們使用spymemcached作為java的Client,spymemcached是一個(gè)異步的NIO的memcached client,對(duì)網(wǎng)絡(luò)IO的處理非常的精巧,也更加高效,同時(shí)因?yàn)樘峁┊惒讲僮鞣绞?,可以讓你?duì)Memcached的操作有更好的控制能力,Memcached到1.4.0版本之后,開(kāi)始支持binary protocol,spymemcached對(duì)其也支持的比較好,使用binary protocol可以提高對(duì)協(xié)議的解析效率和網(wǎng)絡(luò)IO的讀寫(xiě)效率。
上面說(shuō)到我們使用ICE自己開(kāi)發(fā)了Cache服務(wù),為什么我們還要用 Memcached呢?主要在對(duì)Cache的操作粒度不一樣,Memcached對(duì)Cache對(duì)象以binary byte作為一個(gè)整體來(lái)操作,需要頻繁的序列化和反序列化,我們使用ICE提供的Cache服務(wù),可以以Cache對(duì)象的一個(gè)或者多個(gè)字段來(lái)操作,比如一個(gè)用戶對(duì)象,我們可以只更新它的姓名,而Memcached
Nginx
高效、穩(wěn)定的Web Server,我們利用其代理能力,做跨IDC的請(qǐng)求代理,同時(shí)也將其和我們的Resin(Java Web 容器)搭配,放在Resin的前面來(lái)解決Resin的對(duì)網(wǎng)絡(luò)連接處理能力弱的問(wèn)題,在一些小地方也用它來(lái)做7層的負(fù)載均衡
Resin
一個(gè)Java Web Server,比Tomcat更高效,是我們主要的Java Web容器
Squid
代理服務(wù)器,我們用他來(lái)做圖片文件的反向代理緩存
LVS
能提供4層的負(fù)載均衡,高效、高可用,高并發(fā)。我們用他替代了很多硬件的負(fù)載均衡設(shè)備
Struts
Java web框架,不過(guò)這個(gè)已經(jīng)是歷史了,我們開(kāi)發(fā)了一套自己的Web框架替代了它,未來(lái)我們也會(huì)把我們的內(nèi)部的這套Web框架開(kāi)源出來(lái)
Lucence
基于Java的搜索引擎框架,用它我們構(gòu)建了一個(gè)搜索集群來(lái)提供搜人的服務(wù)
Netty
一個(gè)Java的網(wǎng)絡(luò)框架,和apache的mina類似,但比mina更高效,我們用來(lái)做一些小的服務(wù)
Ganglia
一個(gè)監(jiān)控系統(tǒng),幫組我們了解我們每臺(tái)Server的資源利用情況
還有些小東西就不列出來(lái)了,最后要說(shuō)的一點(diǎn)就是,對(duì)這些開(kāi)源軟件或者系統(tǒng),我們都非常的了解,或者說(shuō)知根知底,從API到內(nèi)部實(shí)現(xiàn)原理,甚至到一些源碼的細(xì)節(jié)。

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流