- 博客(15)
- 收藏
- 关注
原创 内存溢出捕捉,及处理
项目场景:在原有的基础上追加excel数据描述:分批导进数据,从而减少内存的消耗问题描述:提示:导出数据还是会出现内存溢出原因分析:提示:这里填写问题的分析:例如:Handler 发送消息有两种方式,分别是 Handler.obtainMessage()和 Handler.sendMessage(),其中 obtainMessage 方式当数据量过大时,由于 MessageQuene 大小也有限,所以当 message 处理不及时时,会造成先传的数据被覆盖,进而导致数据丢失。解决方
2022-01-21 11:09:29
1010
原创 kafka的windows安装使用
Kafka前置操作,安装Zookeeperzookeeper的作用Broker和Topic注册:分布式部署,需要一个东西来管理,那个就是Zookeeper,broker节点的维护,topic话题的分区情况维护都是Zookeeper记录的。生产者和消费者的负载均衡:生产者需要将消息合理地发送到这些分布式的Broker上。记录消费者组和分区的关系记录话题分区上的消费进度消费者的注册安装下载安装包 http://zookeeper.apache.org/releases.html#downl
2022-01-04 14:57:45
978
原创 redis面试与技术分享
先带着问题来看这篇文章。1.频繁请求的数据,mysql有些吃不消,有没有东西可以帮mysql缓解?回答:key-value型数据库redis,由于redis数据是存在缓存(哈希结构存储数据),IO多路复用与单线程(事件处理),可以将mysql常用不变更的数据存进redis,那就无须再差数据库。2.redis是可以存什么类型的数据?回答:String:这是最简单的类型,就是普通的 set 和 get,做简单的 KV 缓存。Hashe:这个是类似 map 的一种结构,这个一般就是可以将结构化的数据,
2021-12-28 16:55:21
689
原创 windows下docker配置xdebug
启动配置设置1.设置php.ini文件配置2.修改ini文件的xdebug3.启动nginx和php的容器4.配置phpstrom端口号5.配置对应服务器映射项目位置对应本地项目位置
2021-12-23 09:30:55
1274
原创 http面试题,三次握手四次挥手
1.三次握手浏览器会发一个序列号给服务器,当服务器知道后根据对应序列号,通知浏览器,后续浏览器也ok返回ack码通俗点:浏览器第一次握手作试探,试探成功后,两边做一下反馈。疑惑:为什么三次握手必须是三次呢?第一种情况:假如只有一次,浏览器发信息过去服务器,服务器能不能通信都不知道,那样不就浪费浏览器资源。第二种情况:假如两次,假设这种情况 ↓1.浏览器发信息过去服务器,服务器响应很慢,浏览器就将当次的请求作废了。作废的请求,浏览器是不认账的,所以后续服务器再请求过来,相当于浪费服务器资源了。
2021-09-14 16:45:50
1493
原创 PHP百度智能云调用,人脸识别接口
类的介绍HttpUrl方法:用于拼装url,发送请求;getAccessToken方法:用于获取accessToken,判断token是否过期,过期就再次获取;prepareToken方法:用于新建accessToken数据;faceRegister方法:人脸注册方法;faceDelete方法:删除人脸;faceFind方法:人脸查询。这些只是封装好的部分方法,具体返回的数据请参考文...
2020-04-10 17:45:16
746
原创 搭建本地php环境XAMPP+MYSQL+PHP
搭建本地php环境XAMPP+MYSQL+PHP每次重装一次电脑,都要配一次环境,这是我第一次写博客,我就写写我使用tp5框架前搭建的本地环境。所需软件:phpstrom8.0.3XAMPPNavicat成功安装XAMPP 我先默认大家已经装好XAMPP软件,启动Apache服务,大多数人的Apache的端口号通常都会被占用,所以要修改端口 点击图片上的蓝色栏 ...
2019-12-02 16:21:28
169
原创 数据库设计规范
数据库命名规范数据库基本设计规范数据库索引设计规范数据库字段设计规范数据库SQL开发规范数据库操作行为规范数据库命名规范规范一:所有数据库对象名称必须使用小写字母并用下划线分割。原因: mysql大小写敏感,全部命名小写方便开发。例子:不同数据库名DbName 和 dbname是两个不同数据库。规范二:所有数据库对象名称禁止使用MySQL保留关键字。原因:语句识别不了,如...
2019-10-28 22:41:27
274
原创 项目优化方案
项目优化方案项目的优化有很多种,有前端页面的优化,有后端代码及数据库的优化,还有更深一层系统的优化。首先我们先想一想,为什么要优化?我认为啊,无非是一个,用户体验差;而差呢,可能是因为页面渲染慢,用户请求处理速度慢。而针对这些问题,我们也想过很多种方案。前端的优化使用前后端分离开发,静态文件就是静态文件,不要涉及到后台的操作。如今有很多框架都实现mvc的架构,这也有他的优势,开发和管理都...
2019-10-23 20:44:41
2102
原创 使用mysql索引要注意的几个问题
1、设置索引会加快查询的速度,但也降低了写入的速度。因为索引字段会生成一个保存索引的表,在插入表的同时又插入索引生成的表。2、同时索引的字段,不要设置重复值多的字段(例如性别字段),当你查找一条数据,mysql先找索引表,根据索引表筛选后,再去主表查询,如果索引的字段重复值超过十分之一(大概),mysql会主动变成查询全表数据(‘like%’是使用索引查询的,但超过一定的量,他就不走索引了,所以...
2019-07-21 00:39:54
239
原创 ThinkPHP 5.0中validate对数据的验证
thinkphp 5.0对提交数据的特有验证thinkphp5.0对于提交数据而言,有他属于自己特有的验证方法。可以减少编写在提交表单的时候前端js验证。下面我来说说他是怎样验证用户提交的数据。首先我们在对应模块下,创建一个文件夹用于放验证文件。例如:我在common模块下创建validate(验证)文件夹,再在文件夹下创建Category.php(对于添加到Category数据表的验证)。...
2019-05-05 21:11:58
917
原创 基于ThinkPHP框架小程序获取微信用户信息并将存进数据库
基于ThinkPHP框架小程序获取微信用户信息并将存进数据库场景描述:在微信小程序中,我们可能用到很多种登陆方式,例如用手机作为标识登陆亦或者用微信信息作为标识登陆(但这写都要看你的项目需要),在这里我说一下如何使用微信信息作为标识登陆。编程思路:分三步走,第一步微信信息获取发送给后台-》第二步解密微信信息验证数据库-》登陆成功保存缓存并且更新token(单点登陆)小程序前端处理//调...
2019-05-05 16:07:41
2718
原创 ThinkPHP5在页面中内容的转换结合common.php文件
使用ThinkPHP5特有的方式能修改页面的内容在视图输出中,我们需要转换某些内容:转换时间戳截取内容对内容的判断后修改对内容的修改转换时间戳{$vo.create_time|date=‘y-m-d h:i:s’}将时间戳修改成2018-06-07 02:10:20截取内容{$vo.content|mb_substr=0,10,‘utf-8’}将内容截取,从第0个字符到第10...
2019-05-05 15:25:45
526
原创 【PHP】分享一个基于ThinkPHP3.2获取前端数据,并且过滤
在使用tp3的时候,常常用到对于前端传过来的数据进行验证,但tp3这又在model里才会有数据验证层,没有像tp5那样有一个用于作为验证的验证层,所以我写了一个公共函数,用于tp3的数据验证。//例子<?php//数组中第一个参数为提示语,第二个为规则$rule['name'] = array('姓名不能为空|姓名必须多余5个字符', 'isRequire|minLength:5)...
2019-03-27 14:29:39
1612
原创 在ThinkPHP5.0打造一个专属短信接口
我们在网页登录、手机登录的时候,常常会用到短信来验证。所以我想分享我是怎么封装一个短信接口。这里,我先罗列我打造短信接口的文件和环境:编写文件:PhpStorm文件:thinkphp_5.0.20.zip(http://www.thinkphp.cn/down/1241.html)SUBMAIL_PHP_SDK-master.zip(https://github.com/dev-s...
2018-10-09 11:23:53
1357
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人