目录

Life in Flow

知不知,尚矣;不知知,病矣。
不知不知,殆矣。

Apache SkyWalking

布式架构下的排查问题复杂性 分布式应用架构的运维和诊断的过程变得越来越复杂,例如:接口诊断困难、应用性能诊断复杂、架构分析复杂等难题,传统的监控工具并无法满足,分布式链路系统由此诞生 核心:将一次请求分布式调用,使用 GPS 定位串起来,记录每个调用的耗时、性能等日志,并通过可视化工具展示出来 APM 系统(Application Performance Management) 讲到分布式的链路追踪系统,不得不说说它的前世今生了,APM 系统是可以帮助系统的行为做性能分析的工具 APM 系统,它是由谷歌公开的论文提到的,可以说谷歌还是很强的!而到后面,许多的技术公司就基于这边论文的原理,开发出来很多出色的 APM 框架,比如:skywalking、zipkin 等等 SkyWalking Skywalking 是什么 skywalkings 是一款国产的开源框架,在 2015 年开源使用,在 2017 年的时候加入了 Apache 孵化器 skywalking 是分布式应用程序的性能监控工具,专门是为了微服务(spring cloud)、云原生架构与容器架构(docker/....

Prometheus

项目上线后如何保障业务的稳定性运行 高可用架构设计 采用分布式架构和容灾设计,确保系统的冗余与可恢复能力 包括多机房部署、多副本部署、负载均衡、热备份等策略,以应对单点故障和海量并发请求。 服务容错与降级 在面对故障或异常情况时,通过设计合适的容错机制和降级策略来保证核心业务的稳定进行 例如,对于关键服务,可以使用熔断器、限流器等技术来避免级联故障和请求雪崩。 自动化运维和发布 制定自动化的运维流程,包括自动化的部署、回滚、灰度发布等,减少人工操作引起的错误和风险。 同时,建立持续集成与持续交付(CI/CD)流程,确保代码的质量和稳定性 安全保障和漏洞修复 建立健全的安全策略和防护措施,保障系统和数据的安全。 同时及时修复系统中的漏洞和安全问题,避免被攻击者利用导致系统瘫痪或用户数据泄漏。 备份与恢复 定期进行系统数据的备份,并建立灾难恢复机制,备份可以包括系统配置、数据库、日志等关键数据 在系统发生故障时,能够及时将数据恢复到最新的可用状态。 如何发现业务的不稳定运行 互联网公司需要在开发、测试、发布、运维等不同阶段对产品进行监控,以便及时....

OpenVPN

Virtual Private Network 方案 区别 专线 不差钱 硬件 vpn 设备 成本低 开源软件 pptp(兼容性差)、OpenVPN(数据加密、便于用户可以访问内网,内网) 、IpSEC、OpenSwan 应用场景 远程访问企业内网 多分支互通 架构 角色 地址 OpenVPN_Server(开启内核转发功能) eth0:192.168.10.30/24、eth1:172.16.10.30/24 DB 172.16.10.31/24 (不需要设置网关,只设置 ip 即可) OpenVPN_Client 192.168.10.88/24 1# 开启内核转发功能 2[root@localhost easy-rsa]# vim /etc/sysctl.conf 3[root@localhost easy-rsa]# sysctl -p 4net.ipv4.ip_forward = 1 CA 角色 功能 客户端 CA 证书:client 密钥(加密) 服务端 CA 证书:server 密钥(解密) ....

Zabbix

监控的意义 监视 是指对行为、活动或其他变动中信息的一种持续性关注,通常是为了对人达成影响、管理、指导或保护的目的 监控主机或者架构状态 控制、追责 及时定位故障点,预先扩容(数据分析) 早期linux的监控命令 定时任务+脚本 项目命令 业务apicurl/wget 进程ps/pstree/pgrep/pidstat/top/htop cputop/htop/vmstat/mpstat/cpuinfo/w/uptime/sar 内存top/free/ps/iotop/vmstat/sar 磁盘iotop/iostat/sar 网络iftop(整体带宽使用情况)/nethogs(精确到进程)/nstat/ifstat/mtr/sar 硬件Megacli(raid)/ipmitool(温度、cpu风扇转速)/Im_sensors(温度) 监控层次与指标 单台服务 业务信息:程序逻辑(与开发沟通书写一个监控页面) 服务信息:各种服务的进程、端口、状态 系统信息:cpu、mem、io、负载、网络 硬件信息:磁盘、raid状态、温度、风扇转速、机房温度&湿度 网络集群监控(用户访问流程....

使用Hash加盐对Password加密

数据表 mis_user 数据表是 MIS 系统的用户表,所有能登陆 MIS 系统的帐户都保存在这张表里面。首先你要明确:不是医院所有的工作人员都能登陆 MIS 系统。例如医护人员可以登录 MIS 系统,但是保安就不需要用 MIS 系统,所以我们在 mis_user 表中给需要使用 MIS 系统的用户创建帐户。 序号 列名 类型 备注 1 id INTEGER 主键 2 username VARCHAR 用户名 3 password VARCHAR 密码 4 name VARCHAR 姓名 5 sex VARCHAR 性别 6 tel VARCHAR 电话(用于接收重置密码的短信验证码) 7 email VARCHAR 邮箱(用于接收重置密码的邮件验证码) 8 dept_id INTEGER 隶属的部门 ID 9 job VARCHAR 职务(医生、护士等) 10 ref_id INTEGER 关联 ID(例如医生 ID,护士 ID 等) 11 status TINYINT 1 有效,2 离职,3 禁用 12 create_ti....

人脸识容器&MQ

在 docker 中安装人脸识别镜像 上传镜像 face.tar.gz 1[root@localhost tmp]# docker load < face.tar.gz 2[root@localhost tmp]# docker images 创建 docker 容器 解压 demo.tar 1[root@localhost tmp]# tar -xvf demo.tar 2[root@localhost tmp]# docker run -d -it -p 3000:3000 -v /tmp/demo:/demo --name node face 3 4 5[root@localhost tmp]# docker ps 6CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 70ef91128ee5c face "bash" 47 seconds ago Up 46 seconds 0.0.0.0:3000->3000/tcp node 运行人脸识别程序 1### 进入容器 2[root@localhost t....

微信开发者账号

申请微信开发者账号  虽然开发微信小程序可以使用工具提供的测试号,但是测试号提供的功能极为有限,而且使用测试号开发的微信小程序不能上架发布。因此,想要开发一个可以上架的微信小程序,首先必须要申请微信开发者账号。个人申请和使用微信开发者账号是免费的。如果要开发的是商用小程序,那么就需要以企业身份申请微信开发者账号,而且还要缴纳认证费用。 在线办公小程序  在线办公小程序,内部包含微信支付和在线视频会议功能,这两项业务,微信平台不对个人小程序开放。  需要企业小程序资质(仅供开发,不能上架发布,设置了权限无法上架),把小程序项目中的配置文件修改一下,换上提供者的 AppID 就可以了。  如果想上架发布小程序,可以自己注册个人主体的小程序开发者账号,然后把小程序中的在线会议和支付功能去掉,就可以上架发布了。 微信公众平台  访问微信公众平台,立即注册。 获取 AppID 和密钥  开发微信小程序必须要用到 AppID 和密钥,这两个东西可以在微信开发者平台上面获得。  在网页中找到开发栏目,然后选择开发设置 选项卡,在面板中你就能看到自己的小程序对应的 AppID 和 密钥 了。如果是刚注....