保存成功
保存失败,请重试
提交成功
最新热门
严选

铁总在用的高性能分布式缓存计算框架 Geode

你架构篮子里缓存还依然只有 Memcache, Redis 么? Apache Geode 相信大家都比较陌生,但是提到 12306 相信大家都不陌生,12306 可以说是中国乃至世界上访问量最大的网站,12306 为何会选择 Geode 作为数据缓存? 而这样的选择想必 Geode 必定有过人之处。同样的我司从去年开始就在尝试 Geode 作为缓存使用,目前其稳定性得到基本证明,公司也在逐渐迁移其他业务到 Geode 中来。 在本场 Chat 中,会讲到如下内容: - 什么是 Geode,有哪些特性 - Geode 与 Redis - Geode 集群搭建 - Gfsh 常用命令介绍 - Geode OQL - Geode 与 Spring 结合 - Geode Acid 特性 - Geode Restful API - Geode 部署模式 - Geode 数据计算初探 - Geode 滚动升级 - Geode 图形化与监控报警 - Geode 常见故障与恢复 - 其他特性 - Geode 目前我司使用现状 适合人群: 想让你的架构体系更丰富一点的开发者
https://images.gitbook.cn/77916ab0-bcfc-11e9-9371-4b564efc554f?imageslim草根辉子 · 资深Java开发工程师
4 订阅

自制操作系统第 1 课:环境准备与启动区实现

相信不少读者都想亲自动手写一个能开机启动运行的 Hello World 版操作系统,但好多书籍和资料都混杂了太多不必要的知识,而把核心部分弱化了。 比如《从零开始自制操作系统》,作者用自己实现的汇编工具、映像制作工具等,就会让读者困惑于为什么现有的工具不能用。再比如《操作系统真相还原》,在 Linux 系统下开发,且启动区代码过长,个人觉得没有必要。 基于以上几点,本 Chat 将教你: 1. 回顾开机启动过程,具体见我另一篇 Chat 《硬核讲解计算机启动过程》,姑且叫它自制操作系统第 0 课吧 2. Windows 系统下搭建开发环境 3. 让人困惑的虚拟映像是什么 4. 写出最简单的启动区代码,并运行得到 Hello World 效果 本 Chat 打算出系列课程,可持续关注。
https://images.gitbook.cn/345a7a50-a28e-11e7-99e4-8512a8fea336?imageslim闪客sun · 高级研发工程师
6 订阅

Electron + Express 打造爬虫优质内容付费会员系统

本项目技术栈:Electron + React + Mobx + Express + Mongoose 产品目标:实现一个分享个人副业的网站([线上测试地址](https://1000fuye.com/)),采用 Electron 爬虫知乎的副业话题下的优质答案,经审核通过后上线,允许用户评论,及用户自主发布自己的副业,其它用户可查看、评论及收藏。本项目涉及到前端、Electron 管理端、Node 后端、Mongodb 数据库整套内容,将要介绍的内容如下(文章将会提供项目 Github 地址及交流群): **Node 服务端**: 1. 如何搭建一个可以接入多项目的 Node Express 服务构架,通用模块和通用路由与业务的抽离; 2. 理解 Session(会话保持)是入门后台的基础,用户系统的登陆 +(验证码) 注册的实现; 3. 数据库分库分表的思路,分离业务表和通用表,分离开发、测试、线上数据库; 4. 阿里云 Ecs 服务器、Linux 环境搭建 Node、Mongod、Nginx 服务端环境以及配合可视化工具方便控制; 5. 理解建立数据校验模块,校验一切数据类型的重要性; 6. Node Express 错误处理机制的封装处理; 7. 普通用户如何利用第四方聚合支付工具正常接入微信支付和支付宝支付,打造自己的收费系统; 8. 付费文章内容,非会员用户查看时如何保证只输出部分内容; 9. 掌握 Mongodb Mongoose 联表查询的高级聚合语法,封装联表查询方法,避免数据库设计重复字段问题; 10. 建立黑名单用户的权限控制系统,监控黑名单用户发布内容; 11 .建立敏感词系统,监控命中敏感词的评论与文章; 12. 如何利用接口的时效性与加密字段保证接口的安全,以及请求频率控制,防止 DDos 攻击; 13. 服务端如何防范 Xss、Csrf 攻击的常规操作,利用好现有工具库; 14. 服务端内存缓存的利用与更新,解决使用率高,更新率低的资源的频繁调度; 15. Email 通知模块的简单运用; 16. PM2 部署项目的使用; 17. Nginx 多个实际项目常用的配置; 18 数据一致性如何保证; **Electron 端**: 1. Electron 项目的基础结构; 2. 爬虫与反爬虫的解决方案对比(Electron 的 Js 注入银弹); 3. Electron 多线程的通讯方案,如何做到清晰划分; 4. LowDb 本地文件数据库资源存储,同步更新到线上数据库,再也不怕线上资源丢失; 5. Electron 下载优质文章的同时,如何下载对应的图片到本地文件夹,并及时显示出来; 6. 优质内容 Pdf 一键制作发布; 7. Electron 打包与更新方案; 8. Electorn 在 Windows 下的开发环境问题以及打包环境问题终极解决方案; 9. 图片批处理压缩的工具介绍; **React 端**: 1. 前端项目数据流两种模式的对比; 2. 错误监控系统与用户分析系统的建立,利用好 IndexDB 数据库,减轻服务端压力; 3. 前端优化打包后体积的常规解决方案; 4. 阿里云 OSS 与 CDN 的应用介绍; 5. 兼容手机和 PC 的最简单的方案; 6. 漫谈前端 SEO 解决方案; 7. 前端常用工具库介绍; 8. 金融行业 TradeView 工具解决方案;
https://images.gitbook.cn/04b19e10-0ae1-11ea-87ce-5bc819384c62?imageslimDM · 前端构架师
7 订阅

Android 开发学习路线:从小工到架构师之路

Android 从诞生至今,已经 10 年有余了。在这 10 年中,Android 自身在不断完善着,同时,运行在这一操作系统上的 App 也在逐日丰富着。一直以来,学习 Android 开发都是以 Java 为基础,再逐渐熟悉 Android API 的过程。然而,Android App 经过多年的发展变化,这套旧有的方式还能不能适应当今就业市场的需求,这样的学习过程还能不能满足现在企业岗位的要求呢?阅读本文,给你答案。 本文凝聚了作者多年来从事 Android App 设计、开发、测试、优化等知识结晶,为读者梳理出一套适合当今社会需要的 Android App 开发快速上手指南。通过阅读本文,您将得到: 1. 当今就业市场对 Android App 开发者的需求有哪些; 2. 学习 Android App 开发,我们需要怎么学; 3. 破解面试难题,助你顺利拿 Offer; 4. 攻坚 Android App 开发进阶技术; 5. 通向 Android App 大师之路。 **本文适合的人群**:任何对 Android App 开发感兴趣的小伙伴,或已经入门了的朋友。
https://images.gitbook.cn/c6620ca0-aa9e-11e9-b469-09c3917f6a6a?imageslim萧文翰 · 架构师
8 订阅

微信在线小游戏《拯救疯狂泡泡鱼》开发实践

当前各类小游戏平台发展非常火爆,作者也随波逐流,很早上线了一款个人版的微信小游戏《拯救疯狂泡泡鱼》,有兴趣的读者可以先微信搜索试着玩下(顺便通关后帮忙点下广告),可以更直观了解通过本篇 Chat 可以学到的内容。 本场 Chat 就分享作者开发改造《拯救疯狂泡泡鱼》这款微信小游戏的实践经验,将会涉及到以下几点: 1. 游戏开始的资源加载以及进度 UI 处理; 2. 背景图片平行视图滚动的实现; 3. 关卡的设计实现; 4. 泡泡鱼的实现; 5. 泡泡鱼爆炸后的粒子效果实现; 6. 通关的设计实现; 7. 接入微信广告。 说明:使用的游戏引擎 Egret 将会在各个章节涉及,游戏源码将在文章内提供,游戏里素材是作者在开源网上下载并加工过,可放心使用。 目标读者:对小游戏开发感兴趣的读者。
https://images.gitbook.cn/4346f970-b577-11e7-83da-7dc5dcdf747b?imageslim汪洋 · 工程师
45 订阅

小程序 · 云开发实战:搭建小程序订阅消息系统

消息能力是小程序能力中的重要组成部分,微信官方提供了订阅消息能力,以便实现开发者实现服务的闭环和更优的体验。可以支持在用户自主订阅后,推送消息到用户端(服务通知),用户点击查看详情可跳转至小程序的页面,实现服务的闭环,提高活跃度和用户粘性 本次课程会演示如何使用云开发快速为小程序加入订阅消息能力,在实战环节会带领大家搭建一个具备用户订阅、消息去重、定时发送、用户退订等订阅消息管理能力的开课提醒小程序,学习完成后同学们将掌握: · 云调用调用微信开放能力相比传统模式有哪些优点 · 如何基于云开发快速接入小程序订阅消息 · 如何结合云开发的云函数、定时触发器、数据库和云调用开发完整的功能
https://images.gitbook.cn/68135c50-85a8-11e9-9034-2711b8b7abf2?imageslim微信极客WeGeek · 程序员
小程序 · 5 订阅

别用行动上的勤奋,掩盖你思想上的懒惰

当我还在部队时,班长告诉我:神枪手都是用子弹喂出来的。神枪手之所以打得准,除了因为他们刻苦练习,最主要的原因还是因为子弹打的多了,久而久之也就形成了肌肉记忆,打得准,也就变成了“本能”。 当我退伍后学习编程时,我的老师告诉我,好的程序员,是代码堆出来的,如果你毕业后想要找到满意的工作,那么你大学期间至少要写十万行代码。 这两件事情,看起来好像都是以量取胜、勤能补拙。但是实际上却有本质上的区别。神枪手自然是天道酬勤的存在,但是优秀程序员并不是,对于脑力劳动者,善于思考才是王道。这就是很多人每天忙忙碌碌,但却碌碌无为,而有些人每天看起来无所事事,但却事事有成的根本原因。 今天这篇 Chat 就和大家聊一聊如何少做“无用功”,快速找到做一件事情的“捷径”,用最有效的方法去面对学习、工作、生活。 本场 Chat 中,将会讲到: 1. 为什么有人不怎么写代码技术依然很强?这些观念限制了你 2. 从“富人思维”中找到成功的要点 3. 学会“捷径”思维,找回“时间自由”
https://images.gitbook.cn/99e8efc0-8da9-11e9-a560-658436b98813?imageView2/1/w/200/h/200王有条 · 全栈工程师
44 订阅

如何设计一个秒杀系统

前段时间“双 11”正式落下帷幕,天猫达到 2684 亿元的成交额再次刷新纪录,京东累计下单金额 2044 亿,其中天猫 100 亿只用了 1 分 36 秒,突破 1000 亿用了 1 小时 03 分 59 秒,突破 2000 亿只用了 14 小时 21 分 27 秒,短时间内如此大的成交量离不开我们这次讨论的话题“秒”。 之所以叫做秒杀系统,就是因为与普通的系统相比,它要在很短的时间内处理比平时大的多的流量请求,怎么保证服务器在处理这些请求时不至于出现宕机现象,它的背后支撑技术是什么? 通过本次的学习您将学到以后下知识点: - 秒杀系统注意的一些关键点: 1. 秒杀系统的常用架构以及设计原则 2. 如何做好动态数据与静态数据分离,还有哪些方案值得我们去思考 3. 如何做好热点隔离 4. 如何做好流量削峰,有哪些方案可供选择 5. 减库存如何设计才能不会超卖 6. 秒杀系统下的缓存策略 - 总结
https://images.gitbook.cn/6482eb00-f795-11e9-9d2e-77869a8db817?imageslim飞天 · 架构师
103 订阅

从本质了解如何写出高效的 CSS 代码

CSS 入门容易,精通确很难。当前大多数前端开发人员或者后端转前端人员很少愿意花时间在 CSS 的研究和学习上,从而导致了很多糟糕的实现。 本 Chat 将从浏览器构成,到了渲染引擎,再到 CSS 的解析原理,到执行顺序,做了一系列的探索。期望大家能从本质中了解如何写出高效的 CSS 代码。 在本场 Chat 中,会讲到如下内容: 1. 浏览器的组成部分 2. 渲染引擎运行原理 3. CSS 几大特性 4. CSS 语法解析过程详解 5. CSS 选择器执行顺序 6. 如何高效的共享 ComputedStyle 7. CSS 书写顺序对性能有影响吗 8. 高效的 CSS 书写优化策略 9. 共享 CSS 命名规范
https://images.gitbook.cn/f1daacc0-0a6b-11ea-b453-8900bb88b7f0?imageView2/1/w/200/h/200YC · 高级前端工程师
69 订阅

Electron-Vue + Element-UI 制作图片压缩工具实战

本场 Chat 的主要内容是,分享用 Electron 技术栈制作一个图片压缩客户端小工具,让入门了 Electron 的同学,有一个练手的小项目,此项目能一直当作自己的一个项目进行维护,也能在自己的工作小团队里进行小范围的使用,也算是一个前端基建项目。 1. 认识 Electron 2. Electron-Vue 项目目录介绍 3. 初始化项目,实现第一个小目标——拖拽上传图片 4. 实现图片压缩和展示列表 5. LowDB 实现本地持久化 6. 利用主进程和渲染进程通信,完成托拽图片到图标上传图片 7. 编译和打包 8. 拓展与思考 9. 分享GitHub源码地址
https://images.gitbook.cn/ece3db10-0b01-11ea-8027-29b1b76c1592?imageView2/1/w/200/h/200尼克 · 前端工程师
52 订阅

AWS 容器服务 ECS 项目实战分享

AWS 作为全球最大的云服务提供商,目前国内众多公司也是选用了他作为公司服务承载。 容器化技术作为当前的新时代,也是我们需要掌握必不可少的技能,作为 AWS 上容器服务的 ECS,也是容器化的最佳实践。 在本场 Chat 中,会讲到如下内容: 1. AWS 必要基础概念讲解(常用服务) 2. ECS 服务基础介绍 3. 如何把业务服务部署到 ECS 上 4. 完善配套设施:日志,告警,持续集成等 5. 延伸拓展:弹性伸缩配置,特殊容器配置 适合人群: 对 AWS 以及容器有兴趣的技术人员
https://images.gitbook.cn/72344a70-910e-11e9-bacf-c5ef8d9f03b0?imageslim李彬 · 运维工程师
53 订阅

聊聊 CSS 开发中的编码规范

作为一名合格的前端开发工程师,编码规范是极其重要的,当页面的样式随着时间的增加而变得复杂的时候,CSS 文件和代码量也随之增多,如果没有一个合格的规范去约束我们的编码,这个时候去看我们写过的代码肯定是很痛苦的,如果是别的同事去接手你的项目,那估计也是无从下手。 规范编码的好处: - 减少代码量,增强可阅读性,提高可维护性 - 减少项目沟通的成本,加强开发效率 - 提升 CSS 性能,加快页面渲染速度,提升用户体验 你将会学到: - 13 类 CSS 编码规范 - 如何编写易维护的 CSS 代码 - 提升自己对代码的洁癖感 适合人群: - 对CSS编码规范有兴趣的前端工程师
https://images.gitbook.cn/d9dc6e60-f7c9-11e9-a4a4-b7ec37caf93c?imageslimSam · Web前端开发工程师
CSS · 25 订阅

开发人员转型项目经理, 有哪些路要走?

作为一名开发人员,你想过将来的路怎么走么?如果想转型做项目经理,你需要掌握哪些硬技能和软技能?在转型过程中会经历怎样的阵痛? 本场 Chat 会和大家分享如下几点: 1. 开发人员转型项目经理,需要把握什么样的机会 2. 需要提前做什么准备? 3. 转型之后自己需要做哪些改变? 4. 转型之后的日子会更爽吗? 适合对象: 1. 开发干得不爽,想换个工种玩玩的同学 2. 开发干得很爽,想多掌握一种生存技能的同学
https://images.gitbook.cn/56403d80-c3f3-11e8-b9be-8b6c9226b86c?imageslim是我是我就是我 · 十年打杂
40 订阅

流式计算模型 Structured Streaming:快速入门开发

从 Spark2.0 开始,Spark 引入了一套新的流式计算模型:Structured Streaming。该模型在未来很可能会替代调掉 Spark Streaming 成为实时计算的主流。那么 Structured Streaming 到底有什么优势,在设计以及思想上为何比目前主流的 Spark Streaming 更受官方推崇,本 Chat 将为您逐一解答,而且不光有从入门级的开始,更有理论和代码演示,让读者快速了解 Structured Streaming 并上手开发。 在本场 Chat 中,会讲到如下内容: - Structured Streaming 概述及快速入门 - Structured Streaming 输入表、结果表、输出等基本概念 - Structured Streaming 处理事件及容错语义 - 创建 Streaming DataFrame/DataSet 的几种方式 - 基本 API 操作 - 基于 event-time 的窗口操作 - 基于 watermark 处理延迟数据 - 流数据去重 - Stream-static joins 和 Stream-stream joins - 输出模式(Append/Complete/Update) - 输出接收器(file/kafka/console/memory等) - Trigger 触发器--连续处理模式 - Structured Streaming 项目实战(广告黑名单实时统计/广告点击量实时统计) 适合人群: 对 Structured Streaming 有兴趣的技术人员
https://images.gitbook.cn/6dbe1540-0204-11ea-988e-8da50f223446?imageslimKane · 高级大数据工程师
22 订阅

我是如何通过 Nginx 日志实时封禁风险IP的

本文分享了自动化采集、分析 Nginx 日志并实时封禁风险 IP 的方案及实践 阅读这篇文章你能收获到: * 日志采集方案 * 风险 IP 评估的简单方案 * IP 封禁策略及方案 阅读本文你需要: * 熟悉编程 * 熟悉常用 Linux 命令 * 了解 Docker
https://images.gitbook.cn/185db560-d24d-11e9-b07f-df7cac6bbec8?imageslim草堂笺 · 工程师
Nginx · 72 订阅

作为程序员怎么写好一份简历

笔者在前程无忧有过半年的实习经历,作为 RPO 项目助理,每天要阅读成千上百份的简历,曾协助富士康、迅雷、顺丰、平安金服等企业招聘各级技术岗位;本场 Chat 将会以猎头的角度,告诉你一份优秀的简历是怎么构建的。 在本场 Chat 中,你将会学到: - 怎样写好一份技术简历 - 怎么打扮你的简历亮点,使得更易脱颖而出 - 招聘工作流程是怎样的?投递的途径都有哪些 - 如何做好自己的职业规划 适合人群: - 正在或准备找工作的你 - 想写好简历,做好职业规划的你 - 即将步入职场的应届生
https://images.gitbook.cn/d9dc6e60-f7c9-11e9-a4a4-b7ec37caf93c?imageslimSam · Web前端开发工程师
45 订阅

由浅入深掌握并发编程基础

很多人也看过不少并发编程相关文章,但是却总是过一段时间就全忘了,个人觉得想学好多线程,先得了解并发编程基础,有了基础后面才能得心应手。 在本场 Chat 中,会讲到如下内容: 1. 并发的发展历史 2. 线程是如何出现 3. 线程的应用 4. 多线程的实际应用场景 5. 线程的生命周期 6. 线程的启动原理 7. 线程的终止原理 有代码案例,有原理篇章,有部分 Thread 源码解析,更有 JVM 部分源码解析。 适合人群:想学习 Java 并发编程的、并发编程基础较差小伙伴。
https://images.gitbook.cn/3f6bd210-e06c-11e7-bd45-a91a35d9b7ed?imageslim老田 · 高级工程师
44 订阅

大厂 iOS 面试指南

最近几年,由于工作原因,需要经常参与 iOS 的招聘工作,这几年下来,筛选过很多简历,面过不下百人,发现很多面试者在简历准备、技术面试、HR 面试等各环节存在或多或少的问题。本 Chat 将以本人作为面试官的视觉来谈谈企业希望面试者具备的特质,分别在准备简历、投递简历、技术面试、HR 面试四个方面分享一下自己的建议。 机会永远属于有准备的人,我们与其羡慕他人的成功,不如从此刻起,积累足够多的知识和面试经验,为将来进入更好的公司做好充分的准备! 本 Chat 你将会获得以下知识: 1. 企业希望 iOS 开发具备的特质; 2. 怎么准备简历; 3. 怎么投递简历; 4. 怎么准备 iOS 技术面试; 5. 怎么准备 HR 面试。
https://images.gitbook.cn/780060c0-9c9d-11e9-b66a-fd03e8dacaf7?imageslimakon · iOS leader
21 订阅

Preact(React)核心原理

在前端界,React 一定是我们耳熟能详的前端开发框架之一,它的出现可以说是带给了我们全的 Web 开发体验,其中也带来了许多新的概念:JSX、virtual-dom、组件化、合成事件等。当我们想从源码层面去研究它的原理时,由于 React 的源码的庞大和晦涩难懂,这也会变得异常困难。但是在爱好“造轮子”的前端界,我们会发现一些和 React 有着近乎相同的框架,本文的主人公 Preact 便是其中的佼佼者,一直都是 React 的顶级“备胎”。但是它相对简练的代码,使得我们更好的去学习和研究它的原理,本文将从以下几个方面介绍: * `Preact` 是什么? * `Preact` 和 `React` 的区别有哪些? * `Preact 是怎么工作的` * `JSX` * `Virtual Dom` * `Preact` 的 `Virtual DOM` diff算法 * `Preact Hooks` 的实现 * 一个组件的生命周期 从本文你可以学习到(这些点也是高级前端面试的常见问题): * 一个前端框架的基本组成 * 虚拟 DOM 的实现原理及细节 * Diff 算法细节 * Hooks 实现原理及细节 * 组件生命周期及实现原理
https://images.gitbook.cn/70bffc20-a1db-11e8-9a44-c381fc9d5498?imageslim程序员-玄魂 · 架构师
103 订阅

程序员“求包养”攻略揭秘

程序员,不仅要干得好,还要嫁得好!哪怎样才能嫁入豪门,找到如意好工作呢? 方向比速度更重要:2003 年前后,BAT 还都是名不见经传的创业公司,虽然国外有 Google、eBay、ICQ 等探路先锋,但彼时这些公司的商业模式尚未成型,业态超前却不被看好。因此,在老兵哥研究生毕业时,我们大多数同学都加盟了传统 IT 领域的头部企业,只有少数同学选择了 BAT。但短短十来年,IT 行业发生了翻天覆地的变化,当初的抉择对人生产生了极大的影响,那些在 BAT 坚持下来的同学获得了超预期的物质回报,在公司飞速发展的过程中还获得了更多的成长机会和空间,得以站上更高的舞台,看见更大的世界。 选择比努力更重要:错过了 BAT,是否就错过了全世界呢?实则不然,BAT 的发展势头依然很猛,我身边就有朋友死磕 BAT,兜兜转转在 A、T 之间跳了好多次,不折不挠,终于拿到了梦寐以求的期权。除了 BAT,这些年还出现了京东、头条、美团和滴滴等独角兽企业,甚至在普遍认为没有机会的领域又杀出了小米、拼多多等巨无霸。另外,随着云计算、大数据、人工智能、区块链、金融科技、5G 和物联网等风口的涌现,各个领域都诞生了许多优质企业。因此,我们程序员最不缺少机会,缺的是甄别机会并抓住它的能力。 顺势者昌,在滚滚向前、不可抵挡的趋势面前,个体力量很渺小。当然,个人奋斗也很重要,否则连选择的机会都没有。但你我都很容易掉进“用战术上的勤奋掩盖战略上的懒惰”这个陷阱,只知埋头赶路,很少抬头看天,从不曾学习如何做选择。其实,任何选择都存在风险,都有选错的可能,你我能做的就是从一次次选择中积累经验方法,不断降低选错的概率。活少、钱多、离家近,这或许是我们大多数人对好工作的定义,但单凭这些真能筛选出好工作吗?投递简历时,你是漫无目的地被选择,还是锁定目标主动出击?有多份 Offer 可选时,你是完全听从家人朋友的意见,还是有办法选出最适合的?工作遇到了瓶颈挑战,或面对外部诱惑,或遭遇公司动荡期,你到底要不要跳槽? 结合个人和朋友真实经历,以及多位读者小伙伴的咨询案例,老兵哥我从行业领域、资方类型、股权结构、公司规模、业务类型、长短收益等维度梳理出了工作筛选标准。如果你对此话题感兴趣,或正困惑于下列问题,那赶快来听一听老兵哥给你的独家建议吧! * 扎根某个行业,还是跳槽到热门的行业? * 跨行业跳槽时,怎样包装自己的优势呢? * 国企\民营\外资,哪种风格更加适合我? * 加盟创业公司,为什么要留意股权结构? * 大、小公司,你能告诉我该怎么选择吗? * 2C\2B,商业模式跟找工作有什么关系? * 股票期权跟落袋为安的工资,哪个更香? * ......
https://images.gitbook.cn/7ed1bdd0-7773-11e9-befb-31bb655545e5?imageslimIT老兵哥 · 架构专家/培训讲师
40 订阅
-- 我们是有底线的 --
微信扫描登录