分庫(kù)分表中間件工具

mysql中間件研究,整理互聯(lián)網(wǎng)上的一些中間件文章
mysql-proxy是官方提供的mysql中間件產(chǎn)品可以實(shí)現(xiàn)負(fù)載平衡,讀寫分離宝泵,failover等,但其不支持大數(shù)據(jù)量的分庫(kù)分表且性能較差渊胸。下面介紹幾款能代替其的mysql開源中間件產(chǎn)品捣炬,Atlas溶弟,cobar始藕,tddl蒲稳,讓我們看看它們各自有些什么優(yōu)點(diǎn)和新特性吧。

1.TDDL Smart Client的方式(淘寶)

淘寶根據(jù)自己的業(yè)務(wù)特點(diǎn)開發(fā)了TDDL(Taobao Distributed Data Layer 外號(hào):頭都大了 ?_Ob)框架伍派,主要解決了分庫(kù)分表對(duì)應(yīng)用的透明化以及異構(gòu)數(shù)據(jù)庫(kù)之間的數(shù)據(jù)復(fù)制弟塞,它是一個(gè)基于集中式配置的 jdbc datasource實(shí)現(xiàn),具有主備拙已,讀寫分離,動(dòng)態(tài)數(shù)據(jù)庫(kù)配置等功能摧冀。
TDDL所處的位置(tddl通用數(shù)據(jù)訪問層倍踪,部署在客戶端的jar包,用于將用戶的SQL路由到指定的數(shù)據(jù)庫(kù)中)
主要優(yōu)點(diǎn):
1.數(shù)據(jù)庫(kù)主備和動(dòng)態(tài)切換
2.帶權(quán)重的讀寫分離
3.單線程讀重試
4.集中式數(shù)據(jù)源信息管理和動(dòng)態(tài)變更
5.剝離的穩(wěn)定jboss數(shù)據(jù)源
6.支持mysql和oracle數(shù)據(jù)庫(kù)
7.基于jdbc規(guī)范索昂,很容易擴(kuò)展支持實(shí)現(xiàn)jdbc規(guī)范的數(shù)據(jù)源
8.無(wú)server,client-jar形式存在建车,應(yīng)用直連數(shù)據(jù)庫(kù)
9.讀寫次數(shù),并發(fā)度流程控制,動(dòng)態(tài)變更
10.可分析的日志打印,日志流控椒惨,動(dòng)態(tài)變更
TDDL必須要依賴diamond配置中心(diamond是淘寶內(nèi)部使用的一個(gè)管理持久配置的系統(tǒng)缤至,目前淘寶內(nèi)部絕大多數(shù)系統(tǒng)的配置,由diamond來(lái)進(jìn)行統(tǒng)一管理康谆,同時(shí)diamond也已開源)领斥。
TDDL動(dòng)態(tài)數(shù)據(jù)源使用示例說明:http://rdc.taobao.com/team/jm/archives/1645
diamond簡(jiǎn)介和快速使用:http://jm.taobao.org/tag/diamond%E4%B8%93%E9%A2%98/
TDDL源碼:https://github.com/alibaba/tb_tddl 
TDDL復(fù)雜度相對(duì)較高。當(dāng)前公布的文檔較少沃暗,只開源動(dòng)態(tài)數(shù)據(jù)源月洛,分表分庫(kù)部分還未開源,還需要依賴diamond孽锥,不推薦使用嚼黔。
終其所有,我們研究中間件的目的是使數(shù)據(jù)庫(kù)實(shí)現(xiàn)性能的提高惜辑。具體使用哪種還要經(jīng)過深入的研究唬涧,嚴(yán)謹(jǐn)?shù)臏y(cè)試才可決定

2. Atlas(Qihoo 360)

Atlas是由 Qihoo 360, Web平臺(tái)部基礎(chǔ)架構(gòu)團(tuán)隊(duì)開發(fā)維護(hù)的一個(gè)基于MySQL協(xié)議的數(shù)據(jù)中間層項(xiàng)目。它是在mysql-proxy 0.8.2版本的基礎(chǔ)上盛撑,對(duì)其進(jìn)行了優(yōu)化碎节,增加了一些新的功能特性。360內(nèi)部使用Atlas運(yùn)行的mysql業(yè)務(wù)撵彻,每天承載的讀寫請(qǐng)求數(shù)達(dá)幾十億條钓株。
Altas架構(gòu):
Atlas是一個(gè)位于應(yīng)用程序與MySQL之間实牡,它實(shí)現(xiàn)了MySQL的客戶端與服務(wù)端協(xié)議,作為服務(wù)端與應(yīng)用程序通訊轴合,同時(shí)作為客戶端與MySQL通訊创坞。它對(duì)應(yīng)用程序屏蔽了DB的細(xì)節(jié),同時(shí)為了降低MySQL負(fù)擔(dān)受葛,它還維護(hù)了連接池题涨。
Altas的一些新特性:
1.主庫(kù)宕機(jī)不影響讀
主庫(kù)宕機(jī),Atlas自動(dòng)將宕機(jī)的主庫(kù)摘除总滩,寫操作會(huì)失敗纲堵,讀操作不受影響。從庫(kù)宕機(jī)闰渔,Atlas自動(dòng)將宕機(jī)的從庫(kù)摘除席函,對(duì)應(yīng)用沒有影響。在mysql官方的proxy中主庫(kù)宕機(jī)冈涧,從庫(kù)亦不可用茂附。
2.通過管理接口,簡(jiǎn)化管理工作督弓,DB的上下線對(duì)應(yīng)用完全透明营曼,同時(shí)可以手動(dòng)上下線。
3.自己實(shí)現(xiàn)讀寫分離
(1)為了解決讀寫分離存在寫完馬上就想讀而這時(shí)可能存在主從同步延遲的情況愚隧,Altas中可以在SQL語(yǔ)句前增加 /*master*/ 就可以將讀請(qǐng)求強(qiáng)制發(fā)往主庫(kù)蒂阱。
(2)如圖2中,主庫(kù)可設(shè)置多項(xiàng)狂塘,用逗號(hào)分隔录煤,從庫(kù)可設(shè)置多項(xiàng)和權(quán)重,達(dá)到負(fù)載均衡荞胡。
4.自己實(shí)現(xiàn)分表
(1)需帶有分表字段辐赞。
(2)支持SELECT、INSERT硝训、UPDATE响委、DELETE、REPLACE語(yǔ)句窖梁。
(3)支持多個(gè)子表查詢結(jié)果的合并和排序赘风。
5.之前官方主要功能邏輯由使用lua腳本編寫,效率低纵刘,Atlas用C改寫邀窃,QPS提高,latency降低。
6.安全方面的提升
(1)通過配置文件中的pwds參數(shù)進(jìn)行連接Atlas的用戶的權(quán)限控制瞬捕。
(2)通過client-ips參數(shù)對(duì)有權(quán)限連接Atlas的ip進(jìn)行過濾鞍历。
(3)日志中記錄所有通過Altas處理的SQL語(yǔ)句,包括客戶端IP肪虎、實(shí)際執(zhí)行該語(yǔ)句的DB劣砍、執(zhí)行成功與否、執(zhí)行所耗費(fèi)的時(shí)間 
7.平滑重啟
 通過配置文件中設(shè)置lvs-ips參數(shù)實(shí)現(xiàn)平滑重啟功能扇救,否則重啟Altas的瞬間那些SQL請(qǐng)求都會(huì)失敗刑枝。該參數(shù)前面掛接的lvs的物理網(wǎng)卡的ip,注意不是虛ip迅腔。平滑重啟的條件是至少有兩臺(tái)配置相同的Atlas且掛在lvs之后
地址:https://github.com/Qihoo360/Atlas

3.heisenberg(百度)

強(qiáng)大好用的mysql分庫(kù)分表中間件,來(lái)自百度
其優(yōu)點(diǎn): 分庫(kù)分表與應(yīng)用脫離装畅,分庫(kù)表如同使用單庫(kù)表一樣 減少db 連接數(shù)壓力 熱重啟配置 可水平擴(kuò)容 遵守Mysql原生協(xié)議 讀寫分離 無(wú)語(yǔ)言限制,mysqlclient,c,java等都可以使用 Heisenberg服務(wù)器通過管理命令可以查看沧烈,如連接數(shù)掠兄,線程池,結(jié)點(diǎn)等锌雀,并可以調(diào)整 采用velocity的分庫(kù)分表腳本進(jìn)行自定義分庫(kù)表徽千,相當(dāng)?shù)撵`活
qq群:150720285 郵箱:brucest0078@gmail.com
網(wǎng)址:https://github.com/songwie/heisenberg

4.alibaba.cobar(是阿里巴巴(B2B)部門開發(fā))

Cobar是阿里巴巴(B2B)部門開發(fā)的一種關(guān)系型數(shù)據(jù)的分布式處理系統(tǒng),它可以在分布式的環(huán)境下看上去像傳統(tǒng)數(shù)據(jù)庫(kù)一樣為您提供海量數(shù)據(jù)服務(wù)汤锨。那么具體說說我們?yōu)槭裁匆盟蛘fcobar--能干什么百框?以下是我們業(yè)務(wù)運(yùn)行中會(huì)存在的一些問題:
1.隨著業(yè)務(wù)的進(jìn)行數(shù)據(jù)庫(kù)的數(shù)據(jù)量和訪問量的劇增闲礼,需要對(duì)數(shù)據(jù)進(jìn)行水平拆分來(lái)降低單庫(kù)的壓力,而且需要高效且相對(duì)透明的來(lái)屏蔽掉水平拆分的細(xì)節(jié)铐维。
2.為提高訪問的可用性柬泽,數(shù)據(jù)源需要備份。
3.數(shù)據(jù)源可用性的檢測(cè)和failover嫁蛇。
4.前臺(tái)的高并發(fā)造成后臺(tái)數(shù)據(jù)庫(kù)連接數(shù)過多锨并,降低了性能,怎么解決睬棚。 
針對(duì)以上問題就有了cobar施展自己的空間了第煮,cobar中間件以proxy的形式位于前臺(tái)應(yīng)用和實(shí)際數(shù)據(jù)庫(kù)之間,對(duì)前臺(tái)的開放的接口是mysql通信協(xié)議抑党。將前臺(tái)SQL語(yǔ)句變更并按照數(shù)據(jù)分布規(guī)則轉(zhuǎn)發(fā)到合適的后臺(tái)數(shù)據(jù)分庫(kù)包警,再合并返回結(jié)果,模擬單庫(kù)下的數(shù)據(jù)庫(kù)行為底靠。 
1.通過Cobar提供一個(gè)名為test的數(shù)據(jù)庫(kù)害晦,其中包含t1,t2兩張表。后臺(tái)有3個(gè)MySQL實(shí)例(ip:port)為其提供服務(wù)暑中,分別為:A,B,C壹瘟。
2.期望t1表的數(shù)據(jù)放置在實(shí)例A中鲫剿,t2表的數(shù)據(jù)水平拆成四份并在實(shí)例B和C中各自放兩份。t2表的數(shù)據(jù)要具備HA功能稻轨,即B或者C實(shí)例其中一個(gè)出現(xiàn)故障灵莲,不影響使用且可提供完整的數(shù)據(jù)服務(wù)。
cabar優(yōu)點(diǎn)總結(jié):
1.數(shù)據(jù)和訪問從集中式改變?yōu)榉植迹?(1)Cobar支持將一張表水平拆分成多份分別放入不同的庫(kù)來(lái)實(shí)現(xiàn)表的水平拆分
(2)Cobar也支持將不同的表放入不同的庫(kù)
(3) 多數(shù)情況下澄者,用戶會(huì)將以上兩種方式混合使用
注意0蚀簟:Cobar不支持將一張表,例如test表拆分成test_1,test_2, test_3.....放在同一個(gè)庫(kù)中粱挡,必須將拆分后的表分別放入不同的庫(kù)來(lái)實(shí)現(xiàn)分布式赠幕。
2.解決連接數(shù)過大的問題。
3.對(duì)業(yè)務(wù)代碼侵入性少询筏。
4.提供數(shù)據(jù)節(jié)點(diǎn)的failover,HA:
(1)Cobar的主備切換有兩種觸發(fā)方式榕堰,一種是用戶手動(dòng)觸發(fā),一種是Cobar的心跳語(yǔ)句檢測(cè)到異常后自動(dòng)觸發(fā)嫌套。那么逆屡,當(dāng)心跳檢測(cè)到主機(jī)異常,切換到備機(jī)踱讨,如果主機(jī)恢復(fù)了魏蔗,需要用戶手動(dòng)切回主機(jī)工作,Cobar不會(huì)在主機(jī)恢復(fù)時(shí)自動(dòng)切換回主機(jī)痹筛,除非備機(jī)的心跳也返回異常莺治。
(2)Cobar只檢查MySQL主備異常,不關(guān)心主備之間的數(shù)據(jù)同步帚稠,因此用戶需要在使用Cobar之前在MySQL主備上配置雙向同步谣旁。
cobar缺點(diǎn):
開源版本中數(shù)據(jù)庫(kù)只支持mysql,并且不支持讀寫分離滋早。
網(wǎng)址:https://github.com/alibaba/cobar

5.MyCAT(基于阿里開源的Cobar產(chǎn)品而研發(fā))

什么是MYCAT

一個(gè)徹底開源的榄审,面向企業(yè)應(yīng)用開發(fā)的大數(shù)據(jù)庫(kù)集群
支持事務(wù)、ACID杆麸、可以替代MySQL的加強(qiáng)版數(shù)據(jù)庫(kù)
一個(gè)可以視為MySQL集群的企業(yè)級(jí)數(shù)據(jù)庫(kù)搁进,用來(lái)替代昂貴的Oracle集群
一個(gè)融合內(nèi)存緩存技術(shù)、NoSQL技術(shù)昔头、HDFS大數(shù)據(jù)的新型SQL Server
結(jié)合傳統(tǒng)數(shù)據(jù)庫(kù)和新型分布式數(shù)據(jù)倉(cāng)庫(kù)的新一代企業(yè)級(jí)數(shù)據(jù)庫(kù)產(chǎn)品
一個(gè)新穎的數(shù)據(jù)庫(kù)中間件產(chǎn)品

關(guān)鍵特性

支持SQL92標(biāo)準(zhǔn)
支持MySQL拷获、Oracle、DB2减细、SQL Server匆瓜、PostgreSQL等DB的常見SQL語(yǔ)法
遵守Mysql原生協(xié)議,跨語(yǔ)言,跨平臺(tái)驮吱,跨數(shù)據(jù)庫(kù)的通用中間件代理茧妒。
基于心跳的自動(dòng)故障切換,支持讀寫分離左冬,支持MySQL主從桐筏,以及galera cluster集群。
支持Galera for MySQL集群拇砰,Percona Cluster或者M(jìn)ariaDB cluster
基于Nio實(shí)現(xiàn)梅忌,有效管理線程,解決高并發(fā)問題除破。
支持?jǐn)?shù)據(jù)的多片自動(dòng)路由與聚合牧氮,支持sum,count,max等常用的聚合函數(shù),支持跨庫(kù)分頁(yè)。
支持單庫(kù)內(nèi)部任意join瑰枫,支持跨庫(kù)2表join踱葛,甚至基于caltlet的多表join。
支持通過全局表光坝,ER關(guān)系的分片策略尸诽,實(shí)現(xiàn)了高效的多表join查詢。
支持多租戶方案盯另。
支持分布式事務(wù)(弱xa)性含。
支持XA分布式事務(wù)(1.6.5)。
支持全局序列號(hào)鸳惯,解決分布式下的主鍵生成問題商蕴。
分片規(guī)則豐富,插件化開發(fā)悲敷,易于擴(kuò)展。
強(qiáng)大的web俭令,命令行監(jiān)控后德。
支持前端作為MySQL通用代理,后端JDBC方式支持Oracle抄腔、DB2瓢湃、SQL Server 、 mongodb 赫蛇、巨杉绵患。
支持密碼加密
支持服務(wù)降級(jí)
支持IP白名單
支持SQL黑名單、sql注入攻擊攔截
支持prepare預(yù)編譯指令(1.6)
支持非堆內(nèi)存(Direct Memory)聚合計(jì)算(1.6)
支持PostgreSQL的native協(xié)議(1.6)
支持mysql和oracle存儲(chǔ)過程悟耘,out參數(shù)落蝙、多結(jié)果集返回(1.6)
支持zookeeper協(xié)調(diào)主從切換、zk序列、配置zk化(1.6)
支持庫(kù)內(nèi)分表(1.6)
集群基于ZooKeeper管理筏勒,在線升級(jí)移迫,擴(kuò)容,智能優(yōu)化管行,大數(shù)據(jù)處理(2.0開發(fā)版)厨埋。

MYCAT監(jiān)控

支持對(duì)Mycat、Mysql性能監(jiān)控
支持對(duì)Mycat的JVM內(nèi)存提供監(jiān)控服務(wù)
支持對(duì)線程的監(jiān)控
支持對(duì)操作系統(tǒng)的CPU捐顷、內(nèi)存荡陷、磁盤、網(wǎng)絡(luò)的監(jiān)控
網(wǎng)址:http://www.mycat.org.cn/

6.Oceanus(58同城數(shù)據(jù)庫(kù)中間件)

Oceanus致力于打造一個(gè)功能簡(jiǎn)單迅涮、可依賴废赞、易于上手、易于擴(kuò)展逗柴、易于集成的解決方案蛹头,甚至是平臺(tái)化系統(tǒng)。擁抱開源戏溺,提供各類插件機(jī)制集成其他開源項(xiàng)目渣蜗,新手可以在幾分鐘內(nèi)上手編程,分庫(kù)分表邏輯不再與業(yè)務(wù)緊密耦合旷祸,擴(kuò)容有標(biāo)準(zhǔn)模式耕拷,減少意外錯(cuò)誤的發(fā)生。

Oceanus內(nèi)部名詞定義
datanode:數(shù)據(jù)源節(jié)點(diǎn)托享。為一個(gè)數(shù)據(jù)源命名骚烧,配置鏈接屬性、報(bào)警實(shí)現(xiàn)
namenode:數(shù)據(jù)源的簇闰围。為一組數(shù)據(jù)源命名赃绊,指定這組數(shù)據(jù)源的負(fù)載方式、訪問模式羡榴、權(quán)重
table:映射表碧查。匹配解析sql中的table名稱,命中table標(biāo)簽的name屬性值后校仑,會(huì)執(zhí)行約定的路由邏輯
bean:實(shí)體忠售。由其他標(biāo)簽引用,實(shí)體類必須有無(wú)參的構(gòu)造函數(shù)
tracker:監(jiān)控埋點(diǎn)迄沫。涉及到計(jì)算和IO的功能點(diǎn)都有監(jiān)控點(diǎn)稻扬,自定義一個(gè)埋點(diǎn)實(shí)現(xiàn)類,當(dāng)功能耗時(shí)超出預(yù)期時(shí)會(huì)執(zhí)行其中的回調(diào)函數(shù)羊瘩,便于監(jiān)控和優(yōu)化系統(tǒng)
網(wǎng)址:https://github.com/58code/Oceanus

7.OneProxy(原支付寶首席架構(gòu)師樓方鑫開發(fā)泰佳,)

OneProxy是由原支付寶首席架構(gòu)師樓方鑫開發(fā)盼砍,目前由樓方鑫創(chuàng)立的杭州平民軟件公司(@平民架構(gòu))提供技術(shù)支持。它保留了MySQL-Proxy 0.8.4官方版本上其協(xié)議處理和軟件框架乐纸,然后對(duì)軟件做了大量?jī)?yōu)化衬廷,極大增強(qiáng)了系統(tǒng)的并發(fā)能力。目前已有多家公司在生成環(huán)境中使用汽绢,其中包括了支付吗跋、電商等行業(yè)。 
OneProxy的主要功能有:
1. 垂直分庫(kù)
2. 水平分表
3. Proxy集群【暫無(wú)文檔】
4. 讀高可用
5. 讀寫分離(master不參與讀)
6. 讀寫分離(master參與讀)
7. 寫高可用
8. 讀寫隨機(jī)
9. SQL檢查
10. SQL統(tǒng)計(jì)【暫無(wú)文檔】
11. 任務(wù)隊(duì)列監(jiān)控【暫無(wú)文檔】
12. 連接池管理【暫無(wú)文檔】
網(wǎng)址:http://www.cnblogs.com/youge-OneSQL/articles/4208583.html

8.vitess(谷歌開發(fā)的數(shù)據(jù)庫(kù)中間件)

谷歌開發(fā)的數(shù)據(jù)庫(kù)中間件宁昭,集群基于ZooKeeper管理跌宛,通過RPC方式進(jìn)行數(shù)據(jù)處理,總體分為积仗,server疆拘,command line,gui監(jiān)控 3部分寂曹。
網(wǎng)址:https://github.com/youtube/vitess

9.TSharding(蘑菇街白輝)

把這個(gè)組件應(yīng)用到交易的數(shù)據(jù)庫(kù)哎迄,在服務(wù)層和DAO層,訂單容量擴(kuò)展到千億量級(jí)隆圆,并且可以繼續(xù)水平擴(kuò)展漱挚。TSharding上線一年之后,我們將其開放出來(lái)渺氧。借鑒了Mybatis Plugin的方式
網(wǎng)址:https://github.com/baihui212/tsharding
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末旨涝,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子侣背,更是在濱河造成了極大的恐慌白华,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件贩耐,死亡現(xiàn)場(chǎng)離奇詭異弧腥,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)潮太,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門管搪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人消别,你說我怎么就攤上這事抛蚤√ㄐ唬” “怎么了寻狂?”我有些...
    開封第一講書人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)朋沮。 經(jīng)常有香客問我蛇券,道長(zhǎng)缀壤,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任纠亚,我火速辦了婚禮塘慕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蒂胞。我一直安慰自己图呢,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開白布骗随。 她就那樣靜靜地躺著蛤织,像睡著了一般。 火紅的嫁衣襯著肌膚如雪鸿染。 梳的紋絲不亂的頭發(fā)上指蚜,一...
    開封第一講書人閱讀 51,679評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音涨椒,去河邊找鬼摊鸡。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蚕冬,可吹牛的內(nèi)容都是我干的免猾。 我是一名探鬼主播,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼播瞳,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼掸刊!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起赢乓,我...
    開封第一講書人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤忧侧,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后牌芋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蚓炬,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年躺屁,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了肯夏。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡犀暑,死狀恐怖驯击,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情耐亏,我是刑警寧澤徊都,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站广辰,受9級(jí)特大地震影響暇矫,放射性物質(zhì)發(fā)生泄漏主之。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一李根、第九天 我趴在偏房一處隱蔽的房頂上張望槽奕。 院中可真熱鬧,春花似錦房轿、人聲如沸粤攒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)琼讽。三九已至,卻和暖如春洪唐,著一層夾襖步出監(jiān)牢的瞬間钻蹬,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工凭需, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留问欠,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓粒蜈,卻偏偏與公主長(zhǎng)得像顺献,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子枯怖,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容