自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (36)
  • 收藏
  • 关注

原创 当清明来临时(2011.4.8)

每年的这个时候,这是个注定让人伤心或者凝重的日子。可是,今年的我却有点懒了,各种迹象表明我确实懒了,之所以现在开始敲打,是因为老第的原因。或者他的反应让我比较惊讶,他居然问起我有没有写点什么,于是我推迟忙没写。 其实,忙是真的,但是因为忙而没写才是假的。好吧,就从他的生日开始说起吧。按我们家族的传统是对生日举办什么活动或者异常的纪念概念是比较模糊的,即使知道老妈基本上是一双鸡蛋打发。原先我觉

2012-02-06 13:22:52 428

原创 写在清明(2007年)

(写于2007年清明节前)  过几天就是清明节了,我真的想回去啊! 妈妈, 对不起。孩儿很想那你,你在那里感到冷吗?妈,我 想你,你在天堂里自由吗?会不会还像以前一样忙碌。现在我很后悔小时候没帮你做更多的活。      你虽然没文化,但是你对我的教育是成功的      还记得吗,小时候咱们家里穷。你跟别人家的父母一样只要我没上学就叫上我 和妹妹跟你上山采茶叶。 而那时的我是不会轻易

2012-02-06 13:21:44 2201

原创 Hadoop调度算法CapacityScheduler源码分析(2)

(3)CapacityTaskScheduler类 核心成员变量: TaskSchedulingMgr mapScheduler = new MapSchedulingMgr(this); Map任务的调度器 TaskSchedulingMgr reduceSchedul

2011-09-02 09:33:53 1833

原创 Hadoop调度算法CapacityScheduler源码分析(1)

核心算法流程 当某个tasktracker上出现空闲slot时,调度器依次选择一个queue、(选中的queue中的)job、(选中的job中的)task,并将该slot分配给该task。下面介绍选择queue、job和task所采用的策略: (1)选择queue:将所有q

2011-08-31 22:45:59 3363

转载 7 Tips forImproving MapReduce Performance

7 Tips forImproving MapReduce Performance One servicethat Cloudera provides for our customers is help with tuning and optimizingMapReduce j

2011-08-19 10:57:21 827

原创 NameNode存储的主要信息

NameNode存储的信息 在FSNamesystem的开头注释中有一段文字: /***************************************************  *FSNamesystem does the actual bookkeeping w

2011-08-08 17:11:09 3695

原创 hadoop邮件列表信息查询

hadoop右键列表中有大量的问题和答案信息,都是使用者和开发者在实践中遇到的问题,有些问题有很好的答案。如果你也遇到了问题,在你提问之前可以试着用这个网站搜索你的问题。www. search-hadoop.com

2011-08-08 15:40:11 1024

原创 HDFS scalability: the limits to growth 学习笔记

HDFS scalability:the limits to growth 笔记 HDFS 概览 1.   HDFS是stand-alone的 分布式文件系统的树形结构信息(metadata)由NameNode存储,文件本身存放在众多的DataNode中。

2011-07-29 22:33:31 1339

原创 ZooKeeper—分布式协同服务

ZooKeeper—分布式协同服务1.概述ZooKeeper[1]是hadoop的一个分布式协同服务,主要解决分布式应用程序中的局部失败问题,即网络操作过程中发送者与接收者之间无法明确发送操作是否正确无误。在分布式系统中,它能够提供:系统配置信息维护,命名,分布式同步等服务。著名

2011-07-23 16:24:28 1173

原创 Mapreduce任务调度中的任务时间评估策略

Mapreduce任务调度中的任务时间评估    在异构环境中Mapreduce作业的运行时间预测或者评估是基于deadline的调度中比较关键的一部分。 在文献[1-2]中调度依据文件的剩余时间。两种方法都不同,文献[1]假设Hadoop系统运行于一个同构的环境中且任务的执行时

2011-07-23 13:55:48 2681

转载 淘宝大事记

2003年只有一台服务器的淘宝上线了。 第一期的网站,采用经典的Lamp结构,是先进并且经典的结构。 采用Mysql数据库,使用单Master+多Slave的结构进行读写分离,保障可用性并减轻降低主库压力。直到现在,这也是很经典的用法。 对业务进行了分割,不同的业务使用不同的数据库,这其实就是在现在经常提及的数据垂直拆分。而这样的设计也是考虑到了扩展性,也是现在很热也很经常提到的scalabili

2011-06-12 14:47:00 1465

原创 hadoop 作业提交

<br /><br /> <br /> <br /> <br />作业提交对应上图的第4个步骤。作业提交的实现类是JobSubmitter,其中函数submitJobInternal实现的,它的主要工作是:1)检查输入、输出目录;2)计算输入的文件块;3)准备DistributeCache相关信息。4)拷贝作业的jar文件和配置到文件系统。5)提交作业给JobTracker,并开始监控作业的状态。<br /> <br />代码如下:<br />JobStatus submitJobInternal(Job

2011-05-18 20:34:00 1175

原创 生命的情怀

      每年的这个时候,这是个注定让人伤心或者凝重的日子。可是,今年的我却有点懒了,各种迹象表明我确实懒了,之所以现在开始敲打,是因为老第的原因。或者他的反应让我比较惊讶,他居然问起我有没有写点什么,于是我推迟忙没写。其实,忙是真的,但是因为忙而没写是假的。好吧,就从他的生日开始说起吧。按我们家族的传统是对生日举办什么活动或者异常的纪念概念是比较模糊的,即使知道老妈基本上是一双鸡蛋打发。原先我觉得这是我们家里穷所以才没讲究。但是,我最近发现土匪他们家每逢某个人的生日都会召集大家一起聚聚,当然少不了煮点好

2011-04-09 01:00:00 634

转载 Hadoop常用SDK系列五 TotalOrderPartitioner

Hadoop对于map的结果需要进行分区,并将每个分区对应一个reduce。从负载均衡的角度看,分区应该是越均匀越好。Hadoop提供的分区类有: BinaryPartitioner,DraftPartitioner,FirstPartitioner,HashPartitioner,IndexPartitioner,KeyFieldBasedPartitioner,SleepJobPartioner,SimplePartitioner,TotalOrderPartitioner。此外,用户还可以自定义分区

2010-11-17 20:32:00 1132

原创 土匪选题记

土匪选题,就像土匪抢劫一样匆忙,我是帮凶,哈哈。

2010-09-29 18:31:00 1364 1

原创 肖申克的救赎

<br />小说中的“肖申克的救赎”的救赎其实很短;<br />我两个小时就看完了,就像电影的一样快。<br />原先我买这边书没想到这么短,70多页。<br />书名虽叫“肖申克的救赎”可里边还有三个小说,在列车上我一并看完。<br />没什么感觉,纯属耗时间。<br /> <br /> <br />电影的镜头刻画的非常细腻,柔和,流畅。<br /> <br />小说则找不到这种感觉,是我没认真看?<br /> <br />唉,对于“救赎”还是不要看书,直接看电影更能让人触动。

2010-08-02 09:37:00 696

原创 一个月

<br />最近一个月,见了很多人;<br />没做什么事;<br />特别麻烦;<br />疲于沟通。<br /> <br />北上南下,<br />表演,表演,再表演,<br />忽悠,忽悠,再忽悠;<br /> <br /> <br />早点结束,<br />我想安静的看书。<br /> <br /> <br /> <br /> <br /> <br /> 

2010-08-02 09:14:00 365

原创 理查德.克莱德曼

今天在论坛中无意中看到一篇帖子作者说非常喜欢理查德.克莱德曼的钢琴曲,我立即想到了,秋日私语,献给爱丽丝,爱情的纪念,给母亲的信……是啊,这些曲子我再熟悉不过了。    冬天     那是我高中二年级的第一个学期,虽然家在南方,但是,冬天还是蛮冷的,至今想起那时我一生当中到目前为止度过的最寒冷的冬天。从秋日的丝丝凉意,到冬天荒芜,狮子山麓的寂静。在自然界里这是再正常不过的一个冬天,可是,在我的生命中却如此的一个艰难而不同寻常的阶段。是的,每当我不如意,我会听到那首秋日私语。我不知道这首曲子的意思,可是它仿佛

2010-07-05 14:41:00 848 3

转载 【用以自勉】哈佛大学凌晨4点半的景象

在网上看到这篇文章,觉得很有感触, 或许这再一次印证任何人每一次的成功背后都有不为人知的付出和汗水。 哈佛老师经常给学生这样的告诫:如果你想在进入社会后,在任何时候任何场合下都能得心应手并且得到应有的评价,那么你在哈佛的学习期间,就没有晒太阳的时间。

2010-06-04 20:58:00 455

原创 mapreduce hadoop 资源汇总(持续更新中)

Running Hadoop On Ubuntu Linux (Single-Node Cluster) - Michael G. Noll这是一篇非常好的HADOOP安装配置说明,给出了一个具体的集群的安装过程。MapReduce: 一个巨大的倒退 Mapreduce是一个倒退?databasecolumn 的数据库大牛们(其中包括PostgreSQL的最初伯克利领导:Michael S

2010-05-02 23:47:00 764

原创 清明,小侄子,鸡蛋,妈妈

每年的今天我都不那么自在,没年的今天都让我倍加的想念妈,希望她老人家在天堂里过得好!其实,这几年家里好多了,大哥二哥为你添了两个孙子,过年回家时我都看到他们了。二哥的孩子一个个活蹦乱跳,生龙活虎,很容易处,见面不到十分钟就愿意给我们抱了。过年回去的时候,二哥给他买了个自行车,他自个不会骑只是在房子的大厅里推车,从门口到厨房来回绕,有时候还给我们表演了几把“高难度”的动作。虽然相貌看上去不十分像二

2010-04-04 23:43:00 911

原创 永不放弃,永不止步——一个励志短片

   热泪盈眶,让我想起了一直激励我的人,让我永不放弃的人,关心我的人! 

2010-03-30 18:03:00 908

原创 新学期,新气象?

      一般来说大家没次开学来校多会踌躇满志,即使没有明确的计划,心理也会嘀咕着这个学期该做点什么。可笑的是,我匆匆来校之前就想好了,这个学期的任务:有多少多少论文要看,有多少多少事情要做。可到校后,我却没原先那份信誓旦旦的态势,脑子里缠绕着寒假春节的各种场景。有些事情做了,但是没做好;有些事情本该做,却因为忙碌而忽略;有些人,见了却没了当年感觉;有些人,却一见如故。县城里过年,街上非常拥挤,

2010-03-02 20:21:00 670 1

转载 博士生传给硕士生的经验

[编者按:最近一直在读文章,遇到了很多困惑的地方,刚好在网上无意中看到此文,非常好!] 博士生传给硕士生的经验!!很实用!  1. 先看综述,后看论著.看综述搞清概念,看论著掌握方法。  2. 早动手在师兄师姐离开之前学会关键技术。  3. 多数文章看摘要,少数文章看全文.掌握了一点查全文的技巧,往往会以搞到全文为乐,以至于没有时间看文章的内容,更不

2010-02-08 10:59:00 447

原创 博客首篇

没什么好写,我要成长和努力。

2008-05-07 19:17:00 346

区块链,资本鼓吹的泡沫还是重塑世界的技术

区块链,资本鼓吹的泡沫还是重塑世界的技术 区块链,资本鼓吹的泡沫还是重塑世界的技术?.pdf 区块链,资本鼓吹的泡沫还是重塑世界的技术?.pdf

2019-11-13

CNN综述 A Survey of the Recent Architectures of Deep Convolutional Neural Networks

CNN综述 A Survey of the Recent Architectures of Deep Convolutional Neural Networks

2019-04-09

对话系统综述 Neural Approaches to Conversational AI

对话系统综述 Neural Approaches to Conversational AI

2019-04-09

2017人工智能趋势深度报告

2017人工智能趋势深度报告 2017人工智能趋势深度报告 2017人工智能趋势深度报告

2018-04-01

MongoDB NOSQL

MongoDB NOSQL

2012-03-05

Principles of Transactional Memory

Principles of Transactional Memory

2012-02-29

The Impact of Memory Subsystem Resource Sharing onDatacenter Applications

The Impact of Memory Subsystem Resource Sharing onDatacenter Applications

2012-02-29

Megastore Providing Scalable, Highly AvailableStorage for Interactive Services

Megastore Providing Scalable, Highly

2012-02-29

High PerformanceDatacenter Networks Architectures Algorithmsand Opportunities

High PerformanceDatacenter Networks Architectures Algorithmsand OpportunitiesHigh PerformanceDatacenter Networks Architectures Algorithmsand OpportunitiesHigh PerformanceDatacenter Networks Architectures Algorithmsand Opportunities

2012-02-29

Dapper, a Large-Scale Distributed Systems Tracing Infrastructure

Dapper, a Large-Scale Distributed Systems Tracing Infrastructure

2012-02-29

Hadoop in Action

Hadoop in Action

2012-02-29

CouchDB

CouchDB

2012-02-29

云计算与海量数据处理

云计算与海量数据处理

2012-02-29

Data-Intensive+Text+Processing+with+MapReduce

Data-Intensive+Text+Processing+with+MapReduce

2012-02-29

数据结构复习

数据结构,总结,复习,考验 数据结构,总结,复习,考验 数据结构,总结,复习,考验

2011-10-02

Hadoop The Definitive Guide 开发者指南

In many ways, this is how I feel about Hadoop. Its inner workings are complex, resting as they do on a mixture of distributed systems theory, practical engineering, and com- mon sense. And to the uninitiated, Hadoop can appear alien. But it doesn’t need to be like this. Stripped to its core, the tools that Hadoop provides for building distributed systems—for data storage, data analysis, and coordination— are simple. If there’s a common theme, it is about raising the level of abstraction—to create building blocks for programmers who just happen to have lots of data to store, or lots of data to analyze, or lots of machines to coordinate, and who don’t have the time, the skill, or the inclination to become distributed systems experts to build the infrastructure to handle it. With such a simple and generally applicable feature set, it seemed obvious to me when I started using it that Hadoop deserved to be widely used. However, at the time (in early 2006), setting up, configuring, and writing programs to use Hadoop was an art. Things have certainly improved since then: there is more documentation, there are more examples, and there are thriving mailing lists to go to when you have questions. And yet the biggest hurdle for newcomers is understanding what this technology is capable of, where it excels, and how to use it. That is why I wrote this book.

2010-05-02

map reduce ppt

mapredece 相关的PPT Large-Scale Data Processing Want to use 1000s of CPUs But don’t want hassle of managing things MapReduce Architecture provides Automatic parallelization & distribution Fault tolerance I/O scheduling Monitoring & status updates

2010-05-02

sql injection

Many people say they know what SQL injection is, but all they have heard about or experienced are trivial examples. SQL injection is one of the most devastating vulnerabilitie to impact a business, as it can lead to exposure of all of the sensitive information stored in an application’s database, including handy information such as usernames, passwords, names, addresses, phone numbers, and credit card details.

2010-01-23

Unix.Systems.Programming.Communication.Concurrency.And.Threads.eBook-LiB

This completely updated classic (originally titled Practical UNIX Programming) demonstrates how to design complex software to get the most from the UNIX operating system. UNIX Systems Programming provides a clear and easy-to-understand introduction tothe essentials of UNIX programming. Starting with short code snippetsthat illustrate how to use system calls, Robbins and Robbins movequickly to hands-on projects that help readers expand their skill levels. This practical guide thoroughly explores communication, concurrency,and multithreading. Known for its comprehensive and lucid explanations of complicated topics such as signals and concurrency, the book features practical examples, exercises, reusable code, and simplified libraries for use in network communication applications. A self-contained reference that relies on the latest UNIX standards,UNIX Systems Programming provides thorough coverage of files, signals,semaphores, POSIX threads, and client-server communication. Thisedition features all-new chapters on the Web, UDP, and server performance. The sample material has been tested extensively in theclassroom.

2009-10-13

The Art Of Unix Programming (Eric Raymond) - 2003 - (By Laxxuss)

Context Table of Contents 1. Philosophy Culture? What Culture? The Durability of Unix The Case against Learning Unix Culture What Unix Gets Wrong What Unix Gets Right Open-Source Software Cross-Platform Portability and Open Standards The Internet and the World Wide Web The Open-Source Community Flexibility All the Way Down Unix Is Fun to Hack ......

2009-10-13

UNIX Shells by Example, 3rd Edition

1.1 Definition and Function 1.2 System Startup and the Login Shell 1.3 Processes and the Shell 1.4 The Environment and Inheritance 1.5 Executing Commands from Scripts ......

2009-10-13

Interprocess Communications in Linux

Introduction Acknowledgments Chapter 1. Programs and Processes Section 1.1. Introduction Section 1.2. Library Functions Section 1.3. System Calls Section 1.4. Linking Object Code Section 1.5. Managing Failures Section 1.6. Executable File Format Section 1.7. System Memory Section 1.8. Process Memory Section 1.9. The u Area Section 1.10. Process Memory Addresses Section 1.11. Creating a Process Section 1.12. Summary Section 1.13. Key Terms and Concepts Chapter 2. Processing Environment Section 2.1. Introduction Section 2.2. Process ID Section 2.3. Parent Process ID Section 2.4. Process Group ID Section 2.5. Permissions Section 2.6. Real and Effective User and Group IDs Section 2.7. File System Information Section 2.8. File Information Section 2.9. Process Resource Limits Section 2.10. Signaling Processes Section 2.11. Command-Line Values Section 2.12. Environment Variables Section 2.13. The /proc Filesystem Section 2.14. Summary Section 2.15. Key Terms and Concepts Chapter 3. Using Processes Section 3.1. Introduction Section 3.2. The fork System Call Revisited Section 3.3. exec's Minions Section 3.4. Using fork and exec Together Section 3.5. Ending a Process Section 3.6. Waiting on Processes Section 3.7. Summary Section 3.8. Key Terms and Concepts Chapter 4. Primitive Communications Section 4.1. Introduction Section 4.2. Lock Files Section 4.3. Locking Files Section 4.4. More About Signals Section 4.5. Signal and Signal Management Calls Section 4.6. Summary Section 4.7. Key Terms and Concepts Chapter 5. Pipes Section 5.1. Introduction Section 5.2. Unnamed Pipes Section 5.3. Named Pipes Section 5.4. Summary Section 5.5. Key Terms and Concepts Chapter 6. Message Queues Section 6.1. Introduction Section 6.2. IPC System Calls: A Synopsis Section 6.3. Creating a Message Queue Section 6.4. Message Queue Control Section 6.5. Message Queue Operations Section 6.6. A Client朣erver Message Queue Example Section 6.7. Message Queue Class Section 6.8. Summary Section 6.9. Key Terms and Concepts Chapter 7. Semaphores Section 7.1. Introduction Section 7.2. Creating and Accessing Semaphore Sets Section 7.3. Semaphore Control Section 7.4. Semaphore Operations Section 7.5. Semaphore Class Section 7.6. Summary Section 7.7. Key Terms and Concepts Chapter 8. Shared Memory Section 8.1. Introduction Section 8.2. Creating a Shared Memory Segment Section 8.3. Shared Memory Control Section 8.4. Shared Memory Operations Section 8.5. Using a File as Shared Memory Section 8.6. Shared Memory Class Section 8.7. Summary Section 8.8. Key Terms and Concepts Chapter 9. Remote Procedure Calls Section 9.1. Introduction Section 9.2. Executing Remote Commands at a System Level Section 9.3. Executing Remote Commands in a Program Section 9.4. Transforming a Local Function Call into a Remote Procedure Section 9.5. Debugging RPC Applications Section 9.6. Using RPCGEN to Generate Templates and a MAKEFILE Section 9.7. Encoding and Decoding Arbitrary Data Types Section 9.8. Using Broadcasting to Search for an RPC Service Section 9.9. Summary Section 9.10. Key Terms and Concepts Chapter 10. Sockets Section 10.1. Introduction Section 10.2. Communication Basics Section 10.3. IPC Using Socketpair Section 10.4. Sockets: The Connection-Oriented Paradigm Section 10.5. Sockets: The Connectionless Paradigm Section 10.6. Multiplexing I/O with select Section 10.7. Peeking at Data Section 10.8. Out of Band Messages Section 10.9. Summary Section 10.10. Key Terms and Concepts Chapter 11. Threads Section 11.1. Introduction Section 11.2. Creating a Thread Section 11.3. Exiting a Thread Section 11.4. Basic Thread Management Section 11.5. Thread Attributes Section 11.6. Scheduling Threads Section 11.7. Using Signals in Threads Section 11.8. Thread Synchronization Section 11.9. Thread-Specific Data Section 11.10. Debugging Multithreaded Programs Section 11.11. Summary Section 11.12. Nomenclature and Key Concepts Appendix A. Using Linux Manual Pages Section A.1. Manual Page Sections Section A.2. Manual Page Format Section A.3. Standard Linux System Calls Appendix B. UNIX Error Messages Appendix C. RPC Syntax Diagrams Section C.1. Introduction Section C.2. RPC Definitions Section C.3. RPC Keywords Section C.4. Some RPC Examples Appendix D. Profiling Programs Section D.1. Introduction Section D.2. Sample Program for Profiling Section D.3. Generating Profile Data Section D.4. Viewing and Interpreting Profile Data Appendix E. Bibliography

2009-10-13

Linux Kernel Development Second Edition

The Linux kernel is one of the most interesting yet least understood open-source projects. It is also a basis for developing new kernel code. That is why Sams is excited to bring you the latest Linux kernel development information from a Novell insider in the second edition of Linux Kernel Development. This authoritative, practical guide will help you better understand the Linux kernel through updated coverage of all the major subsystems, new features associated with Linux 2.6 kernel and insider information on not-yet-released developments. You'll be able to take an in-depth look at Linux kernel from both a theoretical and an applied perspective as you cover a wide range of topics, including algorithms, system call interface, paging strategies and kernel synchronization. Get the top information right from the source in Linux Kernel Development.

2009-10-13

A Buffer Overflow Study Attacks and Defenses

Introduction On november 2, 1988 a new form of threat appeared with the Morris Worm, also known as the Internet Worm. This famous event caused heavy damages on the internet, by using two common unix programs, sendmail and fingerd. This was possible by exploiting a bu?er overflow in fingerd. This is probably one of the most outstanding attacks based on bu?er overflows. This kind of vulnerability has been found on largely spread and used daemons such as bind, wu-ftpd, or various telnetd implementations, as well as on applications such as Oracle or MS Outlook Express... The variety of vulnerable programs and possible ways to exploit them make clear that bu?er overflows represent a real threat. Generally, they allow an attacker to get a shell on a remote machine, or to obtain superuser rights. Bu?er overflows are commonly used in remote or local exploits. The first aim of this document is to present how bu?er overflows work and may compromise a system or a network security, and to focus on some existing protection solutions. Finally, we will try to point out the most interesting sets to secure an environment, and compare them on criteria such as e?ciency or performance loss. We are both third year computer science students at ENSEIRB (French national school of engineering), specialized in Networks and Distributed Systems. This study has been performed during our Network Administration project.

2009-10-13

Java虚拟机规范中文版

Java虚拟机规范中文版 Java虚拟机规范中文版 Java虚拟机规范中文版 Java虚拟机规范中文版

2009-10-13

精通 Struts源码

孙卫琴 精通 Struts源码 孙卫琴 精通 Struts源码 孙卫琴 精通 Struts源码 孙卫琴 精通 Struts源码

2009-10-13

sun 云计算白皮书sun_cloudcomputing_chinese

sun 云计算白皮书sun_cloudcomputing_chinese

2009-10-07

http 协议详解

http_RFC2616.pdfhttp_RFC2616.pdfhttp_RFC2616.pdfhttp_RFC2616.pdfhttp_RFC2616.pdf

2009-09-15

防火墙与internet安全

Addison Wesley - Firewalls and Internet Security

2008-05-17

MySQL Cookbook

非常全面的介绍mysql,有丰富的例子

2008-05-17

Essential CVS

cvs知识--- Essential CVS

2008-05-17

ant使用指南

ant 使用介绍有例子

2008-05-11

struts api

struts api

2008-04-26

java & xml

java and xml

2008-04-08

Linux内核情景分析

Linux内核情景分析 下

2007-05-12

Linux内核情景分析

Linux内核情景分析

2007-05-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除