- 博客(61)
- 收藏
- 关注
原创 Docker镜像优化:构建最小化容器
本文详细阐述了Docker镜像优化:构建最小化容器的方法和策略。通过选择合适的基础镜像、减少层数和大小、定期更新基础镜像、使用安全相关的标签、使用缓存、优化应用程序配置、清理不必要的文件、使用版本控制、使用multi-stage builds和利用洋葱文件系统等多个方面的优化,可以构建出性能更优、安全性更高的最小化容器。这些优化策略不仅能够提高容器的启动速度,降低存储和传输成本,还能提升应用程序的整体性能和安全性。
2025-06-21 23:39:44
782
原创 Docker容器网络详解
Docker容器网络模型基于Linux网络命名空间(Network Namespace)和虚拟网络设备,提供了容器之间的通信能力。网络命名空间:为每个容器提供独立的网络环境,实现容器之间的网络隔离。虚拟网络设备:如veth、bridge等,用于实现容器与宿主机、容器与容器之间的通信。用户可以根据需求自定义网络配置,包括网络类型、IP地址范围、DNS等。此外,用户还可以自定义overlay网络、macvlan网络等。
2025-06-21 23:21:32
467
原创 Docker容器技术在开发中的应用
Docker容器技术在开发中的应用带来了诸多便利,如环境一致性、开发效率、运维协同和安全性等。通过使用Docker容器技术,开发人员可以更好地实现敏捷开发和持续集成,提高软件质量。然而,Docker容器技术也面临一些挑战,如容器编排、网络管理和存储优化等。未来,随着Docker容器技术的不断发展和完善,我们有理由相信,它将在软件开发领域发挥更大的作用。
2025-06-21 23:03:18
913
原创 Docker容器化:部署与管理详解
本文从Docker容器化的部署优势和管理要点两个方面进行了详细阐述。Docker容器化技术以其环境一致性、部署速度等优势,在软件开发和运维领域得到了广泛应用。然而,容器化管理也带来了一些挑战,如容器编排、安全性和监控日志等方面。为了确保容器化应用的稳定运行,需要关注这些方面的管理和优化。通过本文的阐述,我们希望读者能够深入理解Docker容器化技术,提高部署和管理的效率。在未来的研究和实践中,可以进一步探索容器化技术在软件开发和运维领域的应用,以推动信息技术的发展。
2025-06-21 22:45:12
779
原创 Docker容器化:从入门到部署全攻略
Docker是一个开源的应用容器引擎,它允许开发者打包他们的应用以及应用的依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。本文将为您详细解读Docker容器化的基础知识、应用场景、部署策略,帮助您从入门到精通,轻松掌握Docker容器化技术。Docker容器化与微服务架构相结合,可以实现应用的快速部署、扩缩容,提高系统的稳定性和可维护性。Docker容器化可以简化开发与测试环境的一致性,开发者可以在本地构建容器镜像,然后将其部署到测试环境,确保开发与测试环境的完全一致。
2025-06-21 22:26:44
275
原创 Docker容器化技术:轻松部署与管理应用
Docker是一种开源的应用容器引擎,它允许开发者打包他们的应用以及应用的依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows机器上。这种容器化的技术,使得应用可以在不同的环境中保持一致性,大大简化了应用的部署过程。本文详细阐述了Docker容器化技术如何轻松部署与管理应用。通过容器化技术,开发者可以简化应用的部署流程,提高应用的可靠性和可移植性。同时,容器编排和监控工具的出现,使得容器化管理变得更加高效和便捷。容器安全:随着容器技术的普及,容器安全问题日益凸显。
2025-06-21 22:07:50
330
原创 Docker容器化技术的实践与挑战
Docker容器化技术为软件开发和运维带来了诸多优势,如提高开发效率、灵活的部署与扩展等。然而,在实践过程中,也面临着安全性和资源管理等挑战。通过采取相应的应对策略,企业可以充分发挥容器化技术的优势,实现数字化转型。在实际应用中,我们需要不断探索和优化容器化技术的实践方法,以应对不断变化的技术和业务需求。同时,也要关注容器化技术的发展趋势,为企业的长远发展奠定基础。总之,Docker容器化技术已成为现代软件开发和运维不可或缺的一部分,掌握其实践与挑战,对企业具有重要意义。
2025-06-21 21:49:02
384
原创 Docker实战:构建高效容器化应用
Docker是一个开源的应用容器引擎,它允许开发者打包他们的应用以及应用的依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。与传统的虚拟机相比,Docker容器更加轻量级,启动速度快,资源占用少。本文详细介绍了Docker实战中构建高效容器化应用的方法和技巧。通过掌握Docker的基础知识、镜像与容器的创建、网络与存储配置以及实战案例,开发者可以更好地利用Docker提高开发效率和运维管理的便捷性。未来,随着容器技术的不断发展和普及,Docker在企业中的应用将更加广泛。
2025-06-21 21:29:53
375
原创 Docker与Kubernetes协同工作指南
Docker是一个开源的应用容器引擎,它允许开发者打包应用及其依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows机器上。这种容器化的方式使得应用的部署、扩展和管理变得更加便捷。Kubernetes(也称为k8s)是一个开源的容器编排系统,用于自动化应用容器的部署、扩展和管理。Kubernetes提供了一种机制,使得容器可以在集群中自动部署、扩展和管理,从而提高了运维效率。
2025-06-21 21:11:04
328
原创 Docker Swarm集群搭建
Docker Swarm 是 Docker 官方提供的容器编排工具,它可以将多个 Docker 守护进程组合成一个虚拟的、单一的 Docker 守护进程。使用 Docker Swarm,用户可以轻松地扩展和管理容器化应用,实现负载均衡、服务发现等功能。本文详细介绍了 Docker Swarm 集群的搭建过程,包括环境准备、集群初始化、节点加入和管理等步骤。通过掌握这一技术,用户可以轻松地管理和扩展容器化应用,提高系统的可用性和性能。在实际应用中,还需要根据具体情况对集群进行优化,以实现更好的效果。
2025-06-21 20:52:36
320
原创 Django框架:Python Web开发利器
Django框架凭借其功能强大、开发效率高、安全性好、社区支持丰富等特点,成为了Python Web开发的一大利器。通过本文的阐述,我们可以看到Django框架在Web开发中的优势和重要性。为了更好地利用Django框架,建议开发者深入学习其原理和技巧,同时关注社区动态,积极交流分享。在未来的研究中,我们可以进一步探讨Django框架在特定领域(如大数据、人工智能)的应用,以及如何优化Django框架以提高开发效率。特性描述功能强大提供丰富的功能模块,如用户认证、权限管理、数据库操作等开发效率。
2025-06-21 20:34:12
752
原创 DevOps监控与告警系统
DevOps监控与告警系统旨在实时监控应用程序、服务器和基础设施的性能,确保系统的高可用性和稳定性。本文详细介绍了DevOps监控与告警系统的功能、技术实现、应用场景以及优势和挑战。可以看出,这一系统对于保障软件系统的高可用性和稳定性具有重要意义。在未来,随着技术的不断发展和应用场景的拓展,DevOps监控与告警系统将面临更多的挑战和机遇。智能化:引入人工智能和机器学习技术,提高监控与告警的智能化水平,减少误报和漏报。云原生。
2025-06-21 20:15:51
313
原创 DevOps文化建设与实践
通过理念转变、流程优化、组织架构调整和技术工具支撑等方面的工作,企业可以更好地实践DevOps文化,提高软件交付效率,提升产品质量,实现快速响应市场变化的能力。未来,企业应继续深化DevOps文化建设与实践,探索更多创新的可能性,为企业的可持续发展注入新的活力。传统的软件开发模式中,开发与运维往往是相互独立的,这种割裂导致了许多问题的产生。DevOps文化的首要任务是实现理念上的转变,即从“开发完成,运维接手”转变为“开发与运维一体化”。技术工具是DevOps文化实践的重要支撑,以下是一些常用的技术工具。
2025-06-21 19:57:37
403
原创 DevOps持续交付:Jenkins Pipeline实战
本文详细介绍了Jenkins Pipeline在DevOps持续交付中的应用,从构建和测试、部署、监控和报警等方面阐述了其实战技巧和优势。在未来的发展中,Jenkins Pipeline将继续完善和扩展其功能,为DevOps持续交付提供更强大的支持。Jenkins Pipeline是一种强大的自动化构建和部署工具,它支持从简单的自动化脚本到复杂的工作流。这些步骤可以是构建、测试、部署等操作。通过自动化构建、测试和部署过程,Jenkins Pipeline可以大大缩短软件交付周期,提高开发团队的交付效率。
2025-06-21 19:39:23
1021
原创 DevOps工具链:Jenkins、Git与Docker的集成使用
本文详细探讨了Jenkins、Git与Docker的集成使用,从自动化构建与版本控制、代码审查与自动化测试、容器化部署和环境一致性等方面阐述了这种集成方式的优势与价值。通过实践案例和面临的挑战,我们可以看到这种集成方式在提高开发效率、确保代码质量、简化部署流程等方面的重要性。未来,随着DevOps文化的进一步推广和技术的不断进步,Jenkins、Git与Docker的集成使用将继续发挥重要作用。我们建议开发团队加强技能培训,优化配置和管理流程,以充分发挥这种集成方式的潜力。
2025-06-21 19:21:10
904
原创 DevOps工具链的搭建与使用
本文从工具链选择、搭建与配置、实践与应用、团队协作与培训等方面详细阐述了DevOps工具链的搭建与使用。通过搭建合适的工具链,实施持续集成和持续部署,加强团队协作与培训,企业可以显著提高软件开发效率和质量。在未来,DevOps将更加注重自动化、智能化和个性化。随着技术的不断发展,DevOps工具链将不断完善和优化,为企业的数字化转型提供更强有力的支持。企业应关注DevOps的最新动态,不断调整和优化实践策略,以适应不断变化的市场需求。建议加强自动化测试和部署,提高软件交付速度和质量。
2025-06-20 13:39:58
351
原创 DevOps实践:持续部署与监控
环境一致性是持续部署的关键。在数字化时代,软件开发和运维的融合成为趋势,DevOps理念的深入人心使得持续部署和监控成为企业提升竞争力的关键。通过持续部署,开发人员可以将代码更改快速、安全地部署到生产环境中,从而加快产品迭代速度,提高软件质量。通过实现自动化构建、测试、部署,确保环境一致性,企业可以加快产品迭代速度、提高软件质量、降低运维成本。通过持续部署和监控,企业可以实现快速迭代、持续优化,从而在激烈的市场竞争中保持领先。:通过基础设施即代码和容器技术,实现了环境的自动化部署和管理,降低了运维成本。
2025-06-20 13:21:49
333
原创 DevOps实践:CI/CD流水线搭建
1. 概念解析CI/CD是DevOps的重要组成部分,其中CI(Continuous Integration,持续集成)指的是开发人员频繁地将代码集成到一个共享的主分支上,而CD(Continuous Deployment,持续部署)则是指将经过测试的代码自动部署到生产环境中。2. CI/CD的优势CI/CD的实践可以帮助团队降低集成风险、加快迭代速度、提高代码质量。它通过自动化构建、测试和部署流程,减少了人工干预,提高了开发效率。
2025-06-20 13:03:27
457
原创 DevOps中的持续部署与回滚
本文详细阐述了DevOps中的持续部署与回滚,从概念解析、实践策略、风险管理等方面进行了深入探讨。持续部署与回滚是提高软件交付速度和质量的重要实践,对于实现快速反馈和稳定性具有重要意义。在实际应用中,应根据项目需求选择合适的工具和策略,加强风险管理,以确保部署过程的顺利进行。未来研究方向包括:研究更高效的自动化部署工具、探索更合理的回滚策略、优化部署流程等。通过不断探索和实践,进一步提高软件交付的效率和质量。
2025-06-20 12:45:27
418
原创 C语言指针与内存管理
指针是C语言中的一种特殊变量,它存储了另一个变量的内存地址。通过指针,我们可以直接操作内存中的数据,这在处理大型数据结构时尤为高效。动态分配内存:通过指针,程序可以在运行时动态地申请和释放内存,提高了内存的使用效率。传递大块数据:使用指针传递大块数据,如数组、结构体等,可以避免数据的复制,从而提高程序的性能。C语言中的指针与内存管理是编程的基础和关键。通过深入理解指针的概念、掌握内存管理的方法,我们可以编写出更加高效、可靠的程序。
2025-06-20 12:26:57
236
原创 Chainlink VRF 在链游中的创新应用:随机道具生成与玩法设计
本文从随机道具生成和玩法设计两个方面,详细阐述了Chainlink VRF在链游中的创新应用。通过引入Chainlink VRF,链游的公平性、安全性得到了有效保障,同时也为游戏开发者提供了更多创新空间。在未来,随着区块链技术的进一步发展,Chainlink VRF在链游中的应用将更加广泛。开发者可以探索更多有趣的玩法和互动设计,为玩家带来更加丰富的游戏体验。同时,我们也期待Chainlink VRF在链游以外的其他领域发挥更大的作用,为整个区块链行业带来更多创新和变革。
2025-06-20 12:08:37
382
原创 C++高级编程技巧与性能优化
本文详细阐述了C++高级编程技巧与性能优化,包括内存管理、编译优化、算法优化、数据结构优化等方面。通过实际案例分析和权威观点引用,证明了这些技巧和优化方法在提高程序性能方面的重要性。掌握这些技巧和方法,可以帮助程序员编写更高效、更可靠的代码。在未来,随着硬件和软件技术的不断发展,C++高级编程技巧与性能优化将继续演进。程序员需要不断学习新知识,跟上技术发展的步伐,以提高自己的编程能力和程序性能。同时,也建议开展更多关于C++高级编程技巧与性能优化的研究,以推动编程语言和软件开发技术的发展。
2025-06-20 11:50:12
350
原创 C++编程进阶技巧与实战
本文从内存管理、性能优化、游戏开发、网络编程等方面,详细阐述了C++编程进阶技巧与实战。掌握这些技巧,对于提升程序员的技术水平、优化程序性能具有重要意义。在未来的发展中,C++编程将继续发挥关键作用,为软件开发领域带来更多创新。深入学习C++标准库,熟悉常用算法和数据结构;关注业界最新动态,学习新型编程技术和工具;多进行实战练习,将所学知识应用到实际项目中。通过不断学习和实践,相信程序员们将能够在C++编程领域取得更高的成就。
2025-06-20 11:31:35
361
原创 C++性能优化:内存管理技巧
C++性能优化中的内存管理技巧对于提高程序性能和稳定性至关重要。本文从内存分配策略、内存访问优化、内存泄漏检测等方面详细阐述了C++内存管理技巧,包括智能指针的使用、对象池技术、数据局部性原理、循环展开和向量化、动态分析工具和静态分析工具等。通过正确使用这些技巧,开发者可以有效地提高程序的性能和稳定性,减少内存泄漏的风险。在未来的研究和实践中,我们可以进一步探索更高效的内存管理策略,以应对日益复杂的软件开发需求。
2025-06-20 11:13:06
275
原创 C++内存管理深入解析
内存泄漏是指在程序运行过程中,由于疏忽或错误导致未能释放已分配的内存,导致内存占用逐渐增加,最终可能导致程序崩溃或系统资源耗尽。C++内存管理是编程中的一项关键技能。通过合理选择内存分配策略、避免内存泄漏、采用内存优化技术,可以有效提高程序的运行效率、稳定性和安全性。本文从动态内存分配、内存泄漏与避免、内存优化策略等多个方面对C++内存管理进行了深入解析,希望对读者有所启发。在实际编程中,应根据具体需求选择合适的内存管理方法,并不断优化和改进。
2025-06-20 10:54:31
347
原创 C#异步编程与多线程管理
C# 异步编程与多线程管理是提高应用程序响应性和性能的关键技术。通过异步编程,开发者可以避免界面卡顿,提高程序的性能;通过多线程管理,开发者可以更高效地利用计算机的硬件资源。在实际开发中,开发者应结合 Task 并发模型和异步方法,充分利用 C# 提供的异步编程和多线程管理功能。理解异步编程的优势,包括提高响应性和性能。掌握多线程的创建、同步和线程池的使用方法。熟悉 Task 并发模型和异步方法的编写方式。在未来,随着计算机硬件的发展,异步编程与多线程管理的重要性将更加凸显。
2025-06-20 10:35:37
395
原创 BACnet 到 MQTT 协议转换:楼宇自控系统集成优化
BACnet 是楼宇自控系统中广泛应用的一种通信协议,具有良好的稳定性和可扩展性。然而,在物联网和大数据背景下,BACnet 协议在数据传输效率、网络扩展性等方面存在一定局限性。相比之下,MQTT(Message Queuing Telemetry Transport)协议具有轻量级、低功耗、高并发等特点,更适合应用于大规模物联网场景。本文详细阐述了 BACnet 到 MQTT 协议转换在楼宇自控系统集成优化中的应用。
2025-06-20 10:17:15
402
原创 AWS Lambda Serverless AI:低成本部署 LLM 模型方案
在当今数字化时代,人工智能技术正逐步深入各行各业,其中,大型语言模型(LLM)的应用尤为引人注目。然而,如何低成本、高效地部署LLM模型成为了一个亟待解决的问题。本文将详细介绍AWS Lambda Serverless AI的低成本部署LLM模型方案,从多个角度分析其优势和应用场景。
2025-06-20 09:58:44
285
原创 AR/VR技术原理及应用前景
AR/VR技术作为一种新兴的交互方式,其原理和应用前景具有广泛的研究价值。从技术原理来看,AR/VR技术涉及多个领域的知识,如计算机视觉、人工智能等。在应用领域,AR/VR技术已展现出强大的潜力,不仅在娱乐游戏、教育培训等领域取得显著成果,还在医疗、军事等领域具有广泛应用前景。展望未来,随着技术的不断突破和行业应用的深入,AR/VR技术将更好地服务于人类社会,为人们的生活带来更多便利。同时,我们也应关注AR/VR技术可能带来的负面影响,如隐私保护、成瘾问题等,以确保其健康发展。
2025-06-20 09:40:12
421
原创 API设计与开发:构建高质量接口
API设计与开发是构建高质量接口的关键环节。通过以用户为中心的设计理念,遵循RESTful原则,优化参数设计、错误处理、性能和安全保障,可以构建出高效、安全、易用的API。本文旨在提供一种全面、权威的视角,帮助开发者理解和掌握API设计与开发的核心要点。在未来的研究和实践中,我们应当继续探索API设计的新方法和技术,以适应不断变化的技术环境和用户需求。持续学习和实践:API设计和开发是一个不断演进的领域,开发者应持续学习和实践,以跟上技术发展的步伐。社区合作。
2025-06-20 09:21:52
293
原创 Apache Spark Structured Streaming 优化实战
本文详细阐述了 Apache Spark Structured Streaming 优化实战的多个方面,包括优化数据源、数据处理、存储和资源调度等。通过合理优化,可以提高数据处理的效率,降低延迟,满足实时数据流处理的需求。在实际应用中,需要根据业务场景和数据特点,灵活运用各种优化技巧。为了更好地应对大数据时代的挑战,未来研究方向可以包括:进一步优化数据源分区策略、探索更高效的数据处理算法、研究新的存储格式和调度策略等。
2025-06-19 09:29:27
248
原创 Ansible自动化运维实践分享
Ansible是一款基于Python语言的开源自动化工具,主要用于批量部署、配置管理和应用发布等场景。它采用了无代理模式,通过SSH协议与远程主机进行通信,实现了自动化运维的便捷性。以下将从Ansible的特点和优势两个方面进行介绍。本文从Ansible的概述、实践案例、进阶应用和安全性等方面进行了详细介绍。通过Ansible的自动化运维,企业可以提高运维效率、降低人力成本,确保系统稳定可靠。在实际应用中,我们需要根据实际需求选择合适的Ansible模块和功能,充分发挥其优势。
2025-06-18 13:28:51
265
原创 Angular开发实战:从入门到进阶
Angular是由Google推出的一款开源前端框架,旨在帮助开发者构建高效、可维护的客户端应用程序。Angular采用TypeScript语言开发,支持模块化设计,使得代码更加简洁、易于管理。此外,Angular还提供了丰富的组件库和工具链,以简化开发流程。《Angular开发实战:从入门到进阶》详细介绍了Angular的开发技巧与应用。通过学习本文,读者可以掌握Angular的基础知识、进阶技巧、实战应用以及性能优化方法。
2025-06-18 13:10:27
414
原创 Android进阶:自定义View与动画效果
自定义View是Android开发中常见的一种需求,它可以满足开发者对UI的个性化需求。自定义View不仅可以提高应用程序的用户体验,还能使应用程序在众多竞品中脱颖而出。灵活性:开发者可以根据自己的需求设计UI,摆脱系统默认View的限制。复用性:自定义View可以在多个项目中复用,提高开发效率。继承现有View:在现有View的基础上进行扩展,如继承TextView、ImageView等。组合现有View。
2025-06-18 12:52:19
300
原创 Android系统架构与源码解析
Android系统架构分为四个主要层次:应用程序层、应用程序框架层、系统运行库层和Linux内核层。每一层都有其独特的功能和职责,共同构成了Android系统的整体架构。应用程序层:包括各种应用程序,如联系人、浏览器、短信等,这些应用程序都是使用Java语言编写的。应用程序框架层:提供了一系列API供应用程序调用,同时还包括了一些系统级的服务,如短信服务、电话服务等。系统运行库层:包括了一系列核心库,如SQLite数据库、OpenGL图形库等,这些库为应用程序提供了底层的支持。Linux内核层。
2025-06-18 12:34:00
430
原创 Android架构:MVP模式实战应用
MVP模式将应用程序分为三个核心组件:Model(模型)、View(视图)和Presenter(呈现器)。Model负责数据操作,View负责展示数据,而Presenter则作为中间层,负责协调Model和View之间的交互。这种模式降低了模块间的耦合度,提高了代码的可维护性和可扩展性。本文详细介绍了Android架构中的MVP模式,从MVP模式的简介、优势与不足,到在Android中的应用和实战案例分析,使读者对MVP模式有了更深入的了解。
2025-06-18 12:15:53
347
原创 Android架构组件使用与优化
Android架构组件是Google推出的一套用于帮助开发者构建高质量应用的库。这些组件提供了用于管理UI、数据持久化、生命周期和依赖注入等方面的功能,旨在简化开发流程,提高代码的可维护性。本文详细介绍了Android架构组件的使用与优化方法。通过使用这些组件,开发者可以构建出结构清晰、性能优良、易于维护的应用。在实际开发过程中,开发者需要根据项目需求和实际情况,灵活运用这些组件,并进行相应的优化。在未来,Android架构组件将继续发展,为开发者提供更多便捷的功能。
2025-06-18 11:57:27
371
原创 Android性能监控:Systrace工具的使用
Systrace是Android系统中的一款性能跟踪工具,它能够记录系统运行过程中的各种事件,并以可视化的形式展现出来。通过Systrace,开发者可以轻松地发现系统性能瓶颈,找出影响性能的原因,进而优化应用。本文详细介绍了Android性能监控工具Systrace的使用方法,从多个方面阐述了Systrace在性能分析中的应用。通过掌握Systrace,开发者可以更好地发现和解决性能问题,优化应用性能。在未来的研究中,可以进一步探讨Systrace与其他性能监控工具的结合使用,以提高性能分析的准确性和效率。
2025-06-18 11:39:11
269
原创 Android性能优化:内存泄漏问题排查
内存泄漏是Android性能优化中不可忽视的问题。通过使用工具、代码审查和优化代码,可以有效排查和解决内存泄漏问题。本文详细介绍了内存泄漏的概念、排查方法和解决方案,旨在帮助开发者提升应用性能。在未来,随着Android技术的不断发展,内存泄漏的排查与解决方法也将不断更新。开发者需要持续关注相关技术动态,提升自己的技能,以应对日益复杂的性能优化需求。同时,建议开发者在使用内存管理工具时,结合项目实际情况进行选择,以达到最佳的性能优化效果。
2025-06-18 11:21:09
329
原创 Android性能优化与调试技巧
Android 性能优化与调试技巧涉及多个方面,包括优化内存使用、提升 CPU 效率、优化网络请求、优化 UI 渲染等。通过合理使用调试工具和方法,开发者可以定位并解决性能问题,确保用户体验。研究新型性能优化技术,如人工智能辅助性能优化。分析不同应用场景下的性能优化策略,提供更具针对性的优化建议。总之,Android 性能优化与调试技巧对于提升应用性能和用户体验具有重要意义。开发者应不断学习和掌握这些技巧,为用户提供高质量的应用。
2025-06-18 11:03:05
361
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人