- 博客(63)
- 收藏
- 关注
原创 开发工具一览
WinSCP 是一个免费且开源的FTP、SFTP、SCP客户端,它结合了文件浏览器和文件管理器的功能,支持拖放操作,方便Windows用户安全高效地管理ECS服务器上的文件。:国内主流的代码托管平台,易于使用,对中国开发者友好,具备丰富的开源项目库,同时也提供企业版服务,有良好的中文支持和较快的访问速度。:腾讯出品,支持敏捷开发全流程管理,功能丰富,覆盖需求管理、迭代计划、缺陷跟踪等,支持移动端访问,与腾讯云服务集成良好。
2024-02-25 11:00:00
1341
原创 基础架构即服务
云服务提供商提供了弹性可扩展的存储解决方案,比如块存储(Block Storage)用于像硬盘一样挂载至虚拟机,对象存储(Object Storage)用于大规模的数据存储,以及文件存储(File Storage)等。云服务商构建复杂的虚拟网络架构,包括虚拟私有云(VPC)、子网、安全组、负载均衡器、DNS服务等,允许用户定义灵活的网络拓扑、分配IP地址、配置安全策略,并确保不同云资源之间的高效、安全通信。Inode是文件系统中的一个数据结构,用于存储文件或目录的元数据信息,例如文件大小、所有者、权限等。
2024-02-24 13:00:00
1756
原创 快速部署系列
8. whereis nginx 查看 nginx 安装路径 /usr/local/nginx。centos 安装 docker-compose:行1: Not: 未找到命令。启动docker且设置开机自启动;docker-compose安装。6. make 预安装。10. 启动 nginx。1、nginx 启动。2、docker启动。2、安装 Nginx。3、安装Docker。
2024-02-23 13:00:00
216
原创 Taiga 部署
作用:Taiga 保护服务,提供对上传附件的安全访问控制。taiga: 这是 Taiga 的主服务,负责提供项目管理、任务追踪、看板管理等功能。作用:反向代理和负载均衡服务(gateway),对外提供统一的服务入口,转发 HTTP 请求到相应的 Taiga 服务,并处理静态资源服务。作用:提供 PostgreSQL 数据库服务,用于存储 Taiga 后端所需的全部数据,包括项目、用户、任务等信息。作用:Taiga 前端服务,包含 Vue.js 应用,为用户提供图形化的 web 界面,用于项目管理和协作。
2024-02-22 13:00:00
1101
原创 npm 抽取 解析(持续更新中)
Egg.js 是一个基于 Node.js 的后端开发框架,旨在帮助开发者更高效地构建企业级应用。所以,当文档提到 "ne-senv" 只在 Egg.js 后端工程中有效时,意思是在使用 Egg.js 框架构建的后端应用中,可以通过该方式注入环境变量。是一个强大且灵活的工具,可用于创建具有交互性和易用性的命令行界面,适用于构建各种类型的命令行工具和实用程序。command 是run 后面的命令,例如 dev、build、lint。文件中,可以添加特定的键来配置环境变量,这些配置会在运行。
2023-12-30 15:00:00
486
原创 推荐的 Web 性能计时:多长时间才算太长?
虽然慢于 100 毫秒的反应可能会在用户交互和响应之间造成脱节,但响应的 100 到 200 毫秒过渡可以帮助用户注意到他们的交互启动的响应,例如菜单打开。虽然慢于 100 毫秒的反应可能会在用户交互和响应之间造成脱节,但响应的 100 到 200 毫秒过渡可以帮助用户注意到他们的交互启动的响应,例如菜单打开。在优化性能时,请务必设定雄心勃勃的首次加载目标,例如通过移动 3G 网络 5 秒,在办公室 T1 线路上 1.5 秒,并为后续页面加载设定更雄心勃勃的页面加载目标,利用服务工作人员和缓存。
2023-12-27 17:07:28
822
1
原创 性能基础知识(持续更新)
此外,转换还为您提供了原本可能不具备的功能。translate()不过,一般来说,您可以获得与使用 CSS 动画相同的好处:您可以使用正确的工具来完成工作,并将优化留给浏览器。理想的系统将始终保持 100% 的用户状态:系统中的所有应用程序将同时运行,并且所有应用程序将保留用户上次与应用程序交互时创建的状态(应用程序状态存储在计算机中)内存,这就是近似值接近的原因)。CSS 动画使您可以使用关键帧对效果进行非常精细的控制,您甚至可以观看动画过程中触发的事件,以便处理需要在动画过程中的设定点执行的其他任务。
2023-12-26 15:19:01
1416
原创 输入url后回车发生了什么(持续更新)
快速的网站提供更好的用户体验。用户希望并期待内容加载速度快、交互流畅的网络体验。Web 性能的两个主要问题是与延迟有关的问题和与大多数浏览器是单线程的事实有关的问题。延迟是对我们确保快速加载页面的能力的最大威胁。开发人员的目标是使网站加载尽可能快——或者至少看起来加载速度超快——以便用户尽快获得所请求的信息。网络延迟是通过空中传输字节到计算机所需的时间。Web性能是我们要做的就是让页面加载得尽可能快。在大多数情况下,浏览器被认为是单线程的。也就是说,他们从头到尾执行一项任务,然后再开始另一项任务。
2023-12-25 17:21:35
1155
原创 Three.js 详细解析(持续更新)
而正交投影摄像机,不具有透视效果,即物体的大小不受远近距离的影响。透视相机用来模拟人眼所看到的景象,物体的大小会受远近距离的影响,它是3D场景的渲染中使用得最普遍的投影模式。透视相机用来模拟人眼所看到的景象,物体的大小会受远近距离的影响,它是3D场景的渲染中使用得最普遍的投影模式。Three.js依赖一些要素,第一是scene,第二是render,第三是carmea。而正交投影摄像机,不具有透视效果,即物体的大小不受远近距离的影响。scene可以理解为我们将要渲染的环境、背景。
2023-12-24 15:00:00
836
原创 电脑组件整理(持续更新...)
内存的选择,其实内存的话主要是根据主板支持的代数来的,现在市场主流的主板大部分支持的是DDR4代内存,也有支持DDR3 的主板,但是DDR2 DDR 这两种内存基本上已经销声匿迹了,估计在很老很老的电脑上说不准可以找到,现在大部分人使用的是DDR3/DDR4,使用DDR3加上固态硬盘可以使得一些老古董电脑重新焕发青春,也就导致了使用三代内存的人依旧是不少人,至于四代内存咱们就不用多说了,有更高的频率,处理速度也更快,缓存空间更大。8核16线 7 nm -- 1500元;
2023-12-23 15:19:43
1375
原创 面试建议篇(持续更新....)
精通Web技术栈:HTML、CSS、JavaScript必备,并精通流行框架如Vue、React,熟练使用构建工具Webpack、Gulp等。9. Web API. 深入学习DOM、BOM以及JavaScript与HTML5的各种Web API与事件,可以让你的前端技能圆满全面。高超的代码技能:写出整洁、高效、可复用的代码。理解AST、Token、Parser、作用域链等基本编译原理,可以更深入理解JavaScript的工作机制。理解原型、构造函数、继承、封装等面向对象的概念和模式,掌握对象的创建与使用。
2023-12-22 22:23:05
762
原创 202312实战面试
1、 事件循环和变量提升。2、this指向。3、css实现九宫格,横间距15px,列间距10px4、请简述监听目标元素与其祖先或视口的交叉变化,主要用于实现懒加载等场景。监听元素的尺寸变化,当被监听元素的尺寸发生变化时,会触发回调函数。是 JS 中的一个接口,用于监听 DOM 树的变化。通过 MutationObserver,你可以注册回调函数,当监测的 DOM 节点或子树发生变化时,将会触发这些回调函数。
2023-12-21 16:59:20
985
原创 微信小程序开发从零到壹(持续更新)
A: 因为没有按照流程构建, 先是npm init, 再是npm i,下载好之后需要点击工具中的构建npm,这才是完整的流程。走的服务商代开发模式,服务商是翌擎,小程序属于翌擎,翌擎帮吉驾开发小程序,关联翌擎帮吉驾代开发的企业应用。将 access_token 返回给前端,需要开发者保存在后台,所有访问企业微信api的请求由后台发起。Q:T-upload组件在微信小程序和电脑中可以正常上传图片,但是企业微信中无法完成调用!上不再维护,但是仍旧可以使用,在组件中替换API成功解决问题。
2023-12-20 10:42:16
1598
原创 软件的 六边形战士 详解
与客户的沟通及交流:您需要与内部和外部的利益相关者进行良好的沟通和交流,例如客户、供应商和承包商。培训和团队建设:作为一名项目经理,您需要开发您的团队成员,使他们在未来的项目中更具生产力。决定产品定位与发展方向:根据市场与用户需求,制定产品的定位、特色与发展路线图,为产品的设计与开发指明方向。检查产品质量:通过黑盒与灰盒测试,检查产品的性能、安全性、稳定性等质量要素,发现产品存在的各类缺陷与问题。2. 搭建产品技术架构:选择产品所需的技术栈,搭建服务器端程序的运行环境,并实现核心的接口与框架结构。
2023-12-19 11:53:09
1339
原创 ESlint代码规范
如果团队对代码要求严格,也不想花费时间去每条的去看ESLint规则,可以使用大公司开源的ESLint规则,比如Airbnb、Facebook的规则,拿过来进行简单的修改即可。我团队目前在用的就是Airbnb的规则。在现实项目中,我们一般会使用Husky和ESLint来搭配使用,在团队成员用Git提交代码的时候,进行lint检查,防止错误的代码被提交到版本库。如果您的团队对代码要求宽松,不想花费时间去每条的去看ESLint规则,可以使用eslint:recommended,ESLint推荐的配置。
2023-12-17 13:00:00
601
原创 企业微信 H5 从零到壹
周五:解决方案: 因为主域名是一样的,所以请求路径需要加上/h5,用来区分后台还是当前项目的请求。第二步、在项目启动后代理到 可信任域名中, 拿 企业ID、应用ID 换取code。周一: 拿到code, 但是无法换取token,原因:新建的企业与应用。第一步、获取 企业ID、应用ID、配置可信域名、设置企业微信开发者。appid: 新建应用后可以看到,如图 ---> 应用ID。,本地联调完成,发到测试环境401,原因:不详;,但是无法获取code, 原因:企业ID。: 点击我的企业,---> 企业ID。
2023-12-16 13:00:00
989
原创 Git 命令一览
接下来,输入ssh-keygen -t rsa命令,表示我们指定 RSA 算法生成密钥,然后敲三次回车键,期间不需要输入密码,之后就就会生成两个文件,分别为>id_rsa和id_rsa.pub,即密钥id_rsa和公钥id_rsa.pub. 对于这两个文件,其都为隐藏文件。很多git服务器都是用ssh认证方式,你需要把你生成的公钥发送给代码仓库管理员,让他给你添加到服务器上,你就可以通过ssh自由地拉取和提交代码了。需要你在本地把master合到你的发布分支,解决完冲突之后,再push到远端。
2023-12-15 13:56:22
1297
原创 HTML5结构规范
创建文档片段后,可以将多个节点先添加到文档片段中,然后一次性将文档片段添加到实际的 DOM 结构中,这样可以减少 DOM 操作次数,提高性能。文档片段是一种特殊的节点类型,它类似于一个轻量级的虚拟文档,可以用来临时存储一系列节点,而不需要将它们直接添加到 DOM 树中。两者的区别在于更加通用和广泛,而更加具体和特定,用于表示具有独立意义的内容块。进行动画时,回调函数应该尽量简洁,避免执行过多的计算和 DOM 操作,以保证动画的流畅性和高性能。
2023-12-14 18:52:00
1566
原创 JS基础之BOM | DOM(持续更新...)
在DOM的世界中,我们掌握了这些操作,就仿佛拥有了一把打开文档奇妙世界的钥匙。DOM的力量在于它的灵活性和丰富性,为我们提供了构建更加交互和动态的网页的无限可能。因此,在前端的道路上,深刻理解和熟练运用DOM,将为我们打开更广阔的发展空间。
2023-12-13 13:00:00
441
原创 2023 前端实战面试题
因为它只能序列化对象的可枚举自有属性,而忽略掉上述一些特殊情况,导致深拷贝的结果并非完全符合预期。的局限性,我们可以借助递归实现一个更为健壮的深拷贝函数。递归深拷贝函数能够处理循环引用,并复制对象的所有属性,包括原型链上的属性。在网页布局中,怪异盒模型(Quirks Mode)和标准盒模型(Standard Mode)的区别主要表现在盒子模型的解析上。在前端开发中,数据的深拷贝是一个不可忽视的问题。可能导致布局的错乱、元素的位置发生变化,甚至影响相邻元素的尺寸和位置。的缺陷,以及通过递归实现的深拷贝函数。
2023-12-12 16:49:44
733
原创 面试题之前端技能
clone拷贝 repo,add暂存文件,commit提交,push推送到远程,pull拉取远程更新,status查看状态,log查看提交日志,branch管理分支,merge合并分支,checkout切换分支。这是前端框架实现高效Dom Diff算法和组件化设计的基础,是React、Vue等优秀框架背后的重要思想。小程序项目中,WebView不支持文件上传,通过chooseImage选择文件,获取临时文件路径,调用webview.send()将路径传到WebView,在WebView中读取文件并上传。
2023-12-12 13:00:00
578
原创 面试准备篇(持续更新)
这样可以将数据加载分散到多个请求中,减少单次加载的数据量,提高页面的渲染性能和响应速度。载入前(完成了data和el数据初始化),但是页面中的内容还是vue中的占位符,data中的message信息没有被挂在到Dom节点中,在这里可以在渲染前最后一次更改数据的机会,不会触发其他的钩子函数,一般可以在这里做初始数据的获取。我们可以知道,实现私有属性,只要是外部无法知道这个属性名,只有内部知道的属性名,就可以做到外部无法访问的特性,基于ES6的新语法symbol和weakMap,我们可以去实现这个能力。
2023-12-11 18:03:17
996
原创 阿里云ACA笔记之Devops与实操
持续部署是持续集成的延伸,将集成后的代码部署到生产环境频繁部署确保可以小批次发布,在发生问题时可以轻松排除故障。a) 需求管理:创建需求,进行需求评论,需求评审,需求细化,需求变更等。• 每个微服务都可以独立进行服务升级、更新,不用依赖于其它服务,结合持续。容器提供了一种逻辑打包机制,以这种机制打包的应用可以脱离其实际运行的环境。• 研发人员可以选用自己最为熟悉的语言和框架来完成他们的微服务项目。分布式系统的复杂性、微服务的运维开销更大、对团队的要求更高。
2023-12-10 13:00:00
440
原创 阿里云ACA笔记之质量与测试管理(持续更新...)
软件测试是使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。(无需运行被测代码而进行的活动,检查软件是否符合代码标准、检查运行结果和预期结果的差异性,并检查其稳定性)•冒烟测试/回归测试(在正式测试前,对软件的基础测试、修改了代码之后, 确认没有新的错误)【OOP规约-1】所有的相同类型的包装类对象之间值的比较,全部使用equals方法比较,单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明。
2023-12-09 18:00:00
938
原创 阿里云ACA笔记之项目与需求管理(持续更新...)
确保项目团队成员和利益相关方之间的良好沟通,及时共享风险信息和控制措施的进展,鼓励反馈和建议,以提高风险控制的效果。风险分析是动态的过程,项目进展和环境变化可能导致风险发生性和影响程度的变化。使用风险矩阵或其他评估工具,将风险按照可能性和影响程度进行排序,然后专注于高风险项,以确保针对性的分析和应对。制定并实施风险监控计划,设定关键指标和风险触发器,定期收集、分析和报告风险信息,及时发现和应对风险。邀请项目团队成员、利益相关方和专业人士共同参与风险识别,充分利用不同的视角和经验,以发现更全面的风险。
2023-12-09 13:00:00
1262
原创 前端技能之JS 数据操作(持续更新...)
Array.of() 和 Array 构造函数之间的区别在于处理整数参数:Array.of(7) 创建一个具有单个元素 7 的数组,而 Array(7) 创建一个长度为7的空数组(注意:这是指一个有7个空位(empty)的数组,而不是由7个 undefined 组成的数组)。使用 new 命令调用函数时,返回的是对象,而不是 return 的返回值。reduceRight() 方法的功能和 reduce() 功能是一样的,不同的是 reduceRight() 从数组的末尾向前将数组中的数组项做累加。
2023-12-08 16:51:41
884
原创 2020面试准备
侧重于前端开发的 整个过程 的控制管理(像是流水线),我们可以通过给gulp配置不通的task(通过Gulp中的gulp.task()方法配置,比如启动server、sass/less预编译、文件的合并压缩等等)来让gulp实现不同的功能,从而构建整个前端开发流程。5、当试图得到一个对象的属性时,如果这个对象本身不存在这个属性,那么就会去它的’_ _ proto_ _'属性(也就是它的构造函数的’prototype’属性)中去寻找。原型可以用来构造函数的属性和方法,使这个构造函数的属性和方法成为公用的。
2023-12-08 10:00:00
881
原创 2021实战面试
综上所述,我的理解是 Vue Router 是 Vue.js 的官方路由管理器,通过配置路由映射、支持嵌套路由、提供路由传参和导航守卫等功能,实现了前端单页面应用中页面切换和导航的功能。这些特有属性进行排列组合就会有三种,如果在可选项中再添加其他的,排列组合的方式就会更多,所以我们就可以记录每组可选项的下表进行标记,这样可以做到当用户点击哪一个可选项,我们就可以快速定位到SKU。加密和解密用的密钥是不同的,这种加密方式是用数学上的难解问题构造的,通常加密解密的速度比较慢,适合偶尔发送数据的场合。
2023-12-08 09:37:08
949
原创 2023实战笔试题
WebSocket.readyState:表示连接状态,有四种值:0(CONNECTING)正在建立连接,1(OPEN)连接已建立,2(CLOSING)连接正在关闭,3(CLOSED)连接已关闭。基本类型有:Number(数字)、String(字符串)、Boolean(布尔值)、Null(空值)、Undefined(未定义)、Symbol(符号)。它们的this继承自外围作用域。引用类型有:Object(对象)、Array(数组)、Function(函数)、Date(日期)、RegExp(正则表达式)等。
2023-12-07 18:30:00
395
原创 devops相关面试题
1、发布10+ NPM包,熟悉NRM、NVM。谈谈你参与发布的NPM包,它们解决了什么问题,有什么特点?NPM: 是 Node.js 默认的包管理工具NRM:是 Node.js 源管理工具NVM:Node.js 版本管理工具我参与发布的NPM包为mk-form,它通过配置生成和验证复杂表单,简化前端表单开发流程;二次开发copy-webpack-plugin,解决了运行后报错的问题,让项目成功在生产环境中完成构建。
2023-12-07 10:20:00
894
原创 devops之 配置域名(持续更新中...)
更改ssl_certificate_key 与 ssl_certificate绝对路径;在第一步中证书创建成功后获得以下信息,阿里云 会自动添加解析记录。若自动添加解析失败, 需手动添加,在云解析DNS 中添加即可!有一个二级域名的前提下, 设置一个三级域名给所在的服务使用;nginx -s reload --> 重启nginx。登录阿里云ECS终端。
2023-12-07 10:01:52
433
原创 Jenkins 与 CI/CD
Include @Library changes in job recent changes:如果选中该选项,库中的任何更改都将包含在构建的更改集中,而更改库将导致为包含此库的管道运行新的构建。认识到机器驱动的CI流程和人工驱动的CD流程之间的不同要求,对于以快速,可靠和可重复的方式向客户交付功能至关重要,这就是为什么使用专用工具进行持续集成和持续部署,提高效率。等式的左边是开发人员编写的代码,代码的任何依赖关系,构建工具以及执行构建和测试的环境。CI是机器驱动的,对于许多团队而言,CD是人为驱动的。
2023-12-06 18:25:45
921
原创 腾讯云容器CLB等相关知识点
TKE - 容器集群服务,运行容器和工作负载。TCR- 容器镜像服务,为工作负载提供所需镜像。CLB - 云负载均衡,为应用提供高可用能力。1、TKE:腾讯云容器服务。基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务使用腾讯云容器服务 TKE,会涉及到以下基本概念:集群:是指容器运行所需云资源的集合,包含了若干台云服务器、负载均衡器等云资源。实例(Pod):由相关的一个或多个容器构成一个实例,这些容器共享相同的存储和网络空间。工作负载。
2023-12-06 09:54:03
1197
原创 项目实践之最终面试篇
1、有网页性能优化与构建优化经验。什么是关键渲染路径,如何优化?关键渲染路径是浏览器从接收HTML到页面渲染完毕的过程。可以通过压缩资源、添加expires header、使用CDN加速资源加载、CSS放head、JS放body底部、减少DOM操作等方式进行优化常见的前端性能优化手段有哪些?举例说明其原理和实践场景。常见前端性能优化手段有优化浏览器的解析渲染过程避免重绘重排、使用 CSS 动画代替 JS 动画等图片压缩减小体积,优化加载速度。CDN加速。
2023-12-05 15:30:00
987
原创 项目实践之浏览器安全(持续更新...)
不过在我们的日常工作中,我们所使用的 DDoS 攻击普遍是带宽消耗型攻击,也就是说,黑客会针对你的服务器发送海量 UDP 包、SYN 包,让你的服务器的带宽被攻击流量占满,无法对外提供服务。DDoS攻击手段迁在传统的DoS攻击基础之上产生的一类攻击方式,传统的DoS攻击一般是采用一对一的方式,当攻击目标的CPU速度、内存或者网络带宽等各项性能指标不高的情况下,它的效果是明显的。服务器通过校验请求是否携带正确的Token,来把正常的请求和攻击的请求区分开,也可以防范CSRF的攻击。
2023-12-05 10:51:24
1167
原创 项目实践之响应式与兼容
(:before, :after, :first-line, :first-letter 等)动态单位, 是一个相对于网页视口的单位,1vh = clientWidth/100。然后在最外层的盒子触发,:style="styleVar",最后在css中使用;rem:动态的单位, 会随着根元素字体大小的变化而变化(相对单位)动态的单位, 会随着参考元素字体大小的变化而变化(相对单位)不会随着视口大小的变化而变化, 像素是一个固定的单位;动态单位, 永远都是以当前元素的父元素作为参考进行计算。
2023-12-05 10:41:39
316
原创 前端进阶之网络知识(008)持续更新...
特点:JWT是一种无状态、轻量级的认证机制,用户的身份信息以令牌的形式发送给服务端,并在服务端进行验证和解析。通过postMessage和onmessage,Worker线程和主线程可以异步的发送数据给对方,这实现了线程间的松散通信。数据绑定(Data Binding):MVVM 提供了强大的数据绑定机制,将视图和视图模型的状态自动同步,简化了视图更新和数据处理的代码。定义:OAuth是一种授权框架,用于授权第三方应用访问用户在另一个服务提供者上的受保护资源,而无需提供用户的用户名和密码。
2023-12-04 18:37:06
835
Vue.js 设计与实现
2023-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人