2021騰訊最新面經(jīng)總結(jié):面試題庫+實(shí)戰(zhàn)筆記(附答案解析)

背景

985畢業(yè)至今剛好一年,我曾做過兩三個月的測試感覺不是很合適擎析,后面選擇從事后端開發(fā)簿盅,還挺香。現(xiàn)在已經(jīng)進(jìn)入秋招的提前批了,想著去大廠試試水桨醋,就去了騰訊见秽,整個一面下來我整個人都傻了,表示懷疑人生...沒想過一面就能問這么多讨盒,瘋狂轟炸解取,連環(huán)50問,不得停歇返顺。感覺我這輩子都不會忘記這次面試經(jīng)歷了禀苦,給大家看看我的面試過程,我想遂鹊,恐怕你也會表示同感振乏。

image
> 注意:此次面試采用的是電話面試,我會復(fù)述全部的面試過程以及個人的回答情況和反思與總結(jié)秉扑,并且會分享我的面試學(xué)習(xí)的刷題筆記慧邮,有需要的添加小助理vx:mxzFAFAFA即可!舟陆!**

我的面試過程(歷經(jīng)70mins)

1误澳、個人履歷簡述

2、項(xiàng)目簡述

  • 主要突出重難點(diǎn)秦躯,我bb了一堆業(yè)務(wù)邏輯結(jié)果人家都不感興趣

3忆谓、SpringAOP實(shí)現(xiàn)

  • JDK動態(tài)代理:實(shí)現(xiàn)Invocationhandler接口,本質(zhì)上是new一個繼承了所有類上Interface的Proxy對象踱承,然后通過method.invoke進(jìn)行調(diào)用
  • CGLib動態(tài)代理:在內(nèi)存中動態(tài)生成子類對原對象進(jìn)行代理倡缠,無法代理final類以及方法
  • 共同限制:無法代理到當(dāng)前class當(dāng)中this引用的嵌套方法

4、AOP用的哪種茎活?

  • 默認(rèn)用的JDK動態(tài)代理

5昙沦、JDK動態(tài)代理以及CGLib動態(tài)代理性能比較

  • JDK走的反射,會多一些反射調(diào)用的開銷(方法權(quán)限驗(yàn)證载荔、調(diào)用開銷等)
  • CGLib需要創(chuàng)建新對象盾饮,在創(chuàng)建新對象上,即初始化時會多一些開銷

6身辨、Java的線程池用過嗎丐谋,具體參數(shù)講一下

Java的線程池是一個三級存儲結(jié)構(gòu),線程先放入核心線程池煌珊,滿了之后放到緩存隊(duì)列當(dāng)中号俐,最后如果緩存隊(duì)列也滿了則擴(kuò)容新線程,所以參數(shù)有:

  • 核心線程數(shù)量
  • 緩存隊(duì)列類型
  • 最大線程數(shù)量
  • 線程活躍時間
  • 線程工廠方法(寫日志定庵、重命名線程等)

7吏饿、線程池的Execute和Submit區(qū)別

  • Execute執(zhí)行runnable踪危,Submit可以執(zhí)行Future,我們一般用countDownLatch+Future來獲取所有的線程結(jié)果

8猪落、繼續(xù)問贞远,還有別的區(qū)別嗎?

  • 不知道了笨忌,后續(xù)查了發(fā)現(xiàn)區(qū)別如下
  • Execute會在運(yùn)行期直接拋出異常蓝仲,Submit之后在調(diào)用Future.get的時候才會拋出異常

9、線程池如何保證當(dāng)前線程獲取池內(nèi)的worker的時候不產(chǎn)生爭用

  • volatile的state標(biāo)志這個worker有沒有被使用

10官疲、volatile的特性

  • 通過禁止指令重排序來保證內(nèi)存可見性袱结,實(shí)際使用內(nèi)存屏障實(shí)現(xiàn)的

11、內(nèi)存屏障分幾種途凫?

當(dāng)時記不得了垢夹,回頭查了一下如下:

  • LoadLoad屏障:對于這樣的語句Load1; LoadLoad; Load2,在Load2及后續(xù)讀取操作要讀取的數(shù)據(jù)被訪問前维费,保證Load1要讀取的數(shù)據(jù)被讀取完畢果元。
  • StoreStore屏障:對于這樣的語句Store1; StoreStore; Store2,在Store2及后續(xù)寫入操作執(zhí)行前犀盟,保證Store1的寫入操作對其它處理器可見而晒。
  • LoadStore屏障:對于這樣的語句Load1; LoadStore; Store2,在Store2及后續(xù)寫入操作被刷出前且蓬,保證Load1要讀取的數(shù)據(jù)被讀取完畢欣硼。
  • StoreLoad屏障:對于這樣的語句Store1; StoreLoad; Load2,在Load2及后續(xù)所有讀取操作執(zhí)行前恶阴,保證Store1的寫入對所有處理器可見。它的開銷是四種屏障中最大的豹障。在大多數(shù)處理器的實(shí)現(xiàn)中冯事,這個屏障是個萬能屏障,兼具其它三種內(nèi)存屏障的功能血公。

12昵仅、除了在volatile當(dāng)中使用了內(nèi)存屏障,JAVA還有哪里使用了內(nèi)存屏障

  • 這個真不知道累魔,知道的小伙伴請?jiān)谠u論區(qū)指點(diǎn)一二

13摔笤、你之前講到了CountDownLatch,你知道它的內(nèi)部實(shí)現(xiàn)嗎

  • 知道垦写,用的AQS吕世,在state=0的時候才允許所有等待的線程全部通過

14、簡單講一下AQS

AQS核心設(shè)計:

  • 一個volatile int state的狀態(tài)值梯投,使用volatile保證線程可見性命辖,使用int來提供可重入的多資源能力
  • 雙向隊(duì)列况毅,首節(jié)點(diǎn)為執(zhí)行節(jié)點(diǎn),可以根據(jù)執(zhí)行節(jié)點(diǎn)的Node信息判斷是ShareLock還是ExclusiveLock尔艇,會關(guān)聯(lián)一個執(zhí)行線程尔许,來提供可重入的判斷
  • 加鎖的時候若是公平鎖則嘗試CAS載入隊(duì)列,若是非公平鎖則直接入隊(duì)列
  • 解鎖的時候直接喚醒后繼的第一個wait節(jié)點(diǎn)

15终娃、加鎖之后AQS是如何響應(yīng)中斷的味廊?

  • 太細(xì)節(jié)了真不會,之前復(fù)習(xí)源碼沒看這么深(結(jié)束之后補(bǔ)漏洞)

16棠耕、OK問點(diǎn)別的余佛,AQS存在什么實(shí)現(xiàn)呢?

  • 用過的ReentranceLock昧辽、CountDownLatch

17衙熔、講講實(shí)現(xiàn)

  • ReentranceLock通過判斷線程是否相同進(jìn)行沖入
  • CountDownLatch在state為0的時候才讓所有的await通過

18、聽說過ReadWriteLock嗎搅荞,你之前提到AQS當(dāng)中只有一個State那你如何用一個State去支撐讀寫兩種狀態(tài)

  • 一個state是Int红氯,可以分高位給Read,低位給Write咕痛,就當(dāng)個String用了

19痢甘、Int幾個字節(jié)

  • 我居然回答了32個,應(yīng)該是32位茉贡,8位一個byte塞栅,共計四個byte

20、你們用過緩存嗎

  • 沒有腔丧,但是用redis做了分布式鎖

21放椰、你說說下分布式鎖怎么做的?

  • 分布式鎖也是一個鎖愉粤,需要滿足幾個特性砾医,1 可重入 2 可以識別加鎖的身份防止ABA問題 3 考慮是否需要續(xù)約
  • key是所需要加上的鎖的業(yè)務(wù)資源唯一編碼,value是當(dāng)前線程的uuid衣厘,uuid存在threadLocal內(nèi) 加鎖的時候用的jedis如蚜,先設(shè)一個過期時間,然后用ex影暴,若不存在key則添加新key错邦,若已經(jīng)存在則直接失敗
  • 解鎖用的阿里云企業(yè)版的CAD(compareAndDelete),原子比較并解鎖型宙,本質(zhì)是通過lua腳本進(jìn)行的類似事務(wù)操作

22撬呢、除了redis還有什么可以做分布式鎖?

  • Mysql早歇、zookeeper等

23倾芝、如果讓你用Mysql做分布式鎖你怎么做

  • 新建一張表讨勤,主鍵為需要鎖的鎖key,col1為線程uuid晨另,col2為ttl時間
  • 加鎖的時候在一個事務(wù)中選取當(dāng)前key的record潭千,若存在則判斷ttl,若不存在則直接可以插入
  • 解鎖的時候直接把record刪除即可
  • 起一個定時任務(wù)來遍歷表借尿,清楚過期鍵防止無限膨脹

24刨晴、zookeeper了解嗎

  • 一點(diǎn)點(diǎn),攝入不深

25路翻、那我們繼續(xù)聊聊Redis吧狈癞,Redis有什么數(shù)據(jù)結(jié)構(gòu)?

  • List茂契,Hash蝶桶,Set,Zset掉冶,List

26真竖、Zset怎么實(shí)現(xiàn)的?

  • 跳表+map實(shí)現(xiàn)

27厌小、什么是跳表恢共?

  • 常規(guī)鏈表只有一個next節(jié)點(diǎn),跳表持有多個指向其他鏈表的指針璧亚,可以跨越式的進(jìn)行查找讨韭,時間復(fù)雜度是logn

28、如果我要找一個score為A的節(jié)點(diǎn)應(yīng)該如何去找癣蟋?

  • 首先在map中找到對應(yīng)的node排名透硝,然后根據(jù)排名在skiplist中進(jìn)行查找

29、zrange是如何實(shí)現(xiàn)的疯搅?

  • 這個沒想到不應(yīng)該蹬铺,查了一下如下: ZRANGE key start stop [WITHSCORES],zrange 就是返回有序集 key 中秉撇,指定區(qū)間內(nèi)的成員,而跳表中的元素最下面的一層是有序的(上面的幾層就是跳表的索引)秋泄,按照分?jǐn)?shù)排序琐馆,我們只要找出 start 代表的元素,然后向前或者向后遍歷 M 次拉出所有數(shù)據(jù)即可恒序,而找出 start 代表的元素瘦麸,其實(shí)就是在跳表中找一個元素的時間復(fù)雜度。跳表中每個節(jié)點(diǎn)每一層都會保存到下一個節(jié)點(diǎn)的跨度歧胁,在尋找過程中可以根據(jù)跨度和來求當(dāng)前的排名滋饲,所以查找過程是 O(log(N) 過程厉碟,加上遍歷 M 個元素,就是 O(log(N)+M)屠缭,所以 redis 的 zrange 不會像 mysql 的 offset 有比較嚴(yán)重的性能問題箍鼓。

30、Redis持久化

  • RDB:快照存儲呵曹,可以選擇是否阻塞款咖,使用場景在數(shù)據(jù)庫上下線、主備復(fù)制等情況中
  • AOF:類似于binlog奄喂,每個里面都是一個寫事件铐殃,是優(yōu)先讀取的策略,支持多策略寫入(強(qiáng)同步跨新、按時間刷盤富腊、交由操作系統(tǒng)決定刷盤等),AOF為了防止文件膨脹也支持重寫

31域帐、AOF重寫的時候會不會block主線程赘被?

  • 不會,沒有這個必要俯树,起一個子線程重寫完畢之后把手頭的buffer在刷進(jìn)去就行了

32帘腹、在載入的時候是怎么做的

  • 本地起一個client直接讀取AOF重放其中的命令

33、Redis有哪些多機(jī)部署方案许饿?

  • 經(jīng)典的主備同步阳欲,通過RDB初始化備庫然后進(jìn)行命令傳播 Sentinel,實(shí)際上是一種容災(zāi)機(jī)制 cluster陋率,集群部署球化,使用多機(jī)占用slot的方式進(jìn)行集群服務(wù)提供

34、在主備環(huán)境下瓦糟,如果一個備庫中途斷鏈了筒愚,重新上線的時候怎么執(zhí)行同步?

  • 主備各自維護(hù)一個寫入的Offset菩浙,對比差異之后在buffer中讀出丟失的命令并進(jìn)行同步

35巢掺、如果備庫的offset過于落后已經(jīng)不在buffer當(dāng)中了呢?

  • 直接RDB重新同步 使用AOF來查找對應(yīng)offset的語句(這個是我猜的)

36劲蜻、cluster如何做的故障轉(zhuǎn)移陆淀?

  • 不知道,估計也是檢測到客觀下線然后paxos選主

37先嬉、Mysql了解嗎轧苫,里面有哪些鎖?

  • 類型分類:共享鎖(S)疫蔓,獨(dú)占鎖(X)含懊,意向鎖(與表鎖互斥)
  • 粒度分類:行鎖身冬、表鎖

38、行鎖怎么實(shí)現(xiàn)的岔乔?

  • 不知道酥筝,這個時候已經(jīng)有點(diǎn)崩潰了,怎么這么多不知道nnd

39重罪、講一下事務(wù)隔離級別吧

  • RU樱哼、RC、RR剿配、Serializable

40搅幅、你們用的是哪個隔離級別

  • mysql默認(rèn)的是RR,我們改成RC了

41呼胚、在默認(rèn)隔離級別下會產(chǎn)生幻讀問題嗎茄唐?

  • 會,這是幻讀是RR的經(jīng)典問題之一

42蝇更、描述一下幻讀

  • 在T1里Select * From table where id = 1;若不存在該記錄則insert id = 1的記錄進(jìn)去沪编,但是在select完畢之后T2事務(wù)插入了id=1的record,此時后續(xù)insert執(zhí)行失敗年扩,本質(zhì)上來講是當(dāng)前的快照都不支持后續(xù)dml語句的執(zhí)行

43蚁廓、MVCC機(jī)制了解嗎?

  • 了解厨幻,由undolog支撐的數(shù)據(jù)隔離機(jī)制相嵌,主要是為了提供更高的并發(fā)度

44、講一下原理

  • 每一行record都存在兩個隱藏行况脆,一個是當(dāng)前的事務(wù)id饭宾,一個是指向undolog的指針 mvcc機(jī)制運(yùn)行
  • 在rr和rc兩個隔離級別下 在每次生成ReadView的時候,會將當(dāng)前的活躍事務(wù)ID維護(hù)在列表當(dāng)中格了,如果訪問的Record的ID比最小活躍事務(wù)的ID還要小說明之前已經(jīng)提交了看铆,可以直接讀取,如果與最大事務(wù)ID還要大就證明該事務(wù)在這個快照時沒提交盛末,需要根據(jù)undolog去找對應(yīng)的歷史版本弹惦,如果在最大和最小之間,那么若其為活躍事務(wù)則找歷史版本悄但,若不是則直接讀取
  • 在RC級別下肤频,每次Select都生成新的ReadView,所以能看到不同事物間的提交
  • 在RR級別下算墨,只在第一次Select的時候生成ReadView,所以會產(chǎn)生幻讀汁雷,因?yàn)榭煺兆x和真實(shí)讀的結(jié)果不一致

45净嘀、慢sql怎么處理报咳?

  • 撈慢sql日志先分析寫的索引是不是有問題或者offset太大了,然后看expain

46挖藏、你關(guān)注explain的那些col暑刃?

  • key:真實(shí)用到的索引
  • possible_key:可能用的索引
  • rows:掃描行數(shù),越大越拉垮
  • filter:過濾數(shù)據(jù)比例膜眠,這個col可以驗(yàn)證索引有效性
  • extra:包含是否使用索引岩臣、sort是否時filesort等

47、https了解嗎宵膨?

  • client發(fā)一個隨機(jī)數(shù)給server
  • server發(fā)證書+隨機(jī)數(shù)回來
  • client拆證書找第三方驗(yàn)證證書有效性架谎,取出公鑰
  • client拿公鑰加密第三個隨機(jī)數(shù)發(fā)server
  • server私鑰解密

48、線上機(jī)器cpu100%你怎么處理辟躏?

  • 容器化時代谷扣,一定要top看下是不是st過高,存在超賣的可能性
  • 如果不是的話top看下哪個進(jìn)程有問題捎琐,然后看這個進(jìn)程哪個線程吃了cpu
  • jstack直接把線程dump出來然后找對應(yīng)有問題的線程再分析
  • 也有可能是內(nèi)存泄漏導(dǎo)致的頻繁GC問題会涎,可以拉GClog然后在jmap把heap dump出來看下

49、你們線上JVM一般調(diào)整什么參數(shù)瑞凑?

  • XMX&XMS固定防止內(nèi)存抖動
  • 堆空間調(diào)整:年輕代Age調(diào)整末秃、年輕代eden:s0:s1比例調(diào)整
  • 收集器調(diào)整:大促前把CMS的預(yù)清理次數(shù)調(diào)低一些,CMS的清理閾值調(diào)高一些

50籽御、反問

  • 什么團(tuán)隊(duì)练慕?
  • 做什么業(yè)務(wù)的?

自我反思

image
image.gif

雖說這次是抱著試水的心態(tài)去的篱蝇,但是這一連50問著實(shí)是有點(diǎn)傻眼了贺待,而且也發(fā)現(xiàn)了自己的很多漏洞,如下:

  • 我的簡歷過長零截,難以被面試官抓住重點(diǎn)
  • 項(xiàng)目使用技術(shù)棧沒有體現(xiàn)出來
  • 涉及相關(guān)項(xiàng)目重難點(diǎn)表述不是很清楚麸塞,分布式鎖、多租戶的分庫分表以及中間件隔離方案涧衙、性能問題排查等
  • 各類技術(shù)棧停其實(shí)都還留在使用層哪工,沒有深入去挖掘
  • 語速太快了,70分鐘的面試大大小小回答了50個問題弧哎,我感覺放慢點(diǎn)夠我回答兩輪了

最后總結(jié)個人所得(供大家參考學(xué)習(xí))

這次一面結(jié)束之后我反思很久雁比,發(fā)現(xiàn)自己真的是有很多不足和漏洞,所以最近一直在規(guī)劃自己的學(xué)習(xí)路線去不足撤嫩,不論你是復(fù)習(xí)備戰(zhàn)面試還是自己學(xué)習(xí)偎捎,我相信我所說的多少還是有點(diǎn)用處的。

1.1 首先,第一個應(yīng)該去梳理整個體系的知識大綱

image

整個體系的知識大綱

我將整個體系分為5個專題:并發(fā)編程茴她、性能調(diào)優(yōu)寻拂、Spring全家桶、緩存數(shù)據(jù)庫丈牢、分布式&微服務(wù)

1.2 其次祭钉,根據(jù)上面的分類,按照大綱來學(xué)習(xí)(最后看面試專題)

對于每一個專題己沛,去搜集相應(yīng)的面試學(xué)習(xí)筆記慌核,比如下面我所收集的(若是對我收集的這份知識體系大綱以及下方每個專題對應(yīng)的面試+學(xué)習(xí)筆記感興趣,點(diǎn)擊傳送門 即可I昴帷垮卓!

1. 并發(fā)編程(手寫筆記:并發(fā)編程+并發(fā)編程原理+并發(fā)編程應(yīng)用+并發(fā)編程_模式)

  • 并發(fā)編程
image

并發(fā)編程

  • 并發(fā)編程_原理
image

并發(fā)編程_原理

  • 并發(fā)編程_應(yīng)用
image

并發(fā)編程_應(yīng)用

  • 并發(fā)編程_模式
image

并發(fā)編程_模式

  1. 性能調(diào)優(yōu)(Java性能調(diào)優(yōu)實(shí)戰(zhàn):Java編程性能調(diào)優(yōu)+多線程性能調(diào)優(yōu)+JVM性能監(jiān)測及調(diào)優(yōu)+設(shè)計模式調(diào)優(yōu)+數(shù)據(jù)庫性能調(diào)優(yōu)+實(shí)戰(zhàn)演練
image

性能調(diào)優(yōu)

  1. Spring全家桶(關(guān)注這一部分,我將Spring晶姊、MVC扒接、Cloud、Boot歸整在一塊了)
  • 手繪的各思維腦圖(幫助梳理知識點(diǎn)们衙,比較多就不一一截圖了)
image

Spring全家桶手繪的各思維腦圖

  • 進(jìn)階學(xué)習(xí)的筆記
image

Spring全家桶進(jìn)階學(xué)習(xí)的筆記

  1. 緩存數(shù)據(jù)庫(主要是MySQL+Redis+MongDB)
image

MySQL+Redis+MongDB

  1. 分布式&微服務(wù)(整理的筆記如下)
image

分布式&微服務(wù)

1.3 最后來看面試專題

我從基礎(chǔ)-中級-高級開始一步一步逐步深入钾怔,這些面試問題一樣都有分類整理,添加小助理vx:mxzFAFAFA即可獲取**
  • 比如基礎(chǔ)部分:
image

基礎(chǔ)部分

  • 中級部分:
image

中級部分

  • 高級部分(消息隊(duì)列+Redis緩存+分庫分表+讀寫分離+分布式系統(tǒng)+高可用+微服務(wù)架構(gòu))
image

高級部分

以上就是我全部的一個學(xué)習(xí)路線的規(guī)劃了蒙挑,從整體的一個知識體系出發(fā)宗侦,梳理全部的知識,有漏洞就去查閱我相關(guān)的手寫筆記加以鞏固忆蚀,最后上面試刷題矾利,爭取查漏補(bǔ)缺,下次面試不再出現(xiàn)這么多的不知道和知識空白馋袜。

話說到這里男旗,不論是知識體系大綱,還是相關(guān)的并發(fā)編程欣鳖、性能調(diào)優(yōu)察皇、Spring全家桶、緩存數(shù)據(jù)庫泽台、分布式&微服務(wù)等等的筆記什荣,如何你也想學(xué)習(xí)或者復(fù)習(xí)一下,那便可直接來找小編分享就行怀酷。

**只是麻煩大家?guī)兔D(zhuǎn)發(fā)一下(可以幫助更多有需要的人看見)稻爬,然后添加小助理vx:mxzFAFAFA即可下載全部我的學(xué)習(xí)+復(fù)習(xí)+面試筆記的方式,我們一起學(xué)習(xí)蜕依,加油桅锄!**
985畢業(yè)工作一年琉雳,騰訊試水一面連環(huán)50問,瞬間表示懷疑人生了.
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末竞滓,一起剝皮案震驚了整個濱河市咐吼,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌商佑,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,454評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件厢塘,死亡現(xiàn)場離奇詭異茶没,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)晚碾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評論 3 385
  • 文/潘曉璐 我一進(jìn)店門抓半,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人格嘁,你說我怎么就攤上這事。” “怎么了笋粟?”我有些...
    開封第一講書人閱讀 157,921評論 0 348
  • 文/不壞的土叔 我叫張陵震檩,是天一觀的道長。 經(jīng)常有香客問我懂诗,道長蜂嗽,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,648評論 1 284
  • 正文 為了忘掉前任殃恒,我火速辦了婚禮植旧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘离唐。我一直安慰自己病附,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評論 6 386
  • 文/花漫 我一把揭開白布亥鬓。 她就那樣靜靜地躺著完沪,像睡著了一般。 火紅的嫁衣襯著肌膚如雪贮竟。 梳的紋絲不亂的頭發(fā)上丽焊,一...
    開封第一講書人閱讀 49,950評論 1 291
  • 那天,我揣著相機(jī)與錄音咕别,去河邊找鬼技健。 笑死,一個胖子當(dāng)著我的面吹牛惰拱,可吹牛的內(nèi)容都是我干的雌贱。 我是一名探鬼主播啊送,決...
    沈念sama閱讀 39,090評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼欣孤!你這毒婦竟也來了馋没?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,817評論 0 268
  • 序言:老撾萬榮一對情侶失蹤降传,失蹤者是張志新(化名)和其女友劉穎篷朵,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體婆排,經(jīng)...
    沈念sama閱讀 44,275評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡声旺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了段只。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片腮猖。...
    茶點(diǎn)故事閱讀 38,724評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖赞枕,靈堂內(nèi)的尸體忽然破棺而出澈缺,到底是詐尸還是另有隱情,我是刑警寧澤炕婶,帶...
    沈念sama閱讀 34,409評論 4 333
  • 正文 年R本政府宣布姐赡,位于F島的核電站,受9級特大地震影響古话,放射性物質(zhì)發(fā)生泄漏雏吭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評論 3 316
  • 文/蒙蒙 一陪踩、第九天 我趴在偏房一處隱蔽的房頂上張望杖们。 院中可真熱鬧,春花似錦肩狂、人聲如沸摘完。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽孝治。三九已至,卻和暖如春审磁,著一層夾襖步出監(jiān)牢的瞬間谈飒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評論 1 266
  • 我被黑心中介騙來泰國打工态蒂, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留杭措,地道東北人。 一個月前我還...
    沈念sama閱讀 46,503評論 2 361
  • 正文 我出身青樓钾恢,卻偏偏與公主長得像手素,于是被迫代替她去往敵國和親鸳址。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評論 2 350

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