Ubuntu 从入门到精通,Ubuntu 快速上手

Ubuntu 是免费、开源、基于 Linux 内核的电脑操作系统 。 Ubuntu 来自非洲语言,意思是:我因我们而存在,理念是免费、共享、人人可用。 LTS 版本(重点):后缀带 LTS(长期支持版)每 2 年出一个,5 年官方安全更新普通人、服务器、开发只装 LTS 普通版本:半年一更,只支持 9 个月,适合尝鲜,不推荐新手用。 不同版本分支 Ubuntu Desktop:桌面版,带图形界面,
Ubuntu 从入门到精通,Ubuntu 快速上手

Gin从入门到精通,Gin快速上手

记录 Gin 使用过程中的要点与易踩坑点。 Gin 官方文档:https://gin-gonic.com/zh-cn/docs/ 知识点目录(按常见使用频率排列)。 HTTP 基础:请求方法、状态码、Header、JSON、Cookie、跨域 CORS。 Gin 基础:Engine、Route、Handler、Context 的作用与生命周期。 路由设计:REST 风格、路由分组、版本化(/api
Gin从入门到精通,Gin快速上手

Nginx进阶使用手册,Nginx知识体系构建与实战要点

Nginx 是现代互联网架构中不可或缺的“网关层”与“定海神针”。它不仅仅是一个 Web 服务器,更是一个高性能的 HTTP/TCP 反向代理、负载均衡器、安全防护盾。 本指南深入剖析 Nginx 的五大核心能力及高阶扩展,帮助你从配置参数的迷宫中脱身,掌握解决实际业务痛点的架构思维。同时,针对每个模块,我们特别补充了性能消耗评估与收益损耗对比,助你在真实业务场景中做出最合理的架构选型。 当网站暴
Nginx进阶使用手册,Nginx知识体系构建与实战要点

PHP Swoole的内存分配逻辑,Swoole 与 ZendMM 协同机制

Swoole 的 Worker 进程是“常驻进程”,既跑 PHP 用户代码,也跑大量 C/C++ 网络与协程逻辑。因此你在排查内存时,必须先建立一个基本认知:Worker 里同时存在 PHP/Zend 的内存体系(ZendMM)和 Swoole/C 层的内存体系(系统分配器/内存池/共享内存)。很多“PHP 内存正常但 RSS 仍增长”的问题,本质就是这两套体系的统计口径不同。 在 Swoole
PHP Swoole的内存分配逻辑,Swoole 与 ZendMM 协同机制

PHP内存管理器(ZendMM)的内存分配逻辑

Zend VM(执行器)运行时需要频繁创建/销毁大量对象(zval、zend_string、HashTable、call frame 等)。如果每一次申请/释放都直接调用系统 malloc/free,性能和碎片都会很难控制。所以 PHP 在引擎层引入了 ZendMM:把“高频小对象”的申请/释放先收拢到一个更适合 PHP 场景的内存管理器里。 Zend VM(执行器)里大量对象一般不会直接 mal
PHP内存管理器(ZendMM)的内存分配逻辑

盘点这些年业余做的那些赚到钱的活儿!

上班好多年了,平常下班了也闲不住,断断续续也研究了好多东西。😁,真要论起来的话,自娱自乐的是大多数,真正挣到钱的是极少数 这是疫情那会做的一个小程序,当时的主要用途之一就是用来收集健康码。 时势造英雄,疫情期间用户速度增长的很快,加上自己一直在发软文推广,在有了一定的用户规模之后用户增长速度、流量主收益都慢慢趋于稳定,流量主月均1000/元,刨去各种成本相当于每天多一顿饭钱,😂。 小程序演示:ht
盘点这些年业余做的那些赚到钱的活儿!

基于UniappX开发电销APP,实现CRM后台控制APP自动拨号

在上一篇文章中(https://nicen.cn/8524.html),已经实现了电销APP的基础功能:通时通次记录、通话录音上传。 已经能在工作中进行应用了,但是离成熟的电销APP还是差了不少,还得继续开发。 电销APP大都还有一个与之对应的CRM系统,所以另一个常见的需求,就是通过CRM后台直接控制APP拨号。 相关代码和电销APP已经开源:https://github.com/friend-
基于UniappX开发电销APP,实现CRM后台控制APP自动拨号

温故而知新,PHP Swoole使用过程中的一些思考

今天突然发现很多以前理解过的概念,再次回顾的时候感觉有点模糊了,翻了翻笔记又有了一些新的理解。 简单的异步任务执行可以直接通过管道向子进程投递异步任务,然后触发事件执行任务。 Redis的订阅与发布也可以实现上述的功能,但它的优势在于它可以一对多,PUBLISH之后可以同时触发多个订阅的事件,并且可以在任意进程内进行订阅。 专门的消息队列组件,则适用于对消息队列要求比较高的场景(消息确认、消费者组
温故而知新,PHP Swoole使用过程中的一些思考

Golang协程和Python协程用法上的那些“不一样”

习惯了Go语言协程的用法,再来学习Python协程的时候,总感觉用起来哪里不太对,越用越不对劲。于是乎,就想研究一下它们到底有哪些区别! 在 Python 和 Go 中,协程的行为确实有一些关键的区别,主要体现在调度机制和代码的执行方式上。 Python 的协程是非阻塞的,但需要显式调度,而 Go 的协程由运行时自动调度,不需要显式等待。 Go 的协程(goroutine)是轻量级的线程,由 Go
Golang协程和Python协程用法上的那些“不一样”

RealLog 实时日志查看器,实时监控并获取服务端指定日志文件的最新内容

RealLog 是一个基于 WebSocket 和 HTTP 的实时日志查看系统,允许用户通过浏览器实时监控服务器上的日志文件变化。系统提供了美观的终端风格界面,支持移动设备自适应,并具有日志暂停、清空、重启等功能。 演示地址:https://realog.nicen.cn,实时查看服务器上日志文件的变化 Git仓库:https://github.com/friend-nicen/realog 实
RealLog 实时日志查看器,实时监控并获取服务端指定日志文件的最新内容

uniapp开发外呼APP,实现通话录音上传、通时通次

记得拿到这个需求的时候,还是两年前。当时ai还没有现在这么强大,很多资料查起来都不全,而且稀奇古怪。 后面基本都是自己翻安卓文档,一点一点的实现的,😂。 APP完整代码已开源,提供mock接口,可直接打包运行。 Github:https://github.com/friend-nicen/unicall 安卓很早以前没办法通过系统应用之外的应用来实现通话录音了,现有的通话录音实现方案,基本都是强制
uniapp开发外呼APP,实现通话录音上传、通时通次

Pywinauto使用方法,Pywinauto自动化入门指南

Pywinauto 是一个用于自动化 Windows GUI 应用程序的库。它可以帮助你模拟鼠标点击、键盘输入等操作,从而实现对 Windows 应用程序的自动化测试或自动化操作。 Github:https://github.com/pywinauto/pywinauto from pywinauto.application import Application 导入 Application 类,
Pywinauto使用方法,Pywinauto自动化入门指南

WePush 一款基于模拟点击实现的微信消息推送机器人,安全稳定不封号

微信每天都要用,所以很多系统监控的消息就直接推送到微信了,这样有什么问题也能很方便的及时收到提醒。 但是呢,微信机器人现在封号太厉害了,用过wechaty,再到hook微信客户端,现在都是一挂就封,无奈了,只好走正规军的路子。 Github:https://github.com/friend-nicen/wepush WePush 是一个基于 weauto 开发的微信消息推送系统,采用模拟人工点击
WePush  一款基于模拟点击实现的微信消息推送机器人,安全稳定不封号

基于 ant-design-vue 和 Vue 3 封装的功能强大的表格组件

基于 ant-design-vue 和 Vue 3 的功能强大的表格组件,支持列自定义、排序、本地化存储、行选择等特性。 当前组件继承了Ant-Design-Vue Table组件的所有列属性和方法,并在此基础上进行扩展。 演示地址:https://table.nicen.cn Github:https://github.com/friend-nicen/table 🚀 基于 ant-design
基于 ant-design-vue 和 Vue 3 封装的功能强大的表格组件

Electron 使用方法,从入门到精通

官方文档:https://www.electronjs.org/zh/docs 在 Electron 中,主进程和渲染进程之间可以通过 IPC(Inter-Process Communication,进程间通信) 来传递数据。Electron 提供了 ipcMain 和 ipcRenderer 模块来实现这种通信。 主进程通过 webContents.send 方法向渲染进程发送消息: const
Electron 使用方法,从入门到精通

PyQt5 使用方法,从入门到精通

PyQt5 是一个用于创建桌面图形用户界面(GUI)应用程序的 Python 包装库,它基于 Qt 框架。 Qt 框架:Qt 是一个跨平台的 C++ 开发框架,最初由 Trolltech 公司开发(现归 The Qt Company 所有)。它提供了丰富的功能用于开发桌面、嵌入式和移动应用。 PyQt:PyQt 是一个 Python 绑定库,它将 Qt 的功能暴露给 Python 开发者,使得 P
PyQt5 使用方法,从入门到精通

Centos安装 ffmpeg,并添加 libx264库

ffmpeg执行时如添加参数-vcodec libx264,会出现错误:Unknown encoder \"libx264\"的错误,缺少libx264库,需要安装该库 NASM(Netwide Assembler)是一个开源的汇编器,专门用于x86架构的汇编语言编程。 它支持多种目标文件格式,包括ELF、COFF、OMF、a.out、Mach-O等,适用于16位、32位和64位代码的编译。NASM使
Centos安装 ffmpeg,并添加 libx264库

PHP源代码如何打包成一个单独的文件?

开发Node项目的时候,很喜欢Node的一个点就是可以通过rollup这些打包软件,把所有项目代码打包到一个js里,这样部署起来简单又方便。 本着一个问题肯定不止我一个人遇到的定理,自己也研究了一下PHP项目打包,最终实现了一个相对可行的方案。 Phar 是一种 PHP 归档文件格式,类似于 Java 中的 JAR 文件,用于将多个文件打包到一个单一的文件中。 打包成phar后,如果需要访问 Ph
PHP源代码如何打包成一个单独的文件?

如何将WordPress文章中的外链图片自动下载到本地?

当我们想引用其他网站上的图片时候,直接使用外链不仅不能保证图片的稳定性,还有可能影响页面打开速度,然而如果一个个下载再上传又十分费力。 好在WordPress很多插件或者代码都可以实现自动将外链图片下载到本地,最终我选择了一个叫:nicen-localize-image 的插件(可以在WP插件市场搜索安装)。 选择这个插件的主要原因是它功能强大,而且用起来很简单,而且开源!插件支持如下的一些功能:
如何将WordPress文章中的外链图片自动下载到本地?

累积用户60多万的小程序可以赚多少钱?

疫情那会因为有收集健康码的需求,为了方便就自己做了一个用于文件收集的小程序 文件快收小工具。 到现在差不多有2年半多,现在的用户总数在65万多点。 小程序用户数看起来不少,实际上水分蛮多的(小程序功能性质如此)。收益的话,能够打平运营的成本,然后小挣一顿饭钱。 这个类目的小程序很多,而且功能也大差不差。所以广告没挂很多,算是留存用户的策略之一, 说实话能做到现在,跟个人能力关系不大,时势造英雄,时
累积用户60多万的小程序可以赚多少钱?

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

搞开发的时候一直觉得UI挺难的,有时候自己想不出该搞成什么样,就习惯找一些现成的产品参考一下。 按照行业类型划分,已收集:官网、后台、工具.... 六台阶(CRM):https://www.mysubmail.com/onepass 销售易(CRM):https://www.xiaoshouyi.com/ 众安保险:https://www.zhongan.com/ 滴答待办:https://did
收集一些好看的网站、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后产生的几个问题。