自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(221)
  • 资源 (20)
  • 收藏
  • 关注

原创 VSCode调试C++

开源、功能强大(高亮/自动补齐都是最基本的功能);轻量,相对xcode轻量太多;几乎可以用来编写所有的语言、甚至写文档,只要安装对应插件即可;个性化配置程度高;

2024-04-03 19:56:15 913

原创 kubernetes之实战进阶篇

本质上将包括前面的kubectl命令行工具、后边编写配置文件最终其实都是调用的api。k8s又更细的比较频繁,不同版本的api也会有些差异;所以还是要了解下api的一些东西。关于api的概念可以参考中文官网:Kubernetes API 概念 | KubernetesREST API是k8s系统的重要部分,组件之间的所有操作和通信都是由API Server处理的REST API调用,大多数情况下API的定义和实现都符合 HTTP REST格式。

2024-03-31 13:20:04 1101

原创 kubernetes之概念入门篇

kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,kubernetes的目标是然该部署容器化的应用简单而且高效,kubernetes提供了应用部署,规划,更新,维护的一种机制。其实提到管理容器第一想到的肯定是docker compose,只不过他是单主机的;而k8s是天然的用于多主机管理的应用,显然功能更加强大。kubernetes这个名字源于希腊语,以为“舵手”、“飞行员”。“K8S”这个缩写是因为k和s之间有八个字符,所以这样缩写。

2024-03-12 19:57:14 905

原创 docker学习进阶篇

从应用软件的角度来看,Dockerfile、Docker镜像与Docker容器分别代表软件的三个不同阶段,Dockerfile是软件的原材料Docker镜像是软件的交付品Docker容器则可以认为是软件镜像的运行态,也即依照镜像运行的容器实例Dockerfile面向开发,Docker镜像成为交付标准,Docker容器则涉及部署与运维,三者缺一不可,合力充当Docker体系的基石。Dockerfile,需要定义一个Dockerfile,Dockerfile定义了进程需要的一切东西。

2024-03-08 11:33:55 1187

原创 docker学习入门篇

docker官网: www.docker.comdockerhub官网: hub.docker.comdocker文档官网:docs.docker.comDocker是基于Go语言实现的云开源项目。Build, Ship and Run Any App, Anywhere(构建,装载任何应用在任何地方),也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP及其运行环境能做到一次镜像,处处运行。

2024-03-08 11:27:16 1332

原创 一文了解docker与k8s

随着 k8s 作为容器编排解决方案变得越来越流行,有些人开始拿 Docker 和 k8s 进行对比,不禁问道:Docker 不香吗?其实 Docker 和 k8s 并非直接的竞争对手两者相互依存。 Docker 是一个容器化平台,而 k8s 是 Docker 等容器平台的协调器。(1)虚拟化技术已经走过是三个时代,没有容器化技术的研究就不会有Docker技术的诞生。1)物理机时代: 多个应用程序排在一台机器上。2)虚拟机时代:一台物理机器安装多个虚拟机(VM),一个虚拟机跑多个程序。3)容器化时代:一台物理

2024-02-27 19:21:38 1428 4

原创 6.ELK之Elasticsearch嵌套(Nested)类型

在Elasticsearch实际应用中经常会遇到嵌套文档的情况,而且会有“对象数组彼此独立地进行索引和查询的诉求”。在ES中这种嵌套文档称为父子文档,父子文档“彼此独立地进行查询”至少有以下两种方式:1)父子文档。在ES的5.x版本中通过parent-child父子type实现,即一个索引对应多个type;对于6.X+版本由于不再支持一个索引多个type,所以父子索引的实现改成了Join。2)Nested嵌套类型。

2023-11-07 19:51:16 2288 2

原创 PHP的pack/unpack

直接参照官网。

2023-06-28 16:49:10 758

原创 22.MongoDB删除操作效率及相关问题验证

最近遇到一个了一个MongoDB数据删除的问题,需要一次性删除上线即1.5年前~1年前的数据且之后每天清空一年过期的数据。在数据量比较大的情况下何种方式的删除效率最高是一个值得研究的问题,本文通过实际测试找出其中规律。本文采用腾讯云mongodb集群进行验证。mongd配置较弱为2核4G,验证仅仅针对副本集不涉及分片集群。测试数据集如下,共计1000w条数据。接下来会以systime字段作为筛选条件验证影响删除操作耗时的因素都有哪些。

2022-12-17 19:27:28 1852 2

原创 mac系统vim无法退出insert模式(ESC无效)

vim使用

2022-11-05 19:19:45 4232 3

原创 20.MongoDB之upsert(更新插入)

mongodb的更新插入

2022-10-08 19:39:10 4581

原创 3.ELK之Logstash安装与使用

Logstash 是一个开源的数据收集引擎。它具有实时的数据传输能力,可以按照我们定制的规范来做数据的收集、解析和存储。也就是说Logstash有3个核心组成部分,分别是数据收集、数据解析和数据转存。这个三个部分组成了一个类似于管道的数据流,由输入端进行数据的采集,管道本身做数据的过滤和解析,输出端把过滤和解析后的数据输出到目标数据库中。大致翻一下官方手册可以看到其功能还是非常强大的。

2022-10-01 10:11:47 2491

原创 内存检查工具valgrind介绍、安装与使用

关于内存泄漏动态检查的工具有很多,其中使用最广泛的可能就是valgrind了。面向应用,valgrind是内存调试(例如排查内存泄漏)十分得力的工具。

2022-08-19 16:24:45 229

原创 Linux下的web服务器搭建

有时间好好研究这个。一、httpd简介 apache server(httpd),作为非常流行的web服务器,长期以来稳居第一。Apache httpd又可以简称为httpd或者Apache,是Internat使用最广泛的web服务器之一,使用Apache提供的web服务器是由守护进程httpd通过http协议进行文本传输,默认使用http(端口80)的明文传输方式。当然后来为了保证数据的安全和可靠性,有添加了https(端口443)的加密传输方式。Linux中web服务器的搭建与....

2022-08-09 10:06:53 10127 5

原创 Nginx的安装与使用入门

nginx学习

2022-08-08 21:52:11 2260

原创 防火墙(firewall)相关命令

记录防火墙相关命令,方便以后使用

2022-08-08 21:04:02 7477 1

原创 1.ELK之Elasticsearch&Kibana一篇入门(安装/分片/操作流程/常用语句/分词)

elasticsearch安装

2022-08-05 16:38:51 2837 1

原创 5.ELK之ElasticSearch集群状态(shard unassigned排查)

elastic状态及shard unassigned排查

2022-06-20 17:12:38 5990

原创 wiresharks抓包分析(tcpdump抓包并还原请求体)

前言:先说下今天遇到的一个问题。和外部门同学对接消息记录拉取,采用的是pb协议,接口机的L5暴露给对方用以拉取。对方请求后表示IO超时没有收到对应回包,于是对方质疑我方有问题。现需要排查原因,更准确说如何找证据打脸对方。分析:我方业务是相对成熟的,这种问题大概率是对方发过来的请求不对,例如缺少某些字段导致接口机无法将请求转发给后方业务机。注:经过沟通发现对方不能打印请求体(具体原因也不管了)。思路无非如下(其中第二点是此次研究的重点):①首先tcpdump抓包看看我方究竟有没有收到对方的请求;.

2022-06-15 20:46:32 389 2

原创 linux安装influxdb

influxdb安装

2022-06-15 15:49:17 9477 2

原创 jmeter使用入门(+influxdb+grafana)

jmeter使用

2022-06-14 18:32:17 5132 3

原创 Mac/Linux下安装jmeter(Linux下非GUI模式压测)

jmeter入门

2022-06-13 20:32:21 1149

原创 4.ELK之Elasticsearch常用curl命令

一、前言:其实官网上都有相关的kibana API按照curl的形式赋值出来就行了。举个例子:如下对比查看索引的kibana指令与curl指令。#kibana指令,查看es集群下的索引GET /_cat/indices?v#如下为复制出来的对应curl指令#注:对于使用者来说记得把ip:port更换成你当前的ip:port并且确保能访问通就可以了curl -X GET "localhost:9200/_cat/indices?v"#如下都是可以的curl -X GET ".

2022-05-27 20:24:05 15357 1

原创 linux的/proc/{pid}/maps介绍及使用(定位内存泄漏)

1、介绍简单来说就是查看进程的虚拟地址空间是如何使用的。总共包括六列,每列及其含义如下。address | perms | offset | dev | inode | pathname(1)地址:本段在虚拟内存中的地址范围;对应vm_area_struct中的vm_start和vm_end。(2)权限:本段的权限; r-读,w-写,x-执行, p-私有;对应vm_flags。(3)偏移地址:即本段映射地址在文件中的偏移;对于有名映射指本段映射地址在文件中的偏移,对应vm_pgoff;对于匿

2022-04-03 12:43:39 10796 1

原创 python发起http请求(httplib)

记录学习经历一个可用的实例如下。关于lib几个函数的使用介绍参见这里: 这里#!/usr/bin/python#coding:utf-8import httplib,urllibhttpClient =Nonetry: params =urllib.urlencode({'uin':2852199330}) #headers = {"Content-Type": "application/json", "Accept": "text/plain"} header...

2022-03-01 21:10:52 1214

原创 腾讯云dts使用注意事项

如下是mongodb之间的数据迁移的一些注意点。DTS使用注意事项:(1)dts迁移是什么维度的迁移?? 这个是可选的。可以全量迁移、也可以全量+增量的迁移。可以指定整个实例的迁移、也可以指定db甚至指定集合进行迁移。(2)目标数据库建立同名db、同名集合经过验证这些都是ok的;会给你一个提示。他的实际玩法是发现有了这些之后dts就会跳过这些步骤,进入后续阶段。(3)验证一下dts对于索引的处理。源库的索引会被原封不动的同步过来,经过验证确实如此。所以说你需要确保这些索...

2021-11-29 16:14:09 963

原创 18.MongoDB之balancer

可以参考分片集群的介绍这里可以参见chunk预分片的介绍 这里关于均衡及官网介绍这里 这里前言:使用MongoDB当你对Chunk、Split、Balancer(甚至于jumbo chunk、autosplit)有一定了解后,Mongo对于你就不在是一个整体了,分分合合、动态平衡的视角应该在你的脑海中呈现。一、balancer(均衡器)简介1、简介①Balancer是一个监视各个shard上的chunk数的后台进程;②他运行在Config Server副本集的prim...

2021-11-26 15:05:21 2940

原创 17.Mongodb预分片(pre-split)/autosplit(chunk/jumbochunk相关)

一、为什么要预先分片有的时候mongodb的读写量并不是很大,但是cpu负载相对较高;另外有时候在迁移数据的时候发现整体的进度好慢。这个时候可能就需要留意两种情况了:一个是mongodb是否频繁的balance;另一个是否有频繁的split操作。通过手动预分片我们可以尽量的避免这种频繁balance和split对cpu和IO资源的消耗。二、chunk数以及chunk范围等的查看看 还是那句话,建立反馈机制非常重要。最理想的情况就是你的每一个操作都有迹可循、都......

2021-11-25 15:58:06 1638 5

原创 同源策略与跨域

前言:最近业务上前端同学多次联系说访问腾讯云cos资源的时候因为跨域的问题访问不到。大致看了下腾讯云关于设置跨域访问的教程,按照前端同学给的域名等选项就给配了,而且测试下来也是好的。但是呢一直不知道什么是跨域这里就做一个简单的学习记录。一、同源策略同源策略(Same Origin Policy)是一种约定,它是浏览器最核心也是最基本的安全功能。同源策略会阻止一个域的javascrip脚本和另一个域的内容进行交互,是用于隔离潜在恶意文件的关键安全机制;关于这一点我们后面会举例说明。...

2021-11-21 18:12:59 18707 8

转载 TCP,UDP,IP数据包格式详解

在 TCP/IP 协议中,使用 IP 协议传输数据的包被称为 IP 数据包,每个数据包都包含 IP 协议规定的内容。IP 协议规定的这些内容被称为IP 数据报文(IP Datagram)或者IP 数据报。IP 数据报文由首部(称为报头)和数据两部分组成。首部的前一部分是固定长度,共 20 字节,是所有 IP 数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。每个 IP 数据报都以一个 IP 报头开始。源计算机构造这个 IP 报头,而目的计算机利用 IP 报头中封装的信息处理数据..

2021-11-09 11:39:06 8984

原创 Linux安装配置 VNC Server

1、安装图形化界面(1)查看当前的运行级别和可以安装的groupsystemctl get-defaultyum grouplist注意:这里list的结果如下没有“GNOME Desktop”之类的而且下面的语句也执行提示不存在就以为这这个镜像缺少相关的源。当然对于云服务器这个问题还是比较好解决的,例如重装一个centos的系统之类的。然后安装GNOME桌面环境yum groupinstall "GNOME Desktop" "Graphical Administrat...

2021-10-27 21:02:13 1212

原创 wireshark学习使用

零、安装的话网上很多。一、入门使用的话可以参考这个,如何抓起安装机本地网卡的数据、已经常用的filter语法。wireshark抓包新手使用教程 - jack_Meng - 博客园二、对于远端机器一个常用的玩法就是使用tcpdump抓取数据包文件,然后用本地的wireshark来看。晚点研究下。三、如何用wireshark抓远端机器的数据呢?——肯定是能的。晚上搜“wireshark 抓取远程linux服务器 数据包” 之类的就能搜到很多。我们这里就看一下,mac w..

2021-10-25 11:08:02 255

原创 libcurl学习及简易封装类

前言:不管是学啥东西,第一时间找到源码、找到官网比什么都强。这里应该就官网了:libcurl - the multiprotocol file transfer library各种下载(各种平台 源码/二进制下载)curl - Downloadlibcurl简介:零、libcurl学习1、简介。libcurl主要功能就是用不同的协议连接和沟通不同的服务器~也就是相当封装了的sockPHP 支持libcurl(允许你用不同的协议连接和沟通不同的服务器)。...

2021-10-05 13:58:48 451

原创 vim设置默认utf-8编码

很简单:将上面的配置追加到 ~/.vimrc 文件中;然后重新vim打开文件就可以了。" =====================" 多语言环境" 默认为 UTF-8 编码" =====================if has("multi_byte") set encoding=utf-8 " English messages only "language messages zh_CN.utf-8 if has('win32') ..

2021-10-02 20:53:20 3333

原创 nohup与&区别于使用

nohup:运行不受挂起影响的命令。SIGHUP 信号:在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一session内的各个作业, 这时它们与控制终端不再关联. 系统对SIGHUP信号的默认处理是终止收到该信号的进程。先抛结论。使用&后台运行程序:①结果会输出终端;②使用Ctrl+C发送SIGINT信号,程序免疫;③关闭session发送SIGHUP,程序关闭;使用nohup运行程序:①结果默认输出到nohup.out; ..

2021-09-06 11:53:50 301

原创 16.Mongodb之预写日志(Journaling)

https://docs.mongodb.com/manual/core/journaling/https://docs.mongodb.com/manual/core/wiredtiger/#std-label-storage-wiredtiger-checkpoints前言:本文所说的日志是WiredTiger预写日志(WiredTiger write-ahead log)即Journal,而不是Mongodb日志文件。检查点(checkpoint):其实就是一个阶段性的数据快照。这个快照显

2021-09-05 18:46:05 1586 3

原创 15.MongoDB的一致性(读关注与写关注)

https://docs.mongodb.com/manual/reference/read-concern/https://docs.mongodb.com/manual/reference/write-concern/https://docs.mongodb.com/manual/core/replica-set-write-concern/https://docs.mongodb.com/manual/core/read-isolation-consistency-recency/一、

2021-08-22 16:17:42 3049

原创 14.Mongodb之导出(mongoexport)、导入(mongoimport)

官网如下:有必要把出现的几个命令行工具都研究一下。https://docs.mongodb.com/database-tools/mongoexport/#mongodb-binary-bin.mongoexport关于mongoexport和mongoimport这篇文章大致介绍了下怎么用。https://blog.csdn.net/mijichui2153/article/details/113846890mongodb数据库工具一、mongodump:在mongo.

2021-08-01 17:50:45 22041

原创 13.MongoDB之Gridfs

参照官网如下(如下链接依次递进):https://docs.mongodb.com/manual/core/gridfs/https://docs.mongodb.com/database-tools/mongofiles/#mongodb-binary-bin.mongofileshttps://docs.mongodb.com/database-tools/installation/installation/mongofiles可执行程序提供了命令行操作存储在GridFS对象中Mongo

2021-07-22 15:22:03 3852 4

原创 12.MongoDB之固定集合(Capped Collections)

简介。MongoDB固定集合(Capped Collections)是性能出色且有着固定大小的集合。我们可以将其想成一个环形队列,当集合空间用完后,在插入的元素就会覆盖最初是的头部元素。另外这里说的大小固定其实有有两个含义:① 存储空间大小有上限②文档数有上限。实际使用时触发其中任何一个上限都会引发前面说的覆盖。适应范围。固定集合很像环形队列,如果空间不足就会覆盖最早的文档。由此可见固定集合适应于任何想要自动淘汰过期属性的场景。例如:日志文件、最近通话记录、最近联系人、最近聊天记录等。固定集合的优.

2021-07-21 14:22:26 755

MD5 C++程序算法实现

关于md5的原理可以参照这边文章 https://blog.csdn.net/mijichui2153/article/details/81051356?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%2281051356%22%2C%22source%22%3A%22mijichui2153%22%7D。本资源提供了两个计算MD5加密程序的C++代码实现以及可执行文件。两个程序分别是text_md5.cpp和file_md5.cpp。前者编译后得到的可执行文件可以对输入的字符o文本计算其MD5值并输出;后者的编译后的可执行文件对输入的文件(输入当前路径下文件路径即可)计算md5值并输出。相信有了这个实例后你会对md5加密算法有更直观的理解。当然如果使用过程中有问题也可以私信博主,我看到后会第一时间回复。

2022-11-28

互联网大厂面经/面试 智力题整理 后台开发 C++ 春招 秋招 社招 笔记整理 大厂面试整理

整理了十几道互联网公司面试常见的智力题,其中有些是华为、腾讯面试中出现的,面试前强烈建议过一遍。注意:面试官看重的是思路,如果碰到原题要故作思考不要立马给出答案效果更好。

2022-11-27

matlab操作agistk重要程序段梳理

matlab+agi联合仿真重要操作程序梳理

2022-11-25

pthread_create传递参数(线程函数传递参数示例)

向线程函数传递参数的程序示例; 一个资源包,执行 tar zxvf example.tar.gz 解压资源; 复制readme.txt中的编译语句,编译得到可执行程序threadtest; ./threadtest 执行皆可看到效果。

2022-04-28

cpp_sendrecv.zip

对应 C++ 简易TCPClient实现及简要特性测试 的代码

2021-12-26

cap抓包case.zip

cap抓包case.zip

2021-12-14

protobuf根据DebugString输出字串反解pb对象的实例(C++)

使用过protobuf的同学肯定对pb的DebugString相关方法再熟悉不过了,其作用就是打印输出pb对象。有些时候我们可能会有根据这个输出还原原始pb对象的需求。仔细观察发现输出并不是标准json格式,也就是说基于json→pb的路子是行不通的了。难道就没有其他办法了吗?答案是有的,本实例就提供了转换方法。使用过程中如果有什么问题可以私信博主,我看到后会第一时间解答。

2021-10-21

基于protobuf反射特性的pb、json相互转换的实例程序(C++)

关于protobuf的反射特性可以参照这篇文章 https://blog.csdn.net/mijichui2153/article/details/111665192。 本资源提供了一个基于protobuf反射特性的pb结构与json相互转换的实例,该实例程序主要有两个核心函数myMessage2Json、myJson2Message。前者的作用是将pb结构转换成对应的json,后者是将json转换成对应的pb结构体。代码中也对关键处理步骤进行了注释说明,相信有了这个实例后json、pb相互转换对你来说将变得一目了然。 使用过程如果有问题可以私信博主,我看到后会第一时间解答。

2021-10-21

libcurl使用实例、基于libcurl封装的方便用户使用的easy_curl类 以及该类的使用实例

文件总共包括三个部分。第一部分是基于原生libcurl的上传、下载操作分别对应源文件rawcurl_get.cpp/rawcurl_put.cpp和 rawcurl_get/raw_curl_put可执行文件;第二部分是基于原生libcurl封装得到的方便用户使用的EasyCurl类的源文件(easycurl.cpp/easycurl.h),该源文件经过经过业务考验是相对成熟可靠的。在使用方面屏蔽原生libcurl的诸多内部机制,使用者关注的只是HttpGet、HttpPost、HttpPut接口。第三部分就是基于EasyCurl的上传、下载使用实例(easycurl_get.cpp、easycurl_put.cpp)。 如果使用中有什么问题也可以私信博主,我看到后会第一时间解答。

2021-10-21

解析amr文件时长c++实例代码(包含arm语音文件实例)

C++语言解析amr文件(ptt语音文件)时长的实例代码(包含arm实例文件),资源包括解析源码、用于测试的amr语音文件以及编译出来的可执行文件。

2021-10-21

Protobuf使用手册.doc

protobuf使用手册,包含protobuf的常见使用方法、内部原理实现的介绍、使用经验建议等。分别介绍了protobuf在c++、python、java的使用。

2020-03-28

hmac.tar.gz

即基于Hash的消息鉴别码。是一个小的hmac算法的C++实例,可以用来在C++中体验hmac算法。

2020-03-08

Protobuf使用手册.doc

Protobuf使用手册,有很多实例,是入门学习protobuf的好资料。

2019-08-25

VMwareTools-10.2.0-7259539.tar.gz

解决安装vmwaretool的时候VMwareTools-10.2.0-7259539.tar.gz文件不存在的情况。下载此zip文件解压后的到VMwareTools-10.2.0-7259539.tar.gz就是好用的。

2018-12-08

libbsd-0.8.3-1.el7.x86_64安装依赖库

Unix环境高级编程需要用到的libbsd依赖库,此处是libbsd-0.8.3-1.el7.x86_64版本的安装依赖库,亲测好用。

2018-09-26

Unix环境高级编程第三版源码与源码配置说明

Unix环境高级编程第三版源码与源码配置说明。网上的好多配置说明实际操作起来都会好脆县这样那样的问题,而这里的配置说明是亲自尝试ok的。

2018-09-26

stateflow逻辑系统建模_张威.pdf

西安电子科技大学出版社的stateflow逻辑系统建模,是学习stateflow男的的学习资料。

2018-09-22

valgrind-3.11.0.tar.bz2

亲测好用的valgrind-3.11.0.tar.bz2。下载下来后先解压达到他的里面的“valgrind-3.11.0.tar.bz2”文件,直接安装使用就好了。安装和使用方法参照https://blog.csdn.net/mijichui2153/article/details/81737599

2018-08-16

Maven+SpringMVC+Dubbo 简单的入门demo配置

Maven+SpringMVC+Dubbo 简单的入门demo配置 源码,,,亲测好用。 具体说明可见这篇转载过来的文章:https://blog.csdn.net/mijichui2153/article/details/81711480

2018-08-15

maven+springmvc+dubbo+zookeeper的生产消费者模型。

这是一个maven+springmvc+dubbo+zookeeper的模型包括生产者、消费者、接口等。其实现可参考https://blog.csdn.net/mijichui2153/article/details/81102277。

2018-08-14

dubbo-admin-2.5.7

dubbo-admin-2.5.7,,,支持JDK1.8.亲测好用!!!!!!!

2018-08-13

SpringMVC demo

这个一个SpringMVC的实例项目,项目非常的简洁易懂。项目介绍等可参照https://blog.csdn.net/mijichui2153/article/details/81634264

2018-08-13

mysql-connector-java-8.0.11.jar

mysql-connector-java-8.0.11.jar java连接mysql所需要的connector!!

2018-08-05

空空如也

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

TA关注的人

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