GitHub 標星 10,000+,Apache 頂級項目 ShardingSphere 的開源之路

【CSDN 編者按】幾天前疾层,當 GitHub 全球產(chǎn)品技術(shù)生態(tài)總經(jīng)理 Michael Francisco 談到中國開發(fā)者已經(jīng)成為 GitHub 上最活躍的群體時将饺,有開發(fā)者提出數(shù)量之后質(zhì)量也要跟上。的確痛黎,過去十數(shù)年間予弧,中國開源一直呈現(xiàn)企業(yè)熱使用熱社區(qū)冷開發(fā)冷的景象,不過現(xiàn)在正在顯著發(fā)生變化湖饱,從 Apache ShardingSphere 的成長歷程就可以一窺掖蛤。

歷經(jīng) 4 年,從第一行代碼到今天井厌,ShardingSphere 正式成為 Apache 頂級開源項目蚓庭,GitHub 開發(fā)者關(guān)系主管 Martin Woodward 如此評價道:“我們很高興看到這個社區(qū)在過去兩年里發(fā)展得非常好致讥,現(xiàn)在有 120 多個直接貢獻者∑髟蓿”在本文中垢袱,其核心初創(chuàng)人員為我們分享了它的開源之路,相信會對所有熱愛開源希望有所建樹的開發(fā)者們大有裨益港柜。

前言

從 Sharding-JDBC 到 Apache ShardingSphere请契;

從輕量級的分庫分表中間件到完整閉環(huán)的分布式數(shù)據(jù)庫中間件平臺;

從 2016 年 1 月的第一行代碼到現(xiàn)今的 300K+行代碼夏醉;

從寥寥無幾的關(guān)注到 GitHub 10K+ 的 star爽锥;

從無人問津的社區(qū)到 100+ 位貢獻者;

從公司內(nèi)部的應(yīng)用類庫到 100+ 的采用公司列表畔柔;

從尋找 mentor 到順利成為 Apache 頂級項目救恨。

……

Apache ShardingSphere 團隊核心初創(chuàng)人員將講述這其中的跌宕起伏,并以時間軸為線索為你呈現(xiàn)它開源之路背后的故事释树。

項目介紹

Apache ShardingSphere 是一套開源的分布式數(shù)據(jù)庫中間件解決方案組成的生態(tài)圈肠槽,它由 3 款相互獨立,卻又能夠混合部署配合使用的產(chǎn)品組成奢啥。它們均提供標準化的數(shù)據(jù)分片秸仙、分布式事務(wù)和數(shù)據(jù)庫治理功能,可適用于如 Java 同構(gòu)桩盲、異構(gòu)語言寂纪、云原生等各種多樣化的應(yīng)用場景,核心功能如 1-1 所示赌结。

1-1 ShardingSphere 核心功能架構(gòu)圖

Apache ShardingSphere 由三個子項目組成捞蛋,形成一個完整的數(shù)據(jù)庫解決方案,合稱 J.P.S. 生態(tài)系統(tǒng)柬姚。

ShardingSphere-JDBC:定位為輕量級 Java 框架拟杉,在 Java 的 JDBC 層提供額外服務(wù)。它使用客戶端直連數(shù)據(jù)庫量承,以 jar 包形式提供服務(wù)搬设,無需額外部署和依賴,可理解為增強版的 JDBC 驅(qū)動撕捍,完全兼容 JDBC 和各種 ORM 框架拿穴。?

ShardingSphere-Proxy:定位為透明化的數(shù)據(jù)庫代理端,提供封裝了數(shù)據(jù)庫二進制協(xié)議的服務(wù)端版本忧风,用于完成對異構(gòu)語言的支持默色。目前提供 MySQL/PostgreSQL 版本,它可以使用任何兼容 MySQL/PostgreSQL 協(xié)議的訪問客戶端操作數(shù)據(jù)狮腿,對 DBA 更加友好腿宰。

ShardingSphere-Sidecar(TODO):定位為 Kubernetes 的云原生數(shù)據(jù)庫代理弟蚀,以 Sidecar 的形式代理所有對數(shù)據(jù)庫的訪問。通過無中心酗失、零侵入的方案提供與數(shù)據(jù)庫交互的的嚙合層义钉,即 Database Mesh,又可稱數(shù)據(jù)網(wǎng)格规肴。

Apache ShardingSphere 的亮點主要包括:

完整的分布式數(shù)據(jù)庫解決方案:提供數(shù)據(jù)分片捶闸、分布式事務(wù)、數(shù)據(jù)彈性遷移拖刃、數(shù)據(jù)庫和數(shù)據(jù)治理等核心能力删壮。

獨立的 SQL 解析引擎:支持多 SQL 方言的完全獨立化 SQL 解析引擎,能夠脫離 ShardingSphere 獨立使用兑牡。

可插拔微內(nèi)核:所有的 SQL 方言央碟、數(shù)據(jù)庫協(xié)議和功能都能夠通過 SPI 的可插拔方式加載或卸載,微內(nèi)核甚至在未來可以運行于無任何功能的空白環(huán)境中均函。

Apache 基金會

The most popular open source software is Apache.

這是對 Apache 開源軟件基金最好的描述和肯定亿虽。它旨在為全世界提供優(yōu)質(zhì)的開源軟件,同時歡迎全世界的朋友加入 Apache 社區(qū)貢獻力量苞也,并在這個過程中不斷成長洛勉、得到肯定、共建開源社區(qū)如迟。無論是否從事軟件開發(fā)工作收毫,大家多少都知道它的存在及其提供的優(yōu)質(zhì)開源項目,可見其影響之大殷勘、之深遠此再。

此外,參與 Apache 開源社區(qū)玲销,并在自己的努力下成為 Apache Committer输拇,更是大多數(shù)軟件開發(fā)工程師心之所向。

ShardingSphere 在開源之初痒玩,就有進入 Apache 開源組織基金會的計劃淳附。其原因有以下幾點:

Apache 基金會獨特的 Apache way 和社區(qū)建設(shè)思想會讓一個開源項目更規(guī)范、更有生命力蠢古;

Apache 基金會的導(dǎo)師制度會為一個開源社區(qū)帶來優(yōu)秀的指導(dǎo)和幫助;

Apache 基金會會為其下的開源項目帶來版權(quán)和商標上的法律保護别凹;

Apache 基金會在全世界范圍內(nèi)的影響不言而喻草讶,若是能進入 Apache 基金會,則會擴大項目的影響力炉菲,使其進入世界范圍的開源領(lǐng)域堕战。

Apache 基金會內(nèi)的項目會更有機會登上世界舞臺坤溃,并與其他開源項目建立友好交流,也能吸引更多貢獻者加入社區(qū)嘱丢。

但同樣薪介,進入 Apache 開源基金會的門檻可并不簡單,特別對于國內(nèi)的項目來說越驻,語言和地域的障礙無疑雪上加霜汁政。

如何為 Apache 做準備?

找尋 mentor 是進入 Apache 基金的最初且最重要的一步缀旁。

在了解了 Apache 基金會的運作方式后记劈,我們便踏上了找尋 mentor 之旅。參加各種與開源相關(guān)的分享會或 meetup并巍,借此來認識 Apache 的 member目木。但是,事情卻并不順利懊渡。多次的嘗試刽射、接觸換來的只是口頭的認可。這段時間我們確實倍感壓力和焦慮剃执,甚至打算以后再說柄冲,一切隨緣。

后來一個契機忠蝗,我們認識了吳晟和華為的姜寧现横。吳晟是 Apache SkyWalking 項目的 VP,在開源領(lǐng)域有豐富的經(jīng)驗阁最。他和 ShardingSphere 的前身 Sharding-JDBC 很有淵源戒祠,Sharding-JDBC 項目原型也有他參與設(shè)計,因此速种,他最終作為 ShardingSphere 的 PPMC 一同建設(shè)社區(qū)姜盈。在參與 ShardingSphere 社區(qū)建設(shè)的這一年多的時間里,他又陸續(xù)擔任了多個 Apache 孵化項目的 Mentor配阵,并在今年被選舉為 Apache Member馏颂。

而姜寧同樣是一位熱心又有經(jīng)驗的老手,是國內(nèi)最資深的 Apache Member 之一棋傍,在與他交流的過程中救拉,終于讓我們看到一些希望,他也最終成為了我們的 mentor瘫拣。

再后來亿絮,團隊 VP 張亮又前去上海參加 HDC 大會,認識了我們的另一位 mentor—— Craig L Russell,Craig 當時是 Apache 的秘書長派昧,所有的 SGA黔姜、ICLA 等法務(wù)文件均由他負責簽署。在 ShardingSphere 孵化的過程中蒂萎,Craig 當選了 Apache 軟件基金會的主席秆吵。他友善而和氣,給予了我們很多有關(guān)社區(qū)規(guī)范的實用建議五慈,也愿意助我們一臂之力纳寂。

第三位 mentor 則是由 Apache RocketMQ 的核心成員馮嘉擔任;最后由 Roman Shaposhnik 擔任項目的 Champion豺撑,為項目尋找導(dǎo)師之旅畫上完美句號烈疚。至今還記得我們當時的欣喜和激動。之前的無助聪轿、徘徊爷肝、失落在這一瞬間柳暗花明。

每個進入 Apache 基金會的項目陆错,一定都有自己的故事灯抛。尤其對于中國的項目來說,語言與地域的障礙會讓我們更加艱難音瓷。好在有越來越多的來自于中國的項目進入了 Apache 基金會对嚼,也能看到越來越多的華人活躍在 Apache 的郵件列表里,還有 ALC Beijing 的建立讓參與門檻不斷降低绳慎,這對想要參與的國內(nèi)朋友來說纵竖,確實是個 good news!

進入 Apache 孵化器

為了正式進入 Apache 孵化器,項目代碼、社區(qū)搭盾、文檔等都需要進行一系列的規(guī)范和整理站粟。這確實是個瑣碎但很重要的事情炒辉。

代碼層面,合規(guī)操作是首要原則。我們梳理第三方依賴的許可協(xié)議,確保滿足 Apache 軟件許可協(xié)議(ASL)合規(guī)的要求画舌;

社區(qū)方面,我們開始由中文轉(zhuǎn)變成英文已慢;

文檔方面則需要我們準備英文文檔曲聂,并準備相關(guān)的 proposal。

由于項目最開始的目標就是進入 Apache 基金會蛇受,所以在項目初期句葵,依賴就盡可能地簡單厕鹃,社區(qū)相對規(guī)范兢仰,文檔在不斷翻譯乍丈。不打無準備之仗,這些提前的準備讓這部分工作進展順利把将,而項目獲得 Apache 域名的那一刻轻专,大家才真切感受到所有付出得到了最有價值的回報。

除了學(xué)習寫規(guī)范代碼察蹲,團隊成員也開始學(xué)習 Apache 的規(guī)范请垛、運作方式、英文溝通渠道等細節(jié)洽议。我們開始了解到如何關(guān)注社區(qū)宗收,什么是 consensus decision,如何用異步方式進行郵件溝通亚兄。特別是郵件列表的學(xué)習非常重要混稽,你可以在其中找到歷史問題記錄、合規(guī)的解決方案审胚、優(yōu)秀的案例等匈勋。

Apache way 的探索

很多人認為只要代碼開放,就叫做開源膳叨。但其實洽洁,這僅僅只是開源旅程的第一步。

如何構(gòu)建一個活躍的社區(qū)菲嘴,如何理解 Apache way饿自,是一個更為重要的話題。ShardingSphere 在進入 Apache 孵化器初期并未能完全理解 Apache way龄坪,并且由于過度注重代碼風格昭雌,以至于參與門檻較高、社區(qū)活躍度平平悉默。

起初城豁,我們并不知道問題出在哪里,迷茫了很長一段時間抄课,直到在跟 Apache 的 member 不斷交流的過程中才漸漸意識到問題所在唱星,因此社區(qū)發(fā)起了有關(guān) committer bar 的討論,見圖 1-2跟磨。這是社區(qū)建設(shè)之路的轉(zhuǎn)折點间聊,因為從此 community over code 的理念開始逐漸滲入人心,并指導(dǎo)我們的行動抵拘。


1-2 Committer bar 討論郵件

仔細閱讀 Apache way 的關(guān)注點:

Earned Authority, Community of Peers, Open Communications, Consensus Decision Making, Responsible Oversight

你會發(fā)現(xiàn)它一直在強調(diào)合規(guī)哎榴、開放、平等、協(xié)作尚蝌,為的就是建立合規(guī)且活躍的項目社區(qū)迎变,盡可能地做到讓更多的人參與,平等溝通飘言,推動項目發(fā)展衣形,促進個人成長。秉持這個理念姿鸿,ShardingSphere 開始在多維度進行調(diào)整:

代碼:規(guī)整代碼結(jié)構(gòu)谆吴,劃分模塊功能,提供項目可插拔能力苛预,從而允許用戶局部參與某一模塊的同時句狼,盡量不破壞整體代碼結(jié)構(gòu);

心態(tài):開放的心態(tài)热某,編制社區(qū)任務(wù)腻菇,鼓勵社區(qū)朋友參與,相關(guān) PPMC 或 Committer 積極提供指導(dǎo)和幫助苫拍;

規(guī)范:梳理文檔和代碼規(guī)范芜繁,并提供詳細的訂閱、參與指南绒极,大范圍促進用戶自主進行社區(qū)貢獻骏令;

交流:鼓勵社區(qū)盡可能使用郵件和 Issue 進行討論從而公開討論內(nèi)容,同時針對較為細節(jié)的討論則放在微信群里進行垄提。此外榔袋,官方公眾號還會介紹社區(qū)的進展、Release铡俐、刊登技術(shù)文章等凰兑;

合作:與其他 Apache 社區(qū)建立聯(lián)系、增加溝通审丘,從合作交流中進行學(xué)習和發(fā)展吏够。

在孵化期間,Apache ShardingSphere 先后與 Apache SkyWalking滩报、Apache ServiceComb 進行項目的合作與集成锅知,不僅彼此的產(chǎn)品功能更加完善,還增加了社區(qū)成員之間的交流脓钾。此外售睹,還與 Apache DolphinScheduler(Incubating)和 Apache IoTDB(Incubating)舉辦了 co-meetup,詳見圖 1-3可训。還與 Apach pulsar 和 Apache APISIX(Incubating)的核心成員們進行了多次交流和探討昌妹。

1-3 co-meetup

經(jīng)過時間的積累捶枢,社區(qū)已有了質(zhì)的變化。從社區(qū)的郵件討論飞崖、GitHub 的數(shù)據(jù)展示中烂叔,你會發(fā)現(xiàn) ShardingSphere 的社區(qū)開始真正變得活躍與多元化。圖 1-4 展示了 ShardingSphere 在 Apache 孵化器一年多的社區(qū)數(shù)據(jù)變化蚜厉。

1-4 社區(qū)數(shù)據(jù)變化

社區(qū)與貢獻者之間的依賴和互贏也在整個過程中體現(xiàn)的淋漓盡致长已。對于貢獻者來說畜眨,他們會在這個開源社區(qū)中與其他人交流昼牛、協(xié)作。而這個持續(xù)的過程康聂,將帶來以下成果:

擴大人際交友圈

不斷學(xué)習與成長

提高自己的技術(shù)影響力

拓寬職業(yè)渠道

結(jié)合興趣贰健,享受過程

對于社區(qū)來說,這個相互幫助和溝通的過程則會:

拓展項目的功能

收獲活躍多元化的生態(tài)圈

增加項目知名度

獲得社區(qū)的可持續(xù)發(fā)展

從這個角度來看恬汁,不斷探索 Apache way 不也是希望出現(xiàn)這樣一種共贏而互助的局面嗎伶椿?Please remember community over code。

從孵化器畢業(yè)

所有孵化器的項目最終都希望能走向 TLP(Top Level Project)氓侧。在 mentor 的指導(dǎo)脊另、PPMC 的探索、committer 和 contributor 的支持與付出下约巷,ShardingSphere 開始籌備 Apache 孵化器畢業(yè)偎痛。

依據(jù) Apache 的成熟度評估模型圖 1-5,在以下幾個方面評估社區(qū)和項目是否成熟独郎。其實在 Apache 項目社區(qū)的初建階段踩麦,我們建議大家就在這幾個方面發(fā)力,因為這是官方給予的畢業(yè)標準及指導(dǎo)方針氓癌。以此為方向谓谦,探索屬于各自項目的獨特社區(qū)運作方式,也可謂是百花齊放贪婉。

1-5 1-5 Apache 項目成熟度評估模型

經(jīng)歷 Release反粥、社區(qū)建設(shè)、Apache member 的指導(dǎo)疲迂、meetup 舉辦等一系列事件才顿,ShardingSphere 終于在社區(qū)發(fā)起了畢業(yè)討論,開始接受 Apache member 及所有 Apache 成員的指導(dǎo)和評估鬼譬。雖然最終以 10 +1 binding votes娜膘,6 +1 non-binding votes 和 no -1 or +/-0 votes 通過畢業(yè)投票,但過程也是一波三折优质。

即便是經(jīng)過 1 年多的社區(qū)建設(shè)竣贪,項目基本成熟军洼,但面對畢業(yè)還是有很多工作要合乎畢業(yè)規(guī)范。例如確認商標是否可使用演怎、完成項目官網(wǎng)有關(guān) Apache brand 和 trademark 的陳述匕争、網(wǎng)站符合 Apache way 等。在這個投票期間爷耀,由于官網(wǎng)存在 fork me on github 的 slogan甘桑,而這一問題一直頻繁出現(xiàn)并且沒有結(jié)論,所以其他 Apache 成員借此單獨開辟了 thread 來討論這一問題歹叮,查看 Email List 了解詳情跑杭。雖說這一舉讓 ShardingSphere 被成功推到前臺,間接提高了項目的曝光咆耿,卻也能看出 Apache 對于第三方獨立德谅、禁止參與商業(yè)行為的重視和嚴苛。

可喜可賀的是萨螺,2020 年 4 月 16 日窄做,Apache ShardingSphere 最終通過基金會董事會決議,加入了 TLP 行業(yè)慰技!

未來的路

回首這一路椭盏,收獲與付出兼存。這篇文章旨在用故事為大家?guī)砀鼮樯鷦游巧獭⑷娴年U述和論據(jù)支撐掏颊,而在文章結(jié)尾,我們也特別想對開發(fā)者朋友說:

愿這篇文章能為你打開新的思路手报,它像一扇窗蚯舱,為有心的人呈現(xiàn)另一種職業(yè)風景,帶來新的思潮掩蛤。

希望文章有關(guān)”參與開源社區(qū)意義“的部分能為你解答有關(guān)開源價值的問題枉昏。

每一個 Apache 開源項目都有自己獨特的社區(qū)發(fā)展方向和價值觀。參與其中揍鸟,選擇與你氣味相投的社區(qū)兄裂,是一件很有價值且很有意思的事情。

有張有弛阳藻,有進有退晰奖;不妄自菲薄,也不目空一切腥泥;在開源的領(lǐng)域匾南,更確切說在 Apache 開源社區(qū),更多的是遵守規(guī)范蛔外、開放包容蛆楞、平等交流溯乒、互相學(xué)習。?

低頭工作豹爹,便全力以赴裆悄;耳聞窗外,便接收新潮臂聋,更新大腦光稼。

從 Apache 孵化器畢業(yè)成為 TLP,對 ShardingSphere 來說孩等,并不是一個結(jié)束艾君,而是另一個開始。在產(chǎn)品功能上瞎访,ShardingSphere 將繼續(xù)在分布式數(shù)據(jù)庫中間件平臺上深耕腻贰,打磨出以“分布式”為核心的數(shù)據(jù)庫中間件生態(tài)圈,從而提供完整的解決方案扒秸,如圖 1-6 所示。從社區(qū)角度講冀瓦,ShardingSphere 仍將繼續(xù)活躍社區(qū)伴奥,鼓勵更多朋友成為社區(qū)的 committer 和 contributor。所以翼闽,我們歡迎大家關(guān)注 ShardingSphere拾徙,并加入到社區(qū)來,與更多知己結(jié)伴前行感局。未來之路不可預(yù)測尼啡,但立足當下,眺望未來询微,初心未改崖瞭,即便亦步亦趨,也愿一葦以航撑毛!

1-6?Apache ShardingSphere 生態(tài)圈

Apache ShardingSphere Committer 列表

Mentor

Craig L Russell

馮嘉书聚,阿里巴巴

姜寧,華為

PMC

張亮藻雌,京東數(shù)科

潘娟雌续,京東數(shù)科

趙俊,京東數(shù)科

張永倫胯杭,京東數(shù)科

陳清陽驯杜,翼支付

曹昊,海南新軟

馬曉光

杜紅軍做个,領(lǐng)創(chuàng)智信

楊翊鸽心,京東數(shù)科

吳晟腔呜,tetrate.io

高洪濤,tetrate.io

Committer

李亞再悼,九個小海豹

顏志一核畴,DaoCloud

董宗磊,京東零售

孫海生冲九,瓜子

王奇谤草,京東零售

歐陽文,一卡易

蔣曉峰莺奸,阿里巴巴

王光遠

秦金衛(wèi)丑孩,京東數(shù)科

岳令

趙亞楠

Apache ShardingSphere 官網(wǎng):

https://shardingsphere.apache.org/

GitHub 地址:

https://github.com/apache/shardingsphere

作者簡介:

潘娟,京東數(shù)科高級 DBA灭贷,Apache ShardingSphere PMC温学。

張亮,京東數(shù)科數(shù)據(jù)研發(fā)負責人甚疟,Apache ShardingSphere VP仗岖,Apache Dubbo PMC,人氣開源項目 Elastic-Job 作者览妖。

開源社線上直播?“源”來如此?報名方式

掃描下方二維碼通過活動行報名填寫信息轧拄,添加小編微信號:chatbot-yuan,回復(fù)OS讽膏,進入“源”來如此粉絲群檩电。相信你可以在這里和志同道合的伙伴們愉快交流!

8月9日14:00-16:00府树,我們不見不散俐末!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市奄侠,隨后出現(xiàn)的幾起案子卓箫,更是在濱河造成了極大的恐慌,老刑警劉巖遭铺,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件丽柿,死亡現(xiàn)場離奇詭異,居然都是意外死亡魂挂,警方通過查閱死者的電腦和手機甫题,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來涂召,“玉大人坠非,你說我怎么就攤上這事」” “怎么了炎码?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵盟迟,是天一觀的道長。 經(jīng)常有香客問我潦闲,道長攒菠,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任歉闰,我火速辦了婚禮辖众,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘和敬。我一直安慰自己凹炸,他們只是感情好,可當我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布昼弟。 她就那樣靜靜地躺著啤它,像睡著了一般。 火紅的嫁衣襯著肌膚如雪舱痘。 梳的紋絲不亂的頭發(fā)上变骡,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天,我揣著相機與錄音衰粹,去河邊找鬼锣光。 笑死,一個胖子當著我的面吹牛铝耻,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蹬刷,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼瓢捉,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了办成?” 一聲冷哼從身側(cè)響起泡态,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎迂卢,沒想到半個月后某弦,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡而克,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年靶壮,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片员萍。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡腾降,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出碎绎,到底是詐尸還是另有隱情螃壤,我是刑警寧澤抗果,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站奸晴,受9級特大地震影響冤馏,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜寄啼,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一逮光、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧辕录,春花似錦睦霎、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蚣旱,卻和暖如春碑幅,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背塞绿。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工沟涨, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人异吻。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓裹赴,卻偏偏與公主長得像,于是被迫代替她去往敵國和親诀浪。 傳聞我的和親對象是個殘疾皇子棋返,可洞房花燭夜當晚...
    茶點故事閱讀 43,440評論 2 348