使用docker部署minio
minio是一款对象存储系统,类似于阿里oss,其特点是: - 高性能 - 可扩展性 - 云的原生支持 - 开放全部源代码 + 企业级支持 - 与Amazon S3 兼容 - 非常简单易用 今天使用docker在本地搭建一个。 docker run -p 9090:9090 -p 9080:9080 --name minio \ -d --rest…
go语言圣经练习题
前言 本练习所使用的go version为1.14.4 $ go version go version go1.14.4 darwin/amd64 阅读的文档来源于go语言圣经。 该习题解题思路只代表我个人的解题思路,如果有更好的解题思路请大家留言。谢谢。 入门 命令行参数 练习 1.1 修改echo程序,使其能够打印os.Args[0],即被执行…
php-fpm简介及调优
要了解php-fpm相关知识,必须要先了解cgi 、fast-cgi相关知识。 早期的web服务器,可以简单的响应浏览器发送来的http请求,并返回对应存储在服务器上的html文档给浏览器,这种就是静态的html。 随着时间的变化,静态资源满足不了一些日常需求,网站也越来越复杂,所以出现了动态技术。但是服务器并不能直接运行php、asp这些的文件,…
mysql分组取前几条记录
测试sql语句 CREATE TABLE `mygoods` ( `goods_id` int(11) unsigned NOT NULL AUTO_INCREMENT, `cat_id` int(11) NOT NULL DEFAULT '0', `price` tinyint(3) NOT NULL DEFAULT '0', `status` …
Redis部分总结
redis特点 优点 读写性能优异, Redis能读的速度是110000次/s,写的速度是81000次/s。 支持数据持久化,支持AOF和RDB两种持久化方式。 支持事务,Redis的所有操作都是原子性的,同时Redis还支持对几个操作合并后的原子性执行。 数据结构丰富,除了支持string类型的value外还支持hash、set、zset、lis…
mysql事务
事务是MySQL等关系型数据库区别于NoSQL的重要方面,是保证数据一致性的重要手段。 基础概念 事务(Transaction)是访问和更新数据库的程序执行单元;事务中可能包含一个或多个sql语句,这些语句要么都执行,要么都不执行。作为一个关系型数据库,MySQL支持事务。 逻辑架构和存储引擎 如上图所示,MySQL服务器逻辑架构从上往下可以分为三…
mysql主从复制
基础思维导图 常见架构 主从复制原理 对于主从来说,通常的操作是主库用来写入数据,从库用来读取数据。这样的好处是通过将读写压力分散开,避免了所有的请求都打在主库上。同时通过从库进行水平扩展使系统的伸缩性及负载能力也得到了很大的提升。 但是问题就来了,读从库时的数据要与主库保持一致,那就需要主库的数据在写入后同步到从库中。如何保持主库与从库的数据一致…
下单实现分布式锁
最近一直在优化下单部分,今天优化了一下redis的加锁方式。 为了防止每个下单用户重复点击而造成二次提交,在下单的时候会给每个用户加一把锁。 加锁代码实现: $result = redis()->set($key, Context::get('request_id'), ['nx', 'ex' => 10]) return $resul…