十余年经验总结:企业级IT系统运维者如何才能体现真正价值?

摘要:前言谈起运维工作,估计很多人会下意识的认为就是修电脑的、网管(上不去网,第一个被召唤的那种)。其实不能说这是错误的理解,IT运维人员的工作小到修电脑、理网线,大到部署整个数据中心。负责运维的设备,小的从个人电脑,大的到数以亿计的高精尖计算设备。从运维的工作层次来分,又分为硬件运维、桌面运维、系统运维、数据库运维和应用运维。几乎所有的和系统相关的问题,

 1024程序员节,向用代码改变世界的人致敬

摘要:1024程序员节是中国广大程序员的共同节日。1024是2的十次方,二进制计数的基本计量单位之一。部分互联网机构一直密切关注程序员健康,针对程序员经常周末加班与工作日熬夜的情况,倡议每年的10月24日为1024程序员节,在这一天建议程序员拒绝加班。程序员就像是一个个1024,以最低调、踏实、核心的功能模块搭建起这个科技世界。1G=1024M,而1G与1级谐音,也有一级棒的意思。2019

 微服务API网关-kong+postgresql+konga安装配置

摘要:微服务API网关拓扑图:配置环境:[root@node154 kong]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) 部署版本:kong:  1.1.2-1.noarch postgresql: v10.4 (注意:psql版本必须与kong版本对应)安装依赖包安装gcc编译环境$ sudo yum install -y gcc gcc-c++pcre安装pcre(Perl Compatible Regular Expressions) 是一个 Perl 库,包括 perl

 阮胜昌,请介绍一下MySQL数据库的锁机制?

摘要:为什么要加锁问题背景当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。要解决的问题多用户环境下保证数据库完整性和一致性锁是什么在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足。加锁是实现数据库并

 HTTPS虐我千百遍,我却待她如初恋!

摘要:本篇将讨论 HTTPS 的加解密原理,很多人都知道 RSA,以为 HTTPS=RSA,使用 RSA 加解密数据,实际上这是不对的。HTTPS 是使用 RSA 进行身份验证和交换密钥,然后再使用交换的密钥进行加解密数据。身份验证是使用 RSA 的非对称加密,而数据传输是双方使用相同的密钥进行的对称加密。那么,什么是对称加密和非对称加密?对称加密和非对称加密假设隔壁小王想要约小红出来,但是他不

 12306如何支撑亿级QPS,订单如何不少卖,不超卖

摘要:12306抢票,极限并发带来的思考?每到节假日期间,一二线城市返乡、外出游玩的人们几乎都面临着一个问题:抢火车票!虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。尤其是春节期间,大家不仅使用12306,还会考虑“智行”和其他的抢票软件,全国上下几亿人在这段时间都在抢票。“12306服务”承受着这个世界上任何秒杀系统都无法超越的QPS,上百万的并

 注意!电脑已安装Teamviewer,请立即卸载

摘要:TeamViewer是一个能在任何防火墙和NAT代理的后台用于远程控制的应用程序,桌面共享和文件传输的简单且快速的解决方案。为了连接到另一台计算机,只需要在两台计算机上同时运行 TeamViewer 即可,而不需要进行安装(也可以选择安装,安装后可以设置开机运行)。该软件第一次启动在两台计算机上自动生成伙伴 ID。只需要输入你的伙伴的ID到TeamViewer,然后就会立即建立起连接。Tw

 Linux 秒级定时任务利器-webcron

摘要:功能:统一管理多种定时任务。秒级定时器,使用crontab的时间表达式。可随时暂停任务。记录每次任务的执行结果。执行结果邮件通知。系统需要安装Go和MySQL。安装配置GO环境:下载go源码 wget https://dl.google.com/go/go1.13.1.linux-amd64.tar.gz将go解压到/usr/local目录下 sudo tar -zxvf go1.11.linux-amd64.tar.gz -C /usr/local将/usr/local/go/bin目录添加至PATH环境变

 MySQL官方读写分离软件-MaxScale

摘要:服务器环境:[root@node155 ~]# rpm -qa | grepmaxscalemaxscale-2.4.2-1.x86_64[root@node155 ~]# cat /etc/redhat-release CentOS release 6.9 (Final)[root@node155 ~]# uname -aLinux node155 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 2119:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux 配置拓扑图:本文利用一主两从的复制架构介绍Maxscale读写分离的实现,环境如下:&nb

 MySQL条件中的IS NULL、IS NOT NULL、!=不能用索引吗?

摘要:不知道从什么时候开始,网上流传着这么一个说法:MySQL的WHERE子句中包含 IS NULL、IS NOT NULL、!= 这些条件时便不能使用索引查询,只能使用全表扫描。这种说法愈演愈烈,甚至被很多同学奉为真理。咱啥话也不说,举个例子。假如我们有个表s1,结构如下:CREATE TABLE s1 ( id INT NOT NULL AUTO_INCREMENT, key1 VARCHAR(100), key2 VARCHAR(100), key3 V

 Nginx反向代理(HTTP-HTTPS)+负载均衡

摘要:配置环境:[root@216700 nginx]# nginx -vnginx version: nginx/1.16.1[root@216700 nginx]# uname -aLinux 216700.70294.sys.ipv4.io3.10.0-1062.1.1.el7.x86_64 #1 SMP Fri Sep 13 22:55:44 UTC 2019 x86_64 x86_64x86_64 GNU/Linux[root@216700 nginx]# cat/etc/redhat-release CentOS Linux release 7.7.1908 (Core)HTTPS代理:HTTPS:通过NGINX负载均衡器来访问后端两台配置

 MYSQL- Lock--gap before rec insert intention waiting:意向锁(IX)等待

摘要:在事务插入数据过程中,为防止其他事务向索引上该位置插入数据,会在插入之前先申请插入意向范围锁,而如果申请插入意向范围锁被阻塞,则事务处于gap before rec insert intention waiting的等待状态。MySQL官方文档解释如下:INSERT sets an exclusive lock on the inserted row. This lock is an index-record lock, not a next-key lock (that is, there is no gap lock) an

 MySQL-字符串char(m)和varchar(m),m:表示字符个数,还是字节大小?

摘要:char(m)    定长字符串类型 非Unicode 字符varchar(m)变长字符串类型  非 Unicode 数据说明:M为最大可存储字节数汉子占两个字节,通过指定m,来限制存储的最大字符数长度,char(20)和varchar(20)将最多只能存储20个字符,超过的字符将会被截掉。m必须小于该类型允许的最大字符数。 一char(m)类型Char(m)   最大字节数255   定长类

 MySQL复合索引比主键索引还快,为什么?

摘要:存储引擎:innodb题目如下: create table t( id primary, ver int, content varchar(3000), intro varchar(3000) ) engine innodb charset utf8; 表有10000条数据,按如下条件查询: select id from t order by id  #慢 select id from t order by id,ver #快 为什么?  实验如下: 创建一个innodb引擎的表: create table smth( id int(11) not null default &

 MySQL联合索引深度解析

摘要:题目:假设某个表有一个联合索引(c1,c2,c3,c4),以下那个只能使用联合索引的c1,c2,c3部分:A.where c1=x and c2=x and c4>x and c3=xB.where c1=x and c2=x and c4=x order by c3C.where c1=x and c4=x group by c3,c2D.where c1=? and c5=? order by c2,c3E.wherre c1=? and c2=? and c5=? order by c2,c3创建一张表并插入数据:root@db5.7.18[test]> use test;Database

 终于明白为什么要“分库分表”了!

摘要:例如:单表中出现了,动辄百万甚至千万级别的数据。“分表分库”就成为解决上述问题的有效工具。今天和大家一起看看,如何进行分表分库以及期间遇到的问题吧。为什么会分表分库数据库数据会随着业务的发展而不断增多,因此数据操作,如增删改查的开销也会越来越大。再加上物理服务器的资源有限(CPU、磁盘、内存、IO 等)。最终数据库所能承载的数据量、数据处理能力都将遭遇瓶颈

 超实用:14种性能监控与负载测试工具

摘要:众所周知,性能测试可以揭示一个系统在各种情况下的行为与响应方式。某个系统在 1,000 个并发用户下能够运行稳健,并不等于它在面对 100,000 个并发用户时,仍能运行正常。因此我们在系统性能方面,主要着眼于三个主要目标:速度可扩展性稳定性在此,我们列出了 14 种针对应用程序性能监控与负载测试的工具,以帮助您构建和维护具有高性能和高可靠性的系统。注意,虽然它们中的

 MySQL--SQL语句优化之 left join

摘要:工作中我们经常用到多个left join去关联其他表查询结果,但是随着数据量的增加,一个表的数据达到百万级别后,这种普通的left join查询将非常的耗时。原SQL:SELECT a.*,b.*,b.diff_num,b.supplier_id,b.num,b.price,c.product_id,c.old_spec_sku,c.new_purchase_price,d.old_parent_sku,d.product_cname FROM hexin_erp_storage_out_main a left JOIN hexin_erp_storage_out_de

 修改主机时间对MySQL影响-InnoDB: Waiting for page_cleaner to finish flushing of buffer pool

摘要:背景在装机实施时,BIOS忘记调整时间,导致服务器时间与CST不符合;待发现问题时,MySQL环境已经在运行,所以只能通过操作系统进行更改;但是更改完成后,MySQL进行重启时发生了问题。以下为问题复现和解决过程测试环境MySQL 5.7.24 CentOS 7.4root@localhost : (none) 12:00:54> show variables like '%time_zone';+------------------+--------+| Variable_name | Value |

 MySQL:为什么无法KILL在processlist中的语句[转]

摘要:在 MySQL 中有两个 kill 命令:一个是 kill query + 线程 id,表示终止这个线程中正在执行的语句;一个是 kill connection + 线程 id,这里 connection 可缺省,表示断开这个线程的连接,当然如果这个线程有语句正在执行,也是要先停止正在执行的语句的。不知道你在使用 MySQL 的时候,有没有遇到过这样的现象:使用了 kill 命令,却没能断开这个连接。再执行 show processlist
分页:« 1 2 3 4 5 6 7 8 9 10 »
Powered by AKCMS