
经验
文章平均质量分 53
Sirius Wu
视觉中国签约摄影师,图虫创意签约摄影师,站酷海洛签约供图者,系统集成项目管理工程师,曾任IT技术主管,前腾讯音乐娱乐集团后端开发工程师,百度高级研发工程师
展开
-
基于大语言模型扬长避短架构服务
扬泛化之长,避时延之短。原创 2023-09-27 20:02:17 · 1147 阅读 · 0 评论 -
Golang运行环境问题
1 执行程序报错 2 切换环境配置失败 3 环境变量不存在 以上情况,需要逐项排查运行环境安装以及相关配置。原创 2023-05-23 10:31:43 · 1243 阅读 · 0 评论 -
如何让服务器端的Nginx支持http2.0协议
如果客户端请求使用HTTP/1.1协议,服务器可以在响应中指定HTTP/2.0协议,并自动升级协议。需要注意的是,如果Web服务器和客户端不支持HTTP/2.0协议,则仍将使用较旧的HTTP/1.1协议。如果想在Web服务器上启用HTTP/2.0协议,需要确保HTTP服务器软件已更新到支持HTTP/2.0的版本,并进行必要的配置。原创 2023-04-25 11:29:00 · 2969 阅读 · 1 评论 -
Navicat通过HTTP通道连接数据库
Background由于内网安全限制,或者网关限制,Navicat应用在本地无法常规地建立连接,访问远程数据库。Premise安装Navicat系列工具Mac OSLNMP架构服务器ProcessHTTP通道脚本目录:/Applications/Navicat Premium.app/Contents/Resources/ntunnel_mysql.php/Applications/Navicat Premium.app/Contents/Resources/ntunnel_pg原创 2021-11-03 19:49:06 · 1803 阅读 · 0 评论 -
Linux命令tcpdump的小贴士
Processnetstat 命令查看当前机器网络 sudo netstat -iKernel Interface tableIface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flgeth0 1500 0 47692728 0 0 6 2038254 0 0 0 BMRUeth0:0 1500原创 2021-03-12 17:04:25 · 407 阅读 · 0 评论 -
awk 工具基于 Nginx 的 access_log 统计 QPS
ProcessNginx 日志格式log_format main '$remote_addr $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '$http_user_agent $http_x_forwarded_for $request_time $upstream_response_time $upstream_a原创 2020-08-17 11:52:40 · 691 阅读 · 0 评论 -
Shell脚本监控CPU利用率平滑重启进程
Process#! /bin/bashcounter=0utilization=`top -n 2 | fgrep "Cpu(s)" | tail -n 1 | awk '{printf "%s", $2}'`echo $utilizationif [ `echo "$utilization > 90" | bc` -eq 1 ]; then ((counter++))fiecho $countersleep 30if [ $counter -eq 1 ]; t原创 2020-08-11 17:29:46 · 612 阅读 · 0 评论 -
Atlassian 配置邮件服务
ProcessConfluenceJIRAConclusion这里用腾讯企业邮的 SMTP 服务,不同的服务提供方在具体的配置参数可能不同,以上仅供参考,请君灵活处理。在配置邮件服务前,需要登陆常用的电子邮件,开启 SMTP 服务。(开启方法参考电子邮件提供方的文档)ReferencesAtlassian 全家桶之2020安装札记转载本文,请注明出处、作者...原创 2020-07-31 11:59:19 · 1283 阅读 · 0 评论 -
Linux 系统指定用户运行命令
Process在服务器部署过程中,有些脚本需要指定的用户运行,不然,以 root 用户运行,创建的文件不能被同项目的其他指定用户读写,更且,即便是可以授权,这也是及其不方便。su - www -c "/opt/php71/bin/php /data/www/sirius/artisan distribute:coupons" 查看当前用户whoamisu 命令使用说明su --help用法: su [选项] [-] [USER [参数]...]将有效用户 id 和组原创 2020-07-13 14:09:24 · 6173 阅读 · 0 评论 -
Atlassian 全家桶之2020安装札记
EnvironmentLinux VM_16_16_centos 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/LinuxProcess准备安装包见 Atlassian 全家桶及其破解文件百度云盘链接atlassian-confluence-6.7.1-x64.binatlassian-jira-software-7.6.1-x64.binmysql-connect原创 2020-06-15 23:54:06 · 1683 阅读 · 0 评论 -
代码日志管理
Environment 1. 前后端分离。 2. 后端日志。Process 1. 日志分类。 (1)requestLog 。 (1)respondLog 。 (1)eventLog 。 2. 记录数据流。 3. 合理断点。 4. 追踪数据,问题定位。Conclusion日志,就是为了更快更高效地定位问题,在无须事故重现的情况下,也可以有数据可依,解决问题。但是,不要滥用日志,否则造成 IO 消耗太大,得原创 2020-06-08 14:38:24 · 310 阅读 · 0 评论 -
Redis手抄本
EnvironmentLinux VM_0_2_centos 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64 x86_64 x86_64 GNU/LinuxProcess安装yum install redis找到可执行文件以及配置文件路径(在常规经验下的目录没有找到对应的文件)执行命令whereis redis返回结果redis: /etc/redis.confredis原创 2020-05-12 15:41:25 · 224 阅读 · 0 评论 -
SSH密钥
EnvironmentLinux VM_0_3_centos 3.10.0-862.3.2.el7.x86_64 #1 SMP Mon May 21 23:36:36 UTC 2018 x86_64 x86_64 x86_64 GNU/LinuxProcessssh-keygen 生成密钥。进入密钥存放当前文件夹。cd ~/.sshssh-keygen 命令。ssh...原创 2020-04-30 16:52:23 · 476 阅读 · 0 评论 -
PHP开发环境配置指南
EnvironmentMacPHP 7.1ProcessMac在 Mac 上,可以使用 brew 系列命令进行软件包的操作。在国内的情况下,需要先切换其镜像源。brew install php@7.1PHP在 /usr/local/etc/php/7.1/php-fpm.conf 配置 PHP 进程管理的全局参数。; 一般可以配置进程ID的文件路径,不配置也...原创 2020-04-29 11:36:03 · 708 阅读 · 0 评论 -
Git回滚版本笔记
命令注解git show查看当前版本,提交代码信息git log查看版本记录,历史提交信息git reset --hard HEAD^当前代码库版本,回退到上一个版本git reset --hard HEAD~3当前代码库版本,回退前3次提交的版本git reset --hard HEAD~{{n}}当前代码库版本,回退前 n 次提交的版本...原创 2020-04-25 00:50:42 · 212 阅读 · 0 评论 -
获取小程序码返回 NULL 值
Environmentnginx/1.15.8PHP 7.1.17laravel/framework 5.5.*ixudra/curl ^6.18Process获取小程序码错误源码 $getWxaCodeUrl = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" . $accessToken...原创 2020-03-04 14:13:11 · 1455 阅读 · 0 评论 -
Upstream timed out while reading upstream
Environmentnginx/1.14.0PHP 7.1.17ProcessNginx Error Log[error] 494#0: *134899320 upstream timed out (110: Connection timed out) while reading upstream, client: 217.137.190.200, server: www.si...原创 2020-03-02 14:42:16 · 993 阅读 · 0 评论 -
Nginx启动失败,80端口已被占用
#检查Nginx配置[root@i-14fe7093 nginx]# ./sbin/nginx -t -c ./conf/nginx.confnginx: the configuration file /usr/local/nginx/./conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx/./conf/ng...原创 2018-01-02 23:46:23 · 23656 阅读 · 3 评论 -
Every derived table must have its own alias
Every derived table must have its own alias每个衍生出来的表必须要有它自己的别名。命名一个衍生表的别名,使用AS语句。而AS关键字的位置很多,在此情况下,放到衍生表后。错误示范01:执行语句:DELETE FROM hetc_recordinfo WHERE identifier <= 40 AND votime='2017-12-14' AND s...原创 2017-12-15 10:57:23 · 503 阅读 · 0 评论 -
OpenSSL:DES加解密实战
DES加密算法,是一种对称加密算法,加解密都使用同一个密钥。 OpenSSL扩展,是PHP常用的密码扩展之一。OpenSSL扩展封装了很多加密算法,而且不需要写很多复杂的代码,很多加密算法可以直接调用其函数实现。但是,在使用OpenSSL扩展的过程中,需要注意很多细节。如果不了解其函数的使用方法,具体传入参数的要求,可能要走很多弯路。 最近,笔者用OpenSSL实现了DES的两...原创 2018-05-02 23:23:56 · 2021 阅读 · 0 评论 -
Lsyncd:负载均衡之后,服务器的文件双向同步
场景描述: 在 Linux 服务器上,通过使用 Nginx 实现负载均衡,或者在阿里云直接购买负载均衡,根据配置的转发规则,不同的请求会被转发到其不同的服务器上进行处理。如果遇到需要上传图片的情况,那最后只有其中一台服务器存有这张图片,而其他服务器则没有。随后,如果请求获取这张图片,但是转发到的恰好是没有存有这张图片的服务器,那么请求就失败了。为了避免这类问题,就需要同步相应的目录上的文件。...原创 2018-05-04 22:48:09 · 17949 阅读 · 1 评论 -
MySql忘记root密码,重新取回
1、输入命令行。vi /etc/my.cnf2、更改my.cnf配置。 在[mysqld]栏下,添加一行,忽略库表授权,即“skip-grant-tables”。[mysqld]port = 3306socket = /tmp/mysql.sockskip-grant-tables3、重启MySQL服务,或者重载配置。service mysqld restartservice mysq...原创 2018-04-28 09:44:18 · 250 阅读 · 0 评论 -
用位运算的方式区分奇偶数
1、用取模算术运算的方式区分奇偶数 一般情况下,使用取模算术运算方式。//$num 前提为整数if($num % 2 == 0){ echo $num.'为偶数';}if($num % 2 == 1){ echo $num.'为奇数';}2、用位运算的方式区分奇偶数 位移在 PHP 中是数学运算。向任何方向移出去的位都被丢弃。左移时右侧以零填充,符号位被移走意味...原创 2017-12-20 11:39:09 · 829 阅读 · 0 评论 -
Redis Lock
这里的锁,并不是进程锁,也不是文件锁,而是基于Redis做的一种加锁形式,用户锁住所在操作的状态。然而,由于并不是真正意义上的原子锁,只是利用Redis在内存中的快速读写,进而实现的机制,因而存在一定限制,在突破一定读写速率后,该机制会失效。因此,在严谨的性能需求中,不建议使用。以下,基于Laravel门面的代码: /** * Redis 加锁 * ...原创 2018-07-30 21:23:03 · 1889 阅读 · 0 评论 -
Laravel 编程中,基于 Redis 多库设计,实现多种缓存仓配置
Environment :Lumen 5.5Predis 1.1Redis 5.0.3Process1、Redis 在设计上,也保留库这个概念,一般默认库索引为0,通过命令 “select [index]” 可以切换不同的库。在根目录文件下,配置 config/database.php 多个 Redis 库。 'redis' =&amp;amp;gt; [ 'client'...原创 2019-02-02 13:32:12 · 6746 阅读 · 0 评论 -
Nginx开发环境配置指北
EnvironmentMacPHP 7.1Nginx 1.15.8ProcessMac在 Mac 上,可以使用 brew 系列命令进行软件包的操作。在国内的情况下,需要先切换其镜像源。brew install php@7.1brew install nginxPHP在 /usr/local/etc/php/7.1/php-fpm.conf 配置 PHP 进...原创 2019-02-02 18:09:11 · 10292 阅读 · 0 评论 -
Php7.1 编译安装
EnvironmentCentOS Linux release 7.5.1804 (Core)Process获取 Php7.1 官方安装包wget -c http://cn2.php.net/get/php-7.1.27.tar.gz/from/this/mirror解压安装包tar -xzvf mirror查看配置项./configure --help配置...原创 2019-03-29 16:24:05 · 14132 阅读 · 0 评论 -
接口请求日志基于年月分表
EnvironmentLumen (5.5.2) (Laravel Components 5.5.*)Process基于年月创建接口请求日志表,如果已经存在,则不创建。在 Lumen 框架中,将逻辑代码写在 Terminable 中间件中,通过 Session 进行异步记录,不占用接口请求时间。<?phpnamespace App\Http\Middleware;us...原创 2019-06-26 16:36:46 · 1604 阅读 · 0 评论 -
消息队列之RabbitMQ
EnvironmentLumen (5.5.2) (Laravel Components 5.5.*)Laravel(5.5.*)RabbitMQProcess前提RabbitMQ 中文文档-PHP版mookofe/tailArtisan 命令行Artisan 命令使用 Artisan 命令,创建作为消费的 worker 脚本。php artisan ma...原创 2019-07-12 18:47:33 · 998 阅读 · 0 评论 -
MySQL以备份还原的方式导入数据表
1 建一个模拟数据库。2 用“mysqldump”命令,备份其中一张表。3 删除原表,为下面的导入数据表做对照验证。4 在以备份还原方式导入数据表前的数据库情况。5 以数据备份还原的方式导入数据表。6 这种备份还原的方式进行数据的导入导出。当然,在日常开发中,大部分情况是不需要使用这种方式的,因为一些相关的数据库工具已经包装好此功能,或者直接使用“source”命令,也十分快捷方便。但是能多懂一个...原创 2018-04-28 09:09:17 · 406 阅读 · 0 评论