自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 Python3+pygame实现的90坦克大战

Python3+pygame实现的90坦克大战年轻时玩过了特别多的游戏,所以这几天用Python3+pygame实现了一个小游戏”坦克大战“一、显示效果二、代码下面代码用到了一些素材(游戏背景音乐、图片等等),可以到 https://www.itprojects.cn/detail.html?example_id=869a7cbfd9bd4d9b23e61a4d88e39b1c 下载完整代码如下(注意:为了方便下载以及编写更简单,没有采用多模块的方式,全部代码全部放到main.py文件中)

2022-05-27 16:16:20 448

原创 使用Docker时遇到的坑与解决方法

使用Docker时遇到的坑与解决方法1. Docker 服务启动串台使用 docker-compose 命令各自启动两组服务,发现服务会串台![问题起因] 在两个不同名称的目录目录下面,使用 docker-compose 来启动服务,发现当 A 组服务启动完毕之后,再启动 B 组服务的时候,发现 A 组当中对应的一部分服务又重新启动了一次,这就非常奇怪了!因为这个问题的存在会导致,A 组服务和 B 组服务无法同时启动。之前还以为是工具的 Bug,后来才知道了原因,恍然大悟。# 服务目录结构如下所示

2022-04-29 06:12:43 4457

原创 如何保证缓存与数据库的双写一致性

如何保证缓存与数据库的双写一致性只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题?题剖析一般来说,如果允许缓存可以稍微的跟数据库偶尔有不一致的情况,也就是说如果你的系统不是严格要求 “缓存+数据库” 必须保持一致性的话,最好不要做这个方案,即:读请求和写请求串行化,串到一个内存队列里去。串行化可以保证一定不会出现不一致的情况,但是它也会导致系统的吞吐量大幅度降低,用比正常情况下多几倍的机器去支撑线上请求。Cache Aside P

2022-02-10 11:00:05 324

原创 Redis缓存和MySQL数据一致性的问题,如何高效的去解决的

Redis缓存和MySQL数据一致性的问题,如何高效的去解决的

2022-01-02 09:47:08 345

原创 何为Redis单据锁,如何防止并发重复写入的

何为Redis单据锁,如何防止并发重复写入的在整个供应链系统中,会有很多种单据(采购单、入库单、到货单、运单等等),在涉及写单据数据的接口时(增删改操作),即使前端做了相关限制,还是有可能因为网络或异常操作产生并发重复调用的情况,导致对相同单据做相同的处理;为了防止这种情况对系统造成异常影响,我们通过Redis实现了一个简单的单据锁,每个请求需先获取锁才能执行业务逻辑,执行结束后才会释放锁;保证了同一单据的并发重复操作请求只有一个请求可以获取到锁(依赖Redis的单线程),是一种悲观锁的设计;注:Re

2021-12-18 17:13:33 930

原创 什么是反射,PHP是怎么使用反射的?

什么是反射,PHP是怎么使用反射的?面向对象编程中对象被赋予了自省的能力,而这个自省的过程就是反射。反射,直观理解就是根据到达地找到出发地和来源。比如,一个光秃秃的对象,我们可以仅仅通过这个对象就能知道它所属的类、拥有哪些方法。反射是指在PHP运行状态中,扩展分析PHP程序,导出或提出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取信息以及动态调用对象方法的功能称为反射API。如何使用反射API?class person{public $name;public $gender;

2021-11-30 17:04:54 188

原创 用 Docker 搭建 PHP 开发环境,已经是常态

用 Docker 搭建 PHP 开发环境,已经是常态docker搭建php环境,因为是本地的开发环境,所以想多尝尝鲜,尽量使用高版本的软件来实现。希望能给同样有需要搭建环境的同学起到一些帮助,少踩一些坑,如果能按照这篇文章的步骤一次搞定那是最好了。先来说一下环境:Docker 18.09.2Nginx 1.17.1PHP 7.3.7XDebug 2.7.2PhpStorm 2019.1.3VSCode 1.36.11、Docker 的安装,我这里是Mac版的。这里大家直接在 Dock

2021-10-24 07:55:50 3504

原创 用php造了一个地址自动识别功能

用php造了一个地址自动识别功能地址自动识别现在普遍,特别是用在快递填写地址,姓名,手机号码的时候,会把这些按照一定的规范填写后,点击自动识别后,会自动填写到各自的input。最近也简单的实现了这个功能,给后台添加用户的时候,自动识别地址具体问题具体分析!代码实现基于laravel完成。一个laravel完整的功能得具备这些:路由route,Model, View, Controller, 我这里用的有依赖注入服务容器等功能,当然,用到地址,你首先要有地址库。。。下面来看看是如何实现的,这里我只贴出核

2021-09-30 21:31:16 706

原创 PHP内核的存储机制

PHP内核的存储机制或许你知道,或许你不知道,PHP是一个弱类型,动态的脚本语言。所谓弱类型,就是说PHP并不严格验证变量类型(严格来讲,PHP是一个中强类型语言),在申明一个变量的时候,并不需要显示指明它保存的数据的类型。比如:$a = 1; (整形) $a =“1”;(字符串)一直使用PHP,但它究竟什么,底层是怎么实现才成就了PHP这样方便快捷的弱类型语言。最近也查阅了很多书籍,还有相关博客资料,了解到了许多关于PHP内核的一些机制。php简单的理解就是一个c语言的类库,你去php.net 下

2021-09-26 10:30:21 261

原创 Redis锁解决高并发问题

Redis锁解决高并发问题redis真的是一个很好的技术,它可以很好的在一定程度上解决网站一瞬间的并发量,例如商品抢购秒杀等活动。redis之所以能解决高并发的原因是它可以直接访问内存,而以往我们用的是数据库(硬盘),提高了访问效率,解决了数据库服务器压力。为什么redis的地位越来越高,我们为何不选择memcache,这是因为memcache只能存储字符串,而redis存储类型很丰富(例如有字符串、LIST、SET等),memcache每个值最大只能存储1M,存储资源非常有限,十分消耗内存资源。而

2021-08-22 21:21:29 3678

原创 网站页面静态化,一般是这样搞的

网站页面静态化,一般是这样搞的随着网站的内容的增多和用户访问量的增多,无可避免的是网站加载会越来越慢,受限于带宽和服务器同一时间的请求次数的限制,我们往往需要在此时对我们的网站进行代码优化和服务器配置的优化。一般情况下会从以下方面来做优化1、动态页面静态化2、优化数据库3、使用负载均衡4、使用缓存5、使用CDN加速现在很多网站在建设的时候都要进行静态化的处理,为什么网站要进行静态化处理呢?我们都知道纯静态网站是所有的网页都是独立的一个html页面,当我们访问的时候不需要经过数据的处理直接就能

2021-08-08 18:20:38 6143

原创 Redis基础知识点

Redis基础知识点什么是redis?Redis 是一个基于内存的高性能key-value数据库。Reids的特点Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个va

2021-01-25 16:13:47 167

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除