工具
文章平均质量分 91
工具箱
Andy____Li
烹饪工具箱
展开
-
Nginx 配置文件nginx.conf拆分
本文环境:ubuntu 18.04 阿里云当nginx 反向代理的内容越来越多的时候,如果仅仅使用nginx.conf来配置会导致比较难管理。所以希望按照子域名规则来划分application。然后将application的规则配置到/etc/nginx/conf.d/下面去。目前希望针对不同子域名进行拆分。比如有以下两个子域名的反向代理需要拆分。rtc.sample.top -> port 4056account.sample.top -> port 40571 环境准备本节主原创 2021-01-28 13:31:25 · 2762 阅读 · 1 评论 -
Linux 自启动服务配置
最近想把nodejs 的服务器作为服务随linux启动而启动。发现对这部分理解并不是非常清晰,这里重新整理学习一下这部分内容。1 服务的概念在Linux中,服务是在后台运行的程序。服务可以按需启动,也可以在启动时启动。如果您使用Linux作为主要操作系统或开发平台,那么您将处理不同的服务,例如webserver,ssh或cron。在调试系统问题时,了解如何列出正在运行的服务或检查服务状态非常重要。最近的大多数Linux发行版都使用systemd作为默认的初始化系统和服务管理器。Systemd是一套原创 2021-01-22 13:38:21 · 823 阅读 · 0 评论 -
身份证校验码计算
身份证校验码计算最近看一份文档看到身份证规则,觉得很有趣,这里记录一下如何计算校验码1 身份证编码规则《中华人民共和国国家标准GB 11643-1999》中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码 (编码对象常住户口所在县(市、旗、区)的行政区划代码,按 GB/T 2260的规定执行),八位数字出生日期码(表示编码对象出生的年、月、日,按GB/T 7408的规定执行。年、月、日代码之间不用分隔符)顺序码原创 2020-11-12 17:51:01 · 7666 阅读 · 0 评论 -
Linux 普通用户bind 80端口
文章目录1 使用nginx 做反向代理2 Linux能力-CAP_NET_BIND_SERVICE2.1 Linux 能力概念2.2 测试及赋予能力linux对于非root权限用户不能使用1024以下的端口,那普通用户该如何将应用服务通过80端口对外提供服务呢1 使用nginx 做反向代理常规操作,一般应用服务器不会直接暴露在公网,而是使用nginx 做方向代理,将访问服务器80端的请求转发到具体应用服务器的监听的端口server { listen 80; server_name原创 2020-08-04 15:02:19 · 2478 阅读 · 0 评论 -
Markdown编写工具及图床方案
经常在个人编写blog 使用markdown语法,但最近使用语雀编写文档时发现用语雀客户端编写的markdow 生成的图片外链 无法在其他网站使用。基于这种情况是时候考虑一下如何在本地编写markdown。在知乎上找了一圈发现很多人推荐:typora 编写markdownpicgo作为图床处理markdown中图片picgo使用七牛云作为服务商。注意这里长期使用需要有一个备案域名1 下载typorahttps://www.typora.io/很简单就可以下载安装2 申请七牛云并配置picgo七牛原创 2020-07-18 21:11:15 · 834 阅读 · 0 评论 -
使用Nextcloud在AWS搭建云存储
环境: ubuntu 18.04国内区确定是否已备案拥有80/443 端口相应EC2 安全组已开放对应端口如果仅仅是自用推荐使用第二种snap方式1 使用dockers安装nextcloud1.1 安装及启动ubuntu安装dockers脚本curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun拉取nextcloud dockers镜像docker pull nextcloud启动nextcloud容器d原创 2020-07-18 11:42:55 · 1296 阅读 · 0 评论 -
使用crow E-R图描述数据库关系
在设计数据库模型时,使用E-R图的方式可以帮我们理清各数据库实体信息及实体与实体之间的关系。本文描述的为:E-R Crow画法绘图工具: draw.io 离线版文章目录1 E-R图2 E-R图说明2.1 属性2.2 关系2.3 实体3 图例及参考3.1 crow方法图列3.2 示例4 参考1 E-R图实体关系图(ERD)或ER模型代表任何系统中的数据。您可以使用它们来说明业务流程中数据的结构,或详细说明关系数据库中数据的存储方式。ER图不一定显示数据的处理方式或经过的确切过程,而是数据实体的结构和原创 2020-07-07 18:13:22 · 9038 阅读 · 0 评论 -
阿里云资源编排(ROS)Sample
原来用过AWS cloudFormation 服务感觉用于帮客户搭建环境很好用。近期需要客户创建一个阿里云OSS 桶资源,并给一个对应用户mobile APP访问的RAM角色和一个用于server访问的子账号。 文档写了5小节,整个过程比较繁琐,如果需要客户手动操作可能会造成一些困扰。所以这里就看了下和AWS cloudFormation对应的阿里云 资源编排服务(ROS)。此文档记录一些Sample方便以后接着填这种坑。 阿里云的文档写的还是不错的:模板的基本语法: https://help.aliyun原创 2020-05-28 19:49:40 · 848 阅读 · 0 评论 -
网络掉包分析工具mtr
这是12月调试服务器网络情况总结的第三篇文章,网络掉包分析工具mtrMTR(My traceroute,原名Matt’s traceroute)是一套网络诊断工具,包含了traceroute与ping的功能。 前两篇文章介绍ping 用于测延时大致掉包率和用于测试网络路径工具traceroute工具,这里介绍介绍一下两者的综合体mtr工具。运行Mtr指定一个IP地址,Mtr会查看运行Mtr的主...原创 2019-01-17 19:52:57 · 6248 阅读 · 0 评论 -
AWS 不同区域网络测试方案
最近被AWS 首尔区域整的焦头烂额,后来发现是北京到东京掉包严重。这里就涉及到新的AWS服务器选型的问题。需要评估一个更稳定的新区域。这里提供部分评估方法和调试经验。https://www.cloudping.info/一个有网站可以辅助测试不同可用区访问情况。当然我们也可以自行测试:http://ec2-reachability.amazonaws.com/首先可以在这个网址内找到相应...原创 2019-01-17 19:59:49 · 10650 阅读 · 1 评论 -
Traceroute命令原理及使用(路由跟踪)
traceroute,现代Linux系统称为tracepath,Windows系统称为tracert,是一种计算机网络工具。它可显示数据包在IP网络经过的路由器的IP地址。我们可以用这个命令来查看数据包途径的网络节点和ISP,从而排除一部分网络问题。本文基于Linux环境文章目录1 原理2 命令3 举例4 参考链接1 原理程序是利用增加存活时间(TTL)值来实现其功能的。每当数据包经过一个...原创 2019-01-08 20:27:29 · 30651 阅读 · 0 评论 -
Xshell 脚本简化二次登陆
一般情况,网络都会做出网络隔离,分为内网和外网环境。而内网工作机访问到外网都有一台中转的服务器(也可以被称为网关服务器),现在经常有种需求比如想要连到AWS EC2 就需要先登录工作机环境的中转服务器,再在中转服务区上使用ssh连到AWS EC2上。这个流程用反复手动输入显得愚蠢。今天在xshell 中找到一个叫登录脚本的配置,测试一番发现果然可以很简单实现二次登陆的功能。示例:如何使用 首...原创 2019-01-14 18:21:13 · 3254 阅读 · 0 评论 -
规范地使用git(git flow)
在熟悉git的基本操作后,其实应该引入更加专业的工具让Git规范起来。在上周学习git flow 和git cz(规范commit)的使用,确实用起来了可以减少很多麻烦。本文旨在介绍最近学习的Git flow流程和如何使用工具践行这个流程。关于git flow的详细介绍,本文参考了该文章(可能国内访问有问题):https://nvie.com/posts/a-successful-git-br...原创 2019-01-31 14:20:30 · 1614 阅读 · 0 评论 -
git commit 规范化(git commitizen工具)
在最近引入git flow流程规范 git开发流程时,在同事的blog里面同样找到一个工具git commitizen。这个工具可以用来规范git commit 的提交。原来一直都是git commit -m 添加一些描述就完了。但借着这个工具了解到了更多的commit 规范,这里特此记录一下使用过程。本文参考阮大神的blog:http://www.ruanyifeng.com/blog/201...原创 2019-01-31 19:41:49 · 6667 阅读 · 0 评论 -
Git 常用命令
记录汇总一下平时可能用到的git命令1 基础操作git init 新建一个空的git仓库git status 查看当前代码状态 那些被修了(deleted:被删除 ,没有前缀的文件名:新增文件,modified:部分修改)git diff 文件名 查看该文件与git仓库中文件对比git add file(文件路径)将文件加入到暂存区git rm file删除文件。当本地文件被删除时,执...原创 2019-02-02 14:47:36 · 188 阅读 · 0 评论 -
正/反向(proxy)代理
最近整理日志时,看到关于代理方面的记录。感觉可能以后又时很长时间接触不到这些东西,有必要整理文档记录下一波。程序猿基础操作之代理。文章目录1 基本概念2 正向代理3 反向代理4 正向/反向代理的区别5 参考链接1 基本概念代理(英语:Proxy)也称网络代理,是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接。一些网关、路由器...原创 2019-03-08 20:20:11 · 741 阅读 · 0 评论 -
后端缓存原理及常见问题
作为 server端经常会用到缓存技术来提供降低数据库压力和提高服务性能,因为一些数据我们没有必要每次查询的时候都去查询到数据库。今天读到一篇文章加深了自己对缓存的认识,整理一篇文档以作记录。文章目录1 缓存的基本实现2 缓存穿透2.1 原理2.2 解决方案3 缓存击穿4 缓存雪崩5 热点数据集中失效问题6 参考资料常见的缓存有redis等内存性缓存服务器。对于自己维护数据库而言,所有的请求都...原创 2019-04-25 20:19:42 · 3502 阅读 · 0 评论 -
Redis缓存与数据库一致性方案
今天和室友讨论关于redis缓存与数据库同步的问题,发现对这个问题没有清晰明了的认识,在网上找到Dustin_CDS的文章发现对各种情况都进行了讨论,转载以供以后学习查阅。本文转载自: https://blog.csdn.net/Dustin_CDS/article/details/79595297文章目录1 数据库和redis分别处理不同的数据类型2 Cache-Aside模式2.1 读场景...转载 2019-08-01 13:38:35 · 346 阅读 · 0 评论 -
Nodejs 密码加密存储
参考链接: https://www.zhihu.com/question/20820286 https://crackstation.net/hashing-security.htm 译文https://blog.csdn.net/coslay/article/details/50382252密码在服务器一般不能明文存储,所以这里就涉及到加密处理的问题。 我们采用hash算法对密码进行...原创 2018-05-22 20:21:54 · 5290 阅读 · 0 评论 -
如何选择开源许可证?
来源:http://www.ruanyifeng.com/blog/2011/05/how_to_choose_free_software_licenses.html 作者:阮一峰如何为代码选择开源许可证,这是一个问题。世界上的开源许可证,大概有上百种。很少有人搞得清楚它们的区别。即使在最流行的六种—-GPL、BSD、MIT、Mozilla、Apache和LGPL—-之中做选择,也很复杂...转载 2018-05-30 09:28:52 · 245 阅读 · 0 评论 -
Nginx 限制ip并发数及请求速度
因为AWS 服务很多都具有自动扩容的功能,所以为了保护服务器的安全,防止某些ip恶意高并发访问服务器,需要对ip并发和速度进行限制。但这特别要说明一点,关于公网ip,实际测试中,如果将某个ip并发设置为1,公网ip下的所以设备均被认为是同一个ip的并发,就会造成公网ip下只能有一个设备可以访问成功的现象,所以不能将并发设置过小。(实际测试现象可能就是一个公司可能只有一个公网ip,下面很多电脑同...原创 2018-06-21 19:11:51 · 7855 阅读 · 1 评论 -
nginx worker_connections are not enough(错误)
最近看nginx error_log 中出现worker_connections are not enough(错误),整理一下解决过程1 worker_connections这个问题与下面两个重要的参数有关:句法: worker_connections number;默认: worker_connections 512;语境: events设置工作进程可以打开的最大并发连...原创 2018-06-26 13:25:36 · 38983 阅读 · 3 评论 -
录制演示视频方法
最近有个任务需要录制一段演示视频,现在pc录制一段PPT讲解,再录制一段手机演示,最后合并到一起的需求。完成后记录一下过程,免得以后又从新找软件。PC端录制视频软件: snagit 11 手机端录制视频:小米手机自带软件(其他手机录制可能需要root) 剪辑软件:SolveigMM Video Splitter Business Edition(较为轻量简单易用) 视频合并:格式工厂(可...原创 2018-07-10 13:27:13 · 864 阅读 · 0 评论 -
浏览器去广告(Adblock Plus离线安装)
如何干掉恶心百度联盟(推广)广告: 这里隆重推荐Adblock Plus。 最近实在受不了百度搜索结果里面广告,还有各大网站内嵌的智障广告(CSDN)1 chrome中安装adb lockPlus2 离线安装2.1 下载crx文件2.2 打开chrome 在地址栏输入chrome://extensions/3 下载Adblock Plus开发版本安装浏览器:ch...原创 2018-07-17 19:09:39 · 61090 阅读 · 15 评论 -
Git 忽略某些本地某些文件
Git 提交代码时经常被一些本地文件困扰,比如一些log, 用户上传的头像(jpg),还有拉到本地lib 等 这篇blog主要介绍通过 配置 .gitignore文件 解决这些问题。1 测试环境首先我们待测试文件结构如下:2018/08/03 17:55 <DIR> .2018/08/03 17:55 <DIR&原创 2018-08-03 18:23:40 · 8596 阅读 · 0 评论 -
Apns 服务端接入(node)
APNs(英文全称:Apple Push Notification service),中文翻译为:苹果推送通知服务.本文只记录apns node版本接入和一些调试经验,不涉及证书申请及app端开发。node有非常成熟apn相关模块,又快又陡。模块文档:https://www.npmjs.com/package/apn使用苹果APN首先需要准备以下参数服务端证书(开发环境证书和生产环境...原创 2018-09-26 14:09:14 · 2004 阅读 · 0 评论 -
Nginx 反向代理并作为服务运行
今天被公司一台自带nginx Linux服务器套路了。部署了一个server在服务器上用的80端口用来测试,没注意到是否有nginx service。结果公司IT把服务器重启了,把80端口给我占了,导致我server恢复不起来。(⊙o⊙)…,是时候记录一波部署路线,防止以后翻车了。测试环境: ubuntu(linux)1 nginx安装1.1 下载源码下载nginx源码http://ng...原创 2018-10-23 14:13:44 · 562 阅读 · 0 评论 -
grep命令-Linux字符串查找
最近用到了平时经常用的grep,但遇到全字匹配和排除文件,排除目录的操作。触及到知识盲区,特此去学习了解记录一下。如果遇到其他用法在添加编辑。文章目录1 背景2 grep使用2.1 基本用法2.2 查询目录2.3 通配查询2.4 全字匹配2.5 排除指定文件2.6 排除指定目录2.7 grep配合管道筛选数据3 参考链接1 背景在Linux环境中,有时会遇到程序报了些问题,但有没有标注所在位...原创 2018-10-26 16:38:05 · 1180 阅读 · 0 评论 -
HTTP调试工具-POSTMAN使用(1) 安装及简单请求
过去在测试室友John的推荐下接触到API测试工具-POSTMAN。而作为开发者来说,一遍情况下都是自己手动编写mocha脚本进行测试,对于其他参与配合同事来说,这种使用和交流是比较困难的。所以,一般情况下都是请他们使用POSTMAN进行测试,但自己本身对于POSTMAN的使用一直停留在非常基础手动输入参数,人眼观测结果的情况。最近希望整理一套可以直接使用restful postman自动测试脚本...原创 2018-11-01 20:34:35 · 6056 阅读 · 0 评论 -
架构图绘制 (AWS工具)
最近需要花一份系统架构图,用VISO画出来黑丑,一直觉得用阿里云和AWS的架构图相当漂亮,但又没有找到相应工具,今天发现绘制AWS 架构图工具网站 真的相当棒:https://cloudcraft.co/login效果如下,可自行添加相应AWS基础设置和画线条,效果如下:APP 后台架构:IOT 架构图:...原创 2018-11-16 16:56:38 · 24204 阅读 · 4 评论 -
HTTP调试工具-POSTMAN使用(2) 编写测试
官方文档:http://blog.getpostman.com/2017/10/25/writing-tests-in-postman/上一篇文章:https://blog.csdn.net/m0_37263637/article/details/83626518每个人都同意编写测试很重要,但不是每个人都这样做。在您引入新代码时,测试可确保您的API按预期工作。您可以在Postman中为每个请...原创 2018-11-26 13:41:51 · 1174 阅读 · 0 评论 -
HTTP调试工具-POSTMAN使用(3) 变量及环境使用
上篇文章:https://blog.csdn.net/m0_37263637/article/details/84538698在上一篇文章中,我们尝试使用测试代码让POSTMAN对http响应结果进行判断。这就是通常使用最简单测试用例了。但一般情况下,都会区分环境,比如开发环境,测试环境,生产环境。而这些环境的地址或某些参数肯定是不同的,手动修改会显得十分愚蠢,所以如果想用一套测试case能够在...原创 2018-12-28 15:07:04 · 1014 阅读 · 0 评论 -
Ping 命令原理及使用
最近处理国内访问AWS海外区网络问题,学习了一系列原来没有彻底搞清楚网络知识,这里特此记录。Ping命令可以拿来测网络是否联通,网络响应时间和基础的掉包率。但掉包分析建议使用mtr工具完成。ping是一种计算机网络工具,用来测试数据包能否透过IP协议到达特定主机。ping的运作原理是向目标主机传出一个ICMP echo@要求数据包,并等待接收echo回应数据包。程序会按时间和成功响应的次数估算丢...原创 2018-12-24 13:30:24 · 4232 阅读 · 0 评论 -
vscode配置中文UI
前天给自己上古笔记本装了一块固态硬盘重装了个系统,顿时又有兴趣在家里用电脑了。今天把用的最多的VS code装上,vs code安装很简单,在官网下载下来直接默认安装即可。但打开才发现和在公司用的有点不一样是英文UI有点不习惯。但很久没配置了忘了如何配置了。这里特地记录一下,以便以后再用。1 在VS CODE 推展里搜索Chinese 第一项就是语言包,选择安装(install)2 修改V...原创 2018-12-19 00:57:47 · 1195 阅读 · 0 评论 -
常用编码方式(ASCII Unicode GBK)
参考:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html计算机中的数据都是按字节存储。一个字节(Byte)由8个二进制位组成(bit)组成(范围是0~255(2^8)) 一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从00000000到11111111。本文中谈到的关系编码如原创 2018-05-04 18:29:13 · 9448 阅读 · 0 评论