Hadoop之mapreduce参数大全-2

26.指定在Reduce任务在shuffle阶段的网络重试之间的最大延迟时间

mapreduce.reduce.shuffle.retry-delay.max.ms是Apache Hadoop MapReduce任务配置中的一个属性,用于指定在Reduce任务在shuffle阶段的网络重试之间的最大延迟时间(以毫秒为单位)。

在MapReduce任务中,Reduce任务在shuffle阶段需要从多个Map任务获取中间数据,这个过程可能会因为网络问题而失败。为了提高任务的容错能力,MapReduce框架会允许Reduce任务在网络重试之间有一定的延迟时间。通过设置mapreduce.reduce.shuffle.retry-delay.max.ms属性,可以指定在网络重试之间的最大延迟时间。

默认情况下,Reduce任务在网络重试之间的最大延迟时间为30秒。通过将mapreduce.reduce.shuffle.retry-delay.max.ms属性设置为一个正整数,可以指定在网络重试之间的最大延迟时间。例如,将该属性设置为120000毫秒(即2分钟)的配置如下所示:

mapreduce.reduce.shuffle.retry-delay.max.ms=120000

需要注意的是,设置合理的最大延迟时间可以平衡任务的容错能力和性能。如果最大延迟时间过短,可能会导致Reduce任务在shuffle阶段的网络重试中频繁地进行重试,从而影响任务的执行效率。如果最大延迟时间过长,可能会导致Reduce任务在shuffle阶段的网络重试中重试失败,从而影响任务的执行结果。因此,在设置mapreduce.reduce.shuffle.retry-delay.max.ms属性时,需要根据具体情况进行调整和优化。

27.指定在Reduce任务在shuffle阶段可以从一个Map任务同时获取数据的并发连接数

mapreduce.reduce.shuffle.parallelcopies是Apache Hadoop MapReduce任务配置中的一个属性,用于指定在Reduce任务在shuffle阶段可以从一个Map任务同时获取数据的并发连接数。

在MapReduce任务中,Reduce任务在shuffle阶段需要从多个Map任务获取中间数据,这个过程是通过网络传输完成的。通过设置mapreduce.reduce.shuffle.parallelcopies属性,可以指定从一个Map任务同时获取数据的并发连接数。

默认情况下,Reduce任务可以从一个Map任务同时获取数据的并发连接数为2。通过将mapreduce.reduce.shuffle.parallelcopies属性设置为一个正整数,可以指定从一个Map任务同时获取数据的并发连接数。例如,将该属性设置为10的配置如下所示:

mapreduce.reduce.shuffle.parallelcopies=10

需要注意的是,设置合理的并发连接数可以平衡任务的网络带宽利用率和任务的执行效率。如果并发连接数过小,可能会导致Reduce任务在shuffle阶段的网络传输效率低下,从而影响任务的执行效率。如果并发连接数过大,可能会导致Reduce任务在shuffle阶段的网络带宽占用过高,从而影响其他任务的执行。因此,在设置mapreduce.reduce.shuffle.parallelcopies属性时,需要根据具体情况进行调整和优化。

28.指定在Reduce任务在shuffle阶段连接Map任务的超时时间

mapreduce.reduce.shuffle.connect.timeout是Apache Hadoop MapReduce任务配置中的一个属性,用于指定在Reduce任务在shuffle阶段连接Map任务的超时时间(以毫秒为单位)。

在MapReduce任务中,Reduce任务在shuffle阶段需要从多个Map任务获取中间数据,这个过程是通过网络传输完成的。通过设置mapreduce.reduce.shuffle.connect.timeout属性,可以指定连接Map任务的超时时间。

默认情况下,Reduce任务连接Map任务的超时时间为5分钟(即300000毫秒)。通过将mapreduce.reduce.shuffle.connect.timeout属性设置为一个正整数,可以指定连接Map任务的超时时间。例如,将该属性设置为10分钟(即600000毫秒)的配置如下所示:

mapreduce.reduce.shuffle.connect.timeout=600000

需要注意的是,设置合理的超时时间可以避免Reduce任务在shuffle阶段的网络连接中无限等待,从而影响任务的执行效率。如果超时时间过短,可能会导致Reduce任务在shuffle阶段的网络连接中频繁地超时,从而影响任务的执行结果。如果超时时间过长,可能会导致Reduce任务在shuffle阶段的网络连接中无限等待,从而影响任务的执行效率。因此,在设置mapreduce.reduce.shuffle.connect.timeout属性时,需要根据具体情况进行调整和优化。

29.指定在Reduce任务在shuffle阶段从Map任务读取数据的超时时间

mapreduce.reduce.shuffle.read.timeout是Apache Hadoop MapReduce任务配置中的一个属性,用于指定在Reduce任务在shuffle阶段从Map任务读取数据的超时时间(以毫秒为单位)。

在MapReduce任务中,Reduce任务在shuffle阶段需要从多个Map任务获取中间数据,这个过程是通过网络传输完成的。通过设置mapreduce.reduce.shuffle.read.timeout属性,可以指定从Map任务读取数据的超时时间。

默认情况下,Reduce任务从Map任务读取数据的超时时间为5分钟(即300000毫秒)。通过将mapreduce.reduce.shuffle.read.timeout属性设置为一个正整数,可以指定从Map任务读取数据的超时时间。例如,将该属性设置为10分钟(即600000毫秒)的配置如下所示:

mapreduce.reduce.shuffle.read.timeout=600000

需要注意的是,设置合理的超时时间可以避免Reduce任务在shuffle阶段的网络读取中无限等待,从而影响任务的执行效率。如果超时时间过短,可能会导致Reduce任务在shuffle阶段的网络读取中频繁地超时,从而影响任务的执行结果。如果超时时间过长,可能会导致Reduce任务在shuffle阶段的网络读取中无限等待,从而影响任务的执行效率。因此,在设置mapreduce.reduce.shuffle.read.timeout属性时,需要根据具体情况进行调整和优化。

30.指定在Reduce任务在shuffle阶段可以同时监听的Map任务数量

mapreduce.shuffle.listen.queue.size是Apache Hadoop MapReduce任务配置中的一个属性,用于指定在Reduce任务在shuffle阶段可以同时监听的Map任务数量。

在MapReduce任务中,Reduce任务在shuffle阶段需要从多个Map任务获取中间数据,这个过程是通过网络传输完成的。Reduce任务会向Map任务发送网络连接请求,然后等待Map任务的响应。通过设置mapreduce.shuffle.listen.queue.size属性,可以指定Reduce任务可以同时监听的Map任务数量。

默认情况下,Reduce任务可以同时监听的Map任务数量为10。通过将mapreduce.shuffle.listen.queue.size属性设置为一个正整数,可以指定Reduce任务可以同时监听的Map任务数量。例如,将该属性设置为20的配置如下所示:

mapreduce.shuffle.listen.queue.size=20

需要注意的是,设置合理的监听队列大小可以平衡任务的网络连接效率和任务的执行效率。如果监听队列大小过小,可能会导致Reduce任务在shuffle阶段的网络连接效率低下,从而影响任务的执行效率。如果监听队列大小过大,可能会导致Reduce任务在shuffle阶段的网络连接过多,从而影响其他任务的执行。因此,在设置mapreduce.shuffle.listen.queue.size属性时,需要根据具体情况进行调整和优化。

31.指定在Reduce任务在shuffle阶段是否启用网络连接的Keep-Alive特性

mapreduce.shuffle.connection-keep-alive.enable是Apache Hadoop MapReduce任务配置中的一个属性,用于指定在Reduce任务在shuffle阶段是否启用网络连接的Keep-Alive特性。

在MapReduce任务中,Reduce任务在shuffle阶段需要从多个Map任务获取中间数据,这个过程是通过网络传输完成的。通过设置mapreduce.shuffle.connection-keep-alive.enable属性,可以指定在Reduce任务在shuffle阶段是否启用网络连接的Keep-Alive特性。

默认情况下,Reduce任务在shuffle阶段启用网络连接的Keep-Alive特性。通过将mapreduce.shuffle.connection-keep-alive.enable属性设置为false,可以禁用网络连接的Keep-Alive特性。例如,将该属性设置为false的配置如下所示:

mapreduce.shuffle.connection-keep-alive.enable=false

需要注意的是,启用网络连接的Keep-Alive特性可以减少网络连接的建立和断开次数,从而提高任务的网络传输效率。但是,在某些网络环境下,禁用网络连接的Keep-Alive特性可以提高任务的网络传输稳定性。因此,在设置mapreduce.shuffle.connection-keep-alive.enable属性时,需要根据具体情况进行调整和优化。

32.指定在Reduce任务在shuffle阶段网络连接的Keep-Alive超时时间

mapreduce.shuffle.connection-keep-alive.timeout是Apache Hadoop MapReduce任务配置中的一个属性,用于指定在Reduce任务在shuffle阶段网络连接的Keep-Alive超时时间(以毫秒为单位)。

在MapReduce任务中,Reduce任务在shuffle阶段需要从多个Map任务获取中间数据,这个过程是通过网络传输完成的。通过设置mapreduce.shuffle.connection-keep-alive.timeout属性,可以指定网络连接的Keep-Alive超时时间。

默认情况下,Reduce任务在网络连接的Keep-Alive超时时间为10秒(即10000毫秒)。通过将mapreduce.shuffle.connection-keep-alive.timeout属性设置为一个正整数,可以指定网络连接的Keep-Alive超时时间。例如,将该属性设置为20秒(即20000毫秒)的配置如下所示:

mapreduce.shuffle.connection-keep-alive.timeout=20000

需要注意的是,设置合理的Keep-Alive超时时间可以避免网络连接的Keep-Alive特性导致的网络资源浪费。如果超时时间过短,可能会导致网络连接频繁地断开和建立,从而影响任务的网络传输效率。如果超时时间过长,可能会导致网络连接的Keep-Alive特性占用过多的网络资源,从而影响其他任务的网络传输。因此,在设置mapreduce.shuffle.connection-keep-alive.timeout属性时,需要根据具体情况进行调整和优化。

33.指定任务执行的超时时间

mapreduce.task.timeout是Apache Hadoop MapReduce任务配置中的一个属性,用于指定任务执行的超时时间(以毫秒为单位)。

在MapReduce任务中,如果任务在指定的超时时间内没有完成,任务会被认为是超时并被终止执行。通过设置mapreduce.task.timeout属性,可以指定任务的超时时间。

默认情况下,任务的超时时间为无限长,即没有超时限制。通过将mapreduce.task.timeout属性设置为一个正整数,可以指定任务的超时时间。例如,将该属性设置为60000毫秒(即60秒)的配置如下所示:

mapreduce.task.timeout=60000

需要注意的是,设置合理的超时时间可以避免任务因为各种原因导致的无限执行状态,从而节省资源和提高系统的稳定性。如果超时时间过短,可能会导致正常执行的任务被错误地终止,从而影响任务的执行结果。如果超时时间过长,可能会导致系统资源的浪费。因此,在设置mapreduce.task.timeout属性时,需要根据具体情况进行调整和优化。

34.指定Map任务的内存上限

mapreduce.map.memory.mb是Hadoop YARN中的一个配置参数,用于指定Map任务的内存上限。

默认值为3840(即3.84 GB),表示每个Map任务可以使用的最大内存量为3.84 GB。您可以根据您的实际需求来调整这个值,以确保Map任务在运行时有足够的内存可用。

mapreduce.map.memory.mb=3840

请注意,增大此值可能会增加内存压力,导致YARN集群的性能下降。因此,在调整此参数时,请根据您的实际情况进行评估和测试。

35.指定Map任务的虚拟CPU核心数

mapreduce.map.cpu.vcores是Hadoop YARN中的一个配置参数,用于指定Map任务的虚拟CPU核心数。

默认值为1,表示每个Map任务将获得一个虚拟CPU核心。您可以根据实际需求来调整这个值,以确保Map任务在运行时具有足够的CPU资源。

mapreduce.map.cpu.vcores = 1

请注意,增大此值可能会增加CPU资源压力,导致YARN集群的性能下降。因此,在调整此参数时,请根据您的实际情况进行评估和测试。

36.设置Reduce任务可以使用的内存量

mapreduce.reduce.memory.mb是Hadoop MapReduce中的一个配置参数,用于指定Reduce任务的内存大小(以MB为单位)。该参数用于设置Reduce任务可以使用的内存量,以满足Reduce任务在执行过程中的内存需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.reduce.memory.mb</name>
    <value>2048</value> <!-- 设置Reduce任务的内存大小,单位为MB -->
</property>

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,过小的值可能会导致内存不足而影响任务的执行效率,过大的值可能会导致内存溢出而影响任务的稳定性。因此,需要根据实际情况进行适当的调整。

37.指定Reduce任务的CPU虚拟核心数

mapreduce.reduce.cpu.vcores是Hadoop MapReduce中的一个配置参数,用于指定Reduce任务的CPU虚拟核心数。该参数用于设置Reduce任务可以使用的CPU核心数,以满足Reduce任务在执行过程中的CPU需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.reduce.cpu.vcores</name>
    <value>4</value> <!-- 设置Reduce任务的CPU虚拟核心数 -->
</property>

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,过小的值可能会导致CPU资源不足而影响任务的执行效率,过大的值可能会导致浪费CPU资源而影响任务的效率。因此,需要根据实际情况进行适当的调整。

38.指定MapReduce任务使用的Java虚拟机参数

mapred.child.java.opts是Hadoop MapReduce中的一个配置参数,用于指定MapReduce任务使用的Java虚拟机参数。该参数用于设置任务子进程的Java虚拟机参数,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapred.child.java.opts</name>
    <value>-Xmx2048m -Xms1024m -server</value> <!-- 设置任务子进程的Java虚拟机参数 -->
</property>

其中,-Xmx2048m表示最大堆内存大小为2048MB,-Xms1024m表示初始堆内存大小为1024MB,-server表示使用服务器模式运行JVM。

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,过大的堆内存大小可能会导致内存溢出,过小的堆内存大小可能会导致任务无法正常运行。因此,需要根据实际情况进行适当的调整。同时,还可以根据任务的具体需求添加其他合适的Java虚拟机参数。

39.指定MapReduce任务使用的环境变量

mapred.child.env是Hadoop MapReduce中的一个配置参数,用于指定MapReduce任务使用的环境变量。该参数用于设置任务子进程的环境变量,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapred.child.env</name>
    <value>VAR1=value1 VAR2=value2</value> <!-- 设置任务子进程的环境变量 -->
</property>

其中,VAR1=value1表示设置环境变量VAR1的值为value1,VAR2=value2表示设置环境变量VAR2的值为value2。

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,添加合适的环境变量可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的环境变量。

40.指定MapReduce任务的管理员用户环境变量

mapreduce.admin.user.env是Hadoop MapReduce中的一个配置参数,用于指定MapReduce任务的管理员用户环境变量。该参数用于设置管理员用户在执行MapReduce任务时的环境变量,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.admin.user.env</name>
    <value>VAR1=value1 VAR2=value2</value> <!-- 设置管理员用户的环境变量 -->
</property>

其中,VAR1=value1表示设置管理员用户的环境变量VAR1的值为value1,VAR2=value2表示设置管理员用户的环境变量VAR2的值为value2。

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,添加合适的环境变量可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的环境变量。

41.指定MapReduce应用的Application Master的日志级别

yarn.app.mapreduce.am.log.level是YARN中的一个配置参数,用于指定MapReduce应用的Application Master的日志级别。该参数用于设置Application Master的日志输出级别,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>yarn.app.mapreduce.am.log.level</name>
    <value>INFO</value> <!-- 设置Application Master的日志输出级别 -->
</property>

其中,INFO表示日志输出级别为INFO,还可以设置其他级别,例如DEBUG、WARN等。

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,选择合适的日志输出级别可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的日志级别。

42.指定Map任务的日志级别

mapreduce.map.log.level是Hadoop MapReduce中的一个配置参数,用于指定Map任务的日志级别。该参数用于设置Map任务的日志输出级别,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.map.log.level</name>
    <value>INFO</value> <!-- 设置Map任务的日志输出级别 -->
</property>

其中,INFO表示日志输出级别为INFO,还可以设置其他级别,例如DEBUG、WARN等。

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,选择合适的日志输出级别可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的日志级别。

43.指定Reduce任务的日志级别

mapreduce.reduce.log.level是Hadoop MapReduce中的一个配置参数,用于指定Reduce任务的日志级别。该参数用于设置Reduce任务的日志输出级别,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.reduce.log.level</name>
    <value>INFO</value> <!-- 设置Reduce任务的日志输出级别 -->
</property>

其中,INFO表示日志输出级别为INFO,还可以设置其他级别,例如DEBUG、WARN等。

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,选择合适的日志输出级别可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的日志级别。

44.指定Reduce任务中合并中间结果的内存阈值

mapreduce.reduce.merge.inmem阈值是Hadoop MapReduce中的一个配置参数,用于指定Reduce任务中合并中间结果的内存阈值。该参数用于设置Reduce任务在合并中间结果时的最大内存使用量,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.reduce.merge.inmem.threshold</name>
    <value>1000</value> <!-- 设置Reduce任务合并中间结果的内存阈值,单位为MB -->
</property>

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,选择合适的内存阈值可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的参数。

45.指定Reduce任务中合并Shuffle数据的百分比阈值

mapreduce.reduce.shuffle.merge.percent是Hadoop MapReduce中的一个配置参数,用于指定Reduce任务中合并Shuffle数据的百分比阈值。该参数用于设置Reduce任务在合并Shuffle数据时的最大百分比使用量,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.reduce.shuffle.merge.percent</name>
    <value>0.5</value> <!-- 设置Reduce任务合并Shuffle数据的百分比阈值 -->
</property>

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,选择合适的百分比阈值可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的参数。

46.指定Reduce任务中读取Shuffle数据时的缓冲区使用百分比

mapreduce.reduce.shuffle.input.buffer.percent是Hadoop MapReduce中的一个配置参数,用于指定Reduce任务中读取Shuffle数据时的缓冲区使用百分比。该参数用于设置Reduce任务在读取Shuffle数据时的最大百分比使用量,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.reduce.shuffle.input.buffer.percent</name>
    <value>0.5</value> <!-- 设置Reduce任务读取Shuffle数据时的缓冲区使用百分比 -->
</property>

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,选择合适的百分比值可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的参数。

47.指定Reduce任务中读取数据时的缓冲区使用百分比

mapreduce.reduce.input.buffer.percent是Hadoop MapReduce中的一个配置参数,用于指定Reduce任务中读取数据时的缓冲区使用百分比。该参数用于设置Reduce任务在读取数据时的最大百分比使用量,以满足任务在执行过程中的需求。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.reduce.input.buffer.percent</name>
    <value>0.5</value> <!-- 设置Reduce任务读取数据时的缓冲区使用百分比 -->
</property>

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,选择合适的百分比值可以满足任务在执行过程中的需求。同时,还可以根据任务的具体需求添加其他合适的参数。

48.指定Reduce任务在进行Shuffle操作时的最大内存使用百分比

mapreduce.reduce.shuffle.memory.limit.percent是Hadoop MapReduce中的一个配置参数,用于指定Reduce任务在进行Shuffle操作时的最大内存使用百分比。该参数用于限制Reduce任务在进行Shuffle操作时使用的内存大小,以防止内存溢出和提高任务的稳定性。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.reduce.shuffle.memory.limit.percent</name>
    <value>0.5</value> <!-- 设置Reduce任务在进行Shuffle操作时的最大内存使用百分比 -->
</property>

需要注意的是,设置该参数的值需要根据实际的业务场景和集群配置进行调整,选择合适的最大内存使用百分比可以提高任务的稳定性和性能。同时,还可以根据任务的具体需求添加其他合适的参数。

49.指定是否启用Shuffle传输过程中的SSL加密

mapreduce.shuffle.ssl.enabled是Hadoop MapReduce中的一个配置参数,用于指定是否启用Shuffle传输过程中的SSL加密。该参数用于保障MapReduce任务中数据传输的安全性。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.shuffle.ssl.enabled</name>
    <value>true</value> <!-- 启用SSL加密 -->
</property>

需要注意的是,启用SSL加密需要在集群中安装合适的SSL证书,并根据实际情况进行配置。同时,还需要确保集群中的相关组件支持SSL加密。如果需要禁用SSL加密,可以将该参数的值设置为false。

50.指定Shuffle传输过程中使用的文件缓冲区大小

mapreduce.shuffle.ssl.file.buffer.size是Hadoop MapReduce中的一个配置参数,用于指定Shuffle传输过程中使用的文件缓冲区大小。该参数用于控制文件读写操作的缓存大小,以提高数据传输的效率。

可以通过以下方式设置该参数的值:

<property>
    <name>mapreduce.shuffle.ssl.file.buffer.size</name>
    <value>65536</value> <!-- 设置文件缓冲区大小为65536字节 -->
</property>

需要注意的是,文件缓冲区大小的设置需要根据集群的硬件配置和实际的传输需求进行调整。如果集群的硬件配置较高,可以适当增加文件缓冲区大小以提高数据传输的效率。如果集群的硬件配置较低,可以适当减小文件缓冲区大小以节省内存消耗。同时,还需要根据实际的传输需求进行调整,以达到最佳的传输性能。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,236评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,867评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,715评论 0 340
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,899评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,895评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,733评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,085评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,722评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,025评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,696评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,816评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,447评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,057评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,254评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,204评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,561评论 2 343

推荐阅读更多精彩内容