收集一些好看的网站、APP、小程序

搞开发的时候一直觉得UI挺难的,有时候自己想不出该搞成什么样,就习惯找一些现成的产品参考一下。 按照行业类型划分,已收集:官网、后台、工具.... 六台阶(CRM):https://www.mysubmail.com/onepass 销售易(CRM):https://www.xiaoshouyi.com/ 众安保险:https://www.zhongan.com/ Vue-Nicen-Admin:
收集一些好看的网站、APP、小程序

一款可以DIY衣服、手机壳、抱枕等任意二维图像的Web程序

之前写过一个DIY手机壳的小程序:https://nicen.cn/5618.html 上线了一段时间之后,发现有类似需求的人还不少,所以想着在空闲的时候做了一个升级版 相较于小程序版本,这一版功能更多、更完善,选择web端也是考虑到它对各种业务场景的兼容更强,开发也更方便。 以下是几个配置好的支持DIY的物品: T恤:https://douyin.nicen.cn/m.html?project=
一款可以DIY衣服、手机壳、抱枕等任意二维图像的Web程序

【转】流量控制算法——什么是漏桶算法和令牌桶算法?

令牌桶,顾名思义,是一种通过让请求被处理前先行获取令牌,只有获取到令牌的请求才能被放行处理的一种限流方式。令牌桶的实现包含两个方面: 一方面是按固定的速率来产生令牌并存入桶中,如果令牌数量超过桶的最大容量则直接丢弃掉。 一方面当有请求时先从桶中获取令牌,获取到令牌后才能通过进行处理,否则被直接丢弃或等待获取令牌。 令牌桶与漏桶的区别在于漏桶控制的是请求被处理的速率。即当有请求的时候,先进入桶中进行
【转】流量控制算法——什么是漏桶算法和令牌桶算法?

Cloudflare Workers学习笔记,Cloudflare Workers 是什么?

开发文档:https://developers.cloudflare.com/workers/ Cloudflare Workers提供了一个serverless执行环境,无需配置或维护基础架构即可创建全新的应用程序或扩充现有的应用程序。 Wrangler是一个用于Cloudflare Workers功能开发、测试、部署的CLI工具 相关文档:https://developers.cloudfla
Cloudflare Workers学习笔记,Cloudflare Workers 是什么?

消息中间件的使用场景,流行的消息中间件有哪些?

对于一个电商APP而言,每卖掉了一个商品,就要扣减掉商品的库存,而且一旦用户成功支付了,还需要将订单的状态更新成待发货。 在完成这些最核心的功能后,其实是有很多事情要做的,如果这些动作都以同步方式来完成,根据线上系统的一般统计,多个子步骤全部执行完毕,加起来大概需要1秒~2秒的时间。 有时候在高峰期并发量特别大,服务器的磁盘、IO、CPU的负载会很高,执行SQL语句的性能也会有所下降。因此有的时候
消息中间件的使用场景,流行的消息中间件有哪些?

前后端分离状态下,如何搭建微信公众号网页的本地开发环境?

进行微信公众号网页开发的时候,微信平台一般有如下几个要求: 必须是https协议 通过验证的可信域名 开发过程中一般有如下几个需求: 本地开发,正常调用微信API,实时调试。 和正常浏览器一样的开发体验。 构建工具都自带了web服务器,但是对于配置https以及自定义域名不是很友好。所以一般通过反向代理来实现自定义域名以及https: 假设开发服务器地址为:http://192.168.2.3:8
前后端分离状态下,如何搭建微信公众号网页的本地开发环境?

组织架构设计、角色与权限设计的一些思考

查询某个组织下面的所有用户(包括所有下级组织) 查询某个组织下面的所有下级组织 查询用户所在的组织 获取整个组织结构,方便生成树形数据结构 相关的必要字段如下: id,主键ID pid,父级组织id tree,当前节点的所有父级组织,假设当前组织的父级id为2,2的父级id为1,则tree的值为:1,2 相关的必要字段如下: department,所在的组织id。 SELECT * FROM `d
组织架构设计、角色与权限设计的一些思考

微信公众号Web开发笔记,如何开发自己的公众号应用?

官方文档:https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html 为了识别用户,每个用户针对每个公众号会产生一个安全的OpenID,如果需要在多公众号、移动应用之间做用户共通,则需前往微信开放平台,将这些公众号和应用绑定到一个开放平台账号下,绑定后,一个用户虽然对多个公众号和应用有多个不同的Ope
微信公众号Web开发笔记,如何开发自己的公众号应用?

记录使用腾讯云CDN后产生的几个问题。

腾讯云 CDN 节点默认连接超时5s,接收超时10s。 简单的说明一下就是请求时间超过10s,不管有没有响应,这个连接都会被重置(中断响应)。 根据实际业务中遇到过的的问题,总结如下: 假设我有一个必须同步等待响应结果的请求,它的处理时间超过了10s,它在超过10s后会被cdn直接重置,客户端会提示请求失败,连接已被重置。 所以超过10s的请求,不能使用cdn。翻了一下文档,也没看到可以调整这个时
记录使用腾讯云CDN后产生的几个问题。

记录一次访问量瞬间增加,导致请求卡住的问题排查过程

2022.11.07号下班路上突然收到许多用户反馈,说小程序进不去了。然后自己试了一下,打开一直转圈,于是快马加鞭赶回家,打开了电脑。 文件收集小程序:帮助用户更加方便的收集各种类型的文件,同时上传之后的文件可以在线预览。 服务器为腾讯云2核4G6M的轻量云,同时还运行着其它的一些服务。 主要消耗的是上行带宽,下行主要消耗来自于文件在线预览,这部分通过内网反代理,由另外一台低配服务器负责。 打开电
记录一次访问量瞬间增加,导致请求卡住的问题排查过程

记录一些在此之前不知道的Web API

首先回顾一下以前了解过的Web API(强确实强,但很少用到...) Intersection Observer API 提供了一种异步检测目标元素与祖先元素或 viewport 相交情况变化的方法。 相关文档:https://developer.mozilla.org/zh-CN/docs/Web/API/Intersection_Observer_API  全屏 API 为使用用户的整个屏幕展
记录一些在此之前不知道的Web API

记录一次服务器被CC攻击后的处理过程

2022年10月19日,晚上10点半,突然收到许多用户的反馈说小程序打不开了,打开一看果然,小程序一直处于转圈圈状态。 看了一下时间,10点32分,内心一句MMP:本来打算早睡,一看这架势,熬夜跑不了。 除了小程序之外,服务器上面还跑了很多其他的服务,虽然用户量不大,但是找起来也是要命。 首先告知发出反馈的用户 事件的原因,以及一个保证,并表示问题不大。 因为自己并没有收到腾讯云的安全监控提醒,所
记录一次服务器被CC攻击后的处理过程

Typescript学习笔记,从入门到精通,持续记录

//安装 npm install -g typescript //编译 tsc hello.ts //初始化 tsc --init Typescript可以理解为带静态类型的Javascript; 布尔值,boolean 数值,number 字符串,string 空值,void 表示没有任何返回值的函数 Null 和 Undefined /* 先声明后使用 */ let a: string; a
Typescript学习笔记,从入门到精通,持续记录

Openresty、Lua学习笔记,从入门到精通,持续记录

OpenResty(也称为 ngx_openresty)是一个全功能的 Web 应用服务器。它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。 通过揉和众多设计良好的 Nginx 模块,OpenResty 有效地把 Nginx 服务器转变为一个强大的 Web 应用服务器,基于它开发人员可以使用 Lua 编程语言对 Nginx 核心以及现有的各种 Nginx C 模块
Openresty、Lua学习笔记,从入门到精通,持续记录

Vue渲染函数该如何使用?有哪些需要注意的地方?

Vue的模板语法适用于绝大部分的需求场景(模板最终会被编译为渲染函数),在绝大多数情况下,Vue 推荐使用模板语法来创建应用。然而在某些使用场景下,我们真的需要用到 JavaScript 完全的编程能力,举例如下: 假设设计一个开源的后台管理系统,侧边栏菜单需要根据路由自动生成菜单,由于系统可能会被用于不同的功能需求。所以路由的层级、数量都是不确定的。 如果通过模板语法来写,假设路由最多只有三层,
Vue渲染函数该如何使用?有哪些需要注意的地方?

PHP+Swoole实现web版的SSH客户端

本来是想通过PHP的proc_open和进程进行交互,可是中间的坑太多了,不得不转换一下思路,然后想起来宝塔有网页版SSH客户端,然后研究了一下,嘿嘿,发现能成😁😁😁。 使用了有名的xterm.js,基本可作为生产使用了。(权限记得做好) 测试Demo :http://cname.teiao.com:5701 Github:https://github.com/friend-nicen/php-w
PHP+Swoole实现web版的SSH客户端

Git冲突分为哪几种情况?常用解决办法

原文:https://www.it610.com/article/1304846442027847680.htm 当远端有更新,本地库没有有变化,拉取操作远端会覆盖本地库(远端版本高于本地) 当远端修改,本地库也有修改,拉取操作会产生冲突文件(远端版本和本地版本冲突) 当本地库修改,而远端没有变化,拉取不会产生变化(本地版本高于远端版本) 当本地库版本低于远端版本,则无法推送,必须先拉取在操作,否
Git冲突分为哪几种情况?常用解决办法

防XSS的利器,什么是内容安全策略(CSP)?

内容安全策略(CSP),是一种安全策略,其原理是当浏览器请求某一个网站时,告诉该浏览器申明文件可以执行,什么不可以执行。CSP是专门解决XSS攻击而生的神器。 CSP的引入会使得我们的引入扩展程序更加安全,并且可以由开发者指定可以加载扩展程序的类型,避免恶意的脚本在浏览器中执行,造成信息泄露问题。 CSP是防XSS的利器,可以把其理解为白名单,开发者通过设置CSP的内容,来规定浏览器可以加载的资源
防XSS的利器,什么是内容安全策略(CSP)?

记录Docker使用过程中遇到的难点和问题

Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了 Docker,就不用担心环境问题。 被打包的程序可以是一个操作系统,也可以是Nginx应用,也可以是PHP等任意一种“程序”,打包之后的镜像可以在任意一台安装了Docker的主机上,完美的运行。 多个容器可以和不使用容器的应用一样,相互进行
记录Docker使用过程中遇到的难点和问题

Ant Design Vue自定义主题失效解决办法

antd 的样式使用了 Less 作为开发语言,并定义了一系列全局/组件的样式变量,可以根据需求进行相应调整 。 @primary-color: #1890ff; // 全局主色 @link-color: #1890ff; // 链接色 @success-color: #52c41a; // 成功色 @warning-color: #faad14; // 警告色 @error-color: #f5
Ant Design Vue自定义主题失效解决办法

Vue组件设计学习笔记,持续记录

组件化思想并不是前端独有的,但却是前端技术的延伸 任何软件开发过程,或多或少都有那么一些组件化的需求。 每个组件对应一个目录,组件所需的各种资源都在这个目录下就近维护;(最具软件工程价值) 页面上的每个独立的可视/可交互区域视为一个组件; 由于组件具有独立性,可以自由组合; 页面是组件的容器,负责组合组件形成功能完整的界面; 当不需要某个组件,或者想要替换组件时,可以整个目录删除/替换 分子是由原
Vue组件设计学习笔记,持续记录

使用PHPStorm自带的Git版本控制,出现Git.exe占用内存过高

今天发现使用PHPstorm自带的Git操作,Git会占用很高的内存,而禁用之后,使用终端操作,Git基本不占内存... 这应该是一直存在的问题,以前没有发现,虽然启用了自带的Git版本控制功能,但实际上一直用的命令行... 进入PHPStorm,一切正常;此时Git版本控制已启用,点击上方菜单,VSC-更新项目 然后就变成了,这样: 然后把PHPstorm自带的Git插件禁用了,再打开PHPst
使用PHPStorm自带的Git版本控制,出现Git.exe占用内存过高

PHP编译参数configure配置详解,以及php.ini说明

人,有了物质才能生存;人,有了理想才谈得上生活。 因为现在都是宝塔、lnmp这些自动进行配置的,这个知识点平常很少需要用到,但了解一下,确实能让一些问题豁然开朗。 ./configure -h 在源代码目录中,该命令可以查看所有编译参数以及对应的英文解释 --prefix=/opt/php //指定 php 安装目录 --with-apxs2=/usr/local/apache/bin/apxs
PHP编译参数configure配置详解,以及php.ini说明

SVG学习笔记,持续记录。

SVG是一种用XML定义的语言,用来描述二维矢量及矢量/栅格图形。SVG提供了3种类型的图形对象:矢量图形(vectorgraphicshape,例如:由直线和曲线组成的路径)、图像()、文本(text)。图形对象还可进行分组、添加样式、变换、组合等操作,特征集包括嵌套变换()、剪切路径()、alpha蒙板()、滤镜效果()、模板对象()和其它扩展()。 SVG 是使用 XML 来描述二维图形和绘
SVG学习笔记,持续记录。

JS定时器清除之后,已经开始但是没有运行完的函数还会继续运行吗?

最近使用定时器的时候遇到这样一种情况,定时器清除了,功能仍然在跑(遍历数组,同步定时网络请求)。 排查了一下代码,发现逻辑确实没问题。后来一想,是不是函数没运行完,仍然在跑,于是上代码测试了一下: let timer = setInterval(async () => { console.log("开始") await new Promise((resolve) => { setTim
JS定时器清除之后,已经开始但是没有运行完的函数还会继续运行吗?

WebRTC开发经验总结,持续记录

volume 音量约束 sampleRate: 采样率 sampleSize: 采样大小,采样的位数 echoCancellation: 回音消除 autoGaincontrol: 增加音量 noiseSuppression: 降噪 latency : 延迟大小 channelCount: 切换声道 deviceID: 多个音频输入输出设备的进行切换 groupId: 同一个物理设备,是一个分组,
WebRTC开发经验总结,持续记录