- 博客(40)
- 收藏
- 关注
转载 idea控制台输出乱码。编辑器设置一通后依然没有效果。那有可能就是cmd编码跟idea编辑器的编码不同步造成
以下就是如何设置cmd的编码为utf8。
2023-09-19 14:32:12
192
原创 redis分布式锁(基于PHP实现)
具体实现代码/** * 要求 * 安全性(互斥性):在任意时刻,当且仅当只有一个客户端能持有锁 *活性 A(无死锁):即使有一个客户端在持有锁的期间崩溃而没有主动解锁,也能保证后续其他客户端能加锁 *同一性:加锁和解锁必须保证为同一个客户端 *活性 B (容错性):只要大部分的 Redis 节点正常运行,客户端就可以加锁和解锁 */class DistributedLock{ /** * @param $lockKey key * @param $requ
2021-06-08 15:43:12
380
原创 PHP设计模式之策略模式
定义:策略模式是指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。将一组特定的行为和算法封装成类,以适应某些特定的上下文环境。eg:比如支付模块。支付类肯定
2021-06-01 17:27:39
197
原创 golang 页面静态化
Golang 页面静态化不多bb,直接上代码。项目结构main包代码package mainimport ( "fmt" "os" "path/filepath" "strconv" "text/template" "time")type News struct { Id int `json:"id"` Auth string `json:"auth"` Title string `json.
2021-05-13 14:57:36
807
原创 修改mysql 数据库表字段字符集
ALTER TABLE 表名 MODIFY 字段 VARCHAR(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
2021-04-19 18:19:15
496
原创 idea debug 无法启动报 FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERRO
Run没问题,Debug就报下面错误:FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_LOAD(196)ERROR: transport library not found: dt_socketERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_LOAD(509)JDWP exit e
2020-11-26 13:35:09
6215
3
原创 TP5中出现 no input file specified 解决办法
在public的.htaccess 改成<IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]</IfModule>就是
2020-11-12 13:42:24
158
原创 golang idea 能导入包,不能自动提示导入包的调用方法
golang项目能正常运行,idea也能自动导入包,但是idea无法智能提示导入包的调用方法,且显示红色。具体设置如下勾选上点击应用ok即可
2020-07-14 10:28:04
3935
1
原创 golang实现rabbitmq消费者模式 断线重连机制
在连接第三方组件的时候实现断线重连机制是很有必要的事情,因为你不知道在啥时候他突然就抽风挂掉了。以rabbitmq为例,在突然面对大流量写入,或者连接数被打满(比如在资讯,直播等模块使用rabbitmq(惨痛的教训))mq就挂掉了,如果你的消费者没有重连机制,你的消费者进程在mq挂掉后,也会自动挂掉。然后等运维修复了mq,但是你的消费者进程却无法再次连接消费了,这就有点恐怖了。要不就写个shell 脚本 ,每隔30S或者1分钟去检测进程活度,挂掉了就重启消费者。当然最简单的还是在消费者的代码里实现断线重连机
2020-06-23 16:52:14
7056
原创 go websocket 单聊 推送(群聊)实现
直接上代码了在main方法里进行端口监听在server包实现具体逻辑,首先定义3个结构体分别是所有客户端管理者(申明了有两个map 这两个map分别是绑定的是所有客户端连接,和单个客户端连接),后面两个分别是单个客户端和上传数据类型接下来就是具体的实现逻辑这只是一个demo示例,其中只开了一个read不断读取的协程,没有开启write协程,让他们通过管道来通...
2020-04-29 10:00:34
1166
原创 记一次批量插入千万级(php)
业务需求:需要将某一张表内(a)的某个字段进行拆分,然后插入到一张新的表中(b)a表数据大概有3万多条,但是对其中的字段进行拆分后大概有1000多万的数据(1)要防止内存被耗尽,从a表查询出来的3万多数据,按照 每组100 进行分组 php 函数 array_chunk(2)然后循环遍历,每组100个数据,批量写成insert into () values() sql 语句,添加事...
2020-03-02 12:03:31
533
转载 Laravel5.5安装Laravel-ide-helper IDE 智能提示插件
转载地址https://blog.youkuaiyun.com/leejianjun/article/details/79677470
2019-12-27 15:37:08
210
转载 laravel 多环境 配置 读取.env 文件
项目开发中,通常会有以下环境local (本机) dev (开发环境) -> for 其他开发人员用,如 iOS,Android,Web testing (QA 环境) staging (仿真环境) product (线上环境)这些环境的配置通常都不尽相同,Laravel 可以通过环境变量 APP_ENV 的值来加载不同的 .env 配置文件。 不同环境配置文件如下:.en...
2019-12-05 10:14:33
1298
原创 go 跨平台编译
原帖地址https://blog.youkuaiyun.com/panshiqu/article/details/53788067
2019-02-13 15:16:32
1855
转载 talnet
linux telnet 下载链接 https://blog.youkuaiyun.com/doubleqinyan/article/details/80492421
2018-12-12 19:14:15
4565
原创 阿里云两台服务器之间配置 数据库主从 ,踩坑
之前配置的mysql 数据库的主从是 配的公网的ip,导致数据库同步不够及时 ,应该用内网ip 配置主从。
2018-11-20 12:05:21
1896
转载 线程与进程的区别与联系
1.定义 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源. 2.关系 ...
2018-08-30 14:42:06
223
原创 nginx 作为代理服务器 如何 反向代理到 apache 服务器具体操作
选择一个nginx作为一个代理服务器;反向代理到apache 服务器上 (都是从阿里云买的服务器)具体操作 如图所示不需要添加根目录文件 也就是没有了 root而 apache 服务器的配置无需改动 ,执行效果如下另外附上如何做负载均衡,根据服务器的性能 配置服务器池 ,操作指令为upstream back{server ip+端口号 weight = 1;s...
2018-08-30 10:52:12
2747
原创 转载大佬的关于apache服务器最大连接数配置的问题,亲测有效额!
链接地址 https://blog.youkuaiyun.com/h330531987/article/details/75040487修改过后 利用ab 压力测试结果图
2018-08-21 16:55:37
471
原创 apache 上https证书配置
开发环境是用 lamp 一键安装的。在阿里云买的通配符证书,直接截图配置了,其实阿里上有详细的指导文档打开后,找到将#注释掉,然后再打开添加最后就是在访问一下纯傻瓜式的操作,给自己加点印象 ,也给刚出来的同学 给点提示 。。...
2018-08-01 10:30:08
357
原创 ab压力测试
服务器环境是lamp,首先直接进入apache的bin目录下执行 下面语句其中(-n发出1000个请求,-c模拟100并发 后面是测试url,其中可以加上 -t 表示多长时间),结果是带参数 ...
2018-07-25 14:50:43
597
原创 查询mysql 数据库 如何按年月日分组查询
以下表为例按 年下载按月下载其中的‘%c’为 月份的数字 除去了 05 中的 0 ;使用%m 则为05同理 天就不写了以下修饰符DATE_FORMAT(date,format) 根据format字符串格式化date值。下列修饰符可以被用在format字符串中: %M 月名字(January……December) %W 星期名字(Sunday……Saturday) %D 有英语前缀的月份的日期(1s...
2018-05-25 09:36:15
10650
原创 phpexcle插件的使用
以 tp5框架为例,直接上图(1)下载phpexcel,这个自行百度,我这边是从github上下载的将phpexcel 文件复制到 tp5框架的extend目录下千万不要加命名空间,接下来就是代码引入部分接下来 就可以访问这个方法,就会导出数据嘿嘿,就是有点丑,不要介意...
2018-04-13 16:01:14
473
原创 子类父类 继承问题
先看一个题目输出结果是啥?其实这道题考察的是 子类继承父类 (那些能继承 和哪些不能继承 protected 和private 区别)以及子类重写父类方法;当在子类中调用父类的方法时,其实应该访问的是父类中熟悉和方法,但是其中的name ,age 以及 read方法被子类重写覆盖,而hobby是私有属性不会被重写覆盖 ,所以输出的结果是...
2018-03-09 11:30:02
552
原创 如何防止短信验证被盗刷
在php聊天群里,有位同学说 他们的5000块钱的短信,两天被刷完了!,问群里大佬怎么办!就一般的防止短信验证盗刷而言(通过修改手机号修改验证码),我们通常的防止短信被滥发,就是(1)限制每个手机号的发送次数类似://检查发送次数$key = "mobileReg_sms_send_times:" . $mobile . ":" . date("Ymd");$smsSendTime...
2018-03-08 11:22:18
5987
2
原创 限制短信发送次数 ,以及定时发送
//限制短信发送次数<?phpclass Api_Sms{ const EXPIRE_SEC = 1800; // 过期时间间隔 const RESEND_SEC = 60; // 重发时间间隔 const ONE_DAY_FREQ = 5; // 每日向同一个手机号发短信的次数 const ONE_DAY_IMEI_COUNT = 3; // 每日向同一个手机号...
2018-03-02 14:59:52
4035
原创 php写的中奖代码
<?php //设置中奖概率 $prize_arr = array( 0=>array( 'id'=>1,'prize'=>'现金500W','v'=>1 ), //概率为1/200 1=>array( 'id'=>2,'prize'=>'iphone7','v'=>5 ), 2=>array...
2018-03-02 13:48:03
744
转载 利用jquery.more.js滚动实现更多加载
js部分代码<div id="vlist" class="bus94 m-0-auto"> <ul class="busbox ft12"> <li class="headh2">消费确认码:<span class="checkcode"></span>
2018-02-23 10:29:06
1847
原创 如何按名字首字母排序
只需一个sql语句就能解决的事SELECT * FROM `users` ORDER BY CONVERT( name USING gbk ) ASC
2018-02-07 11:36:09
1609
1
原创 MySIAM 与innodb的差异
比较项MyISAMInnodb备注存储文件数据和索引分别存储,数据.myd,索引.myi。支持文件级别的拷贝移动。数据和索引集中存储。.ibd。不支持文件级别的移动,还有其他的相关文件。 文件移动支持不支持 记录存储顺序
2018-02-06 15:51:42
305
原创 经纬度计算距离的方法
//计算距离 //经度 ,纬度 经度,纬度 public function getdistance($lng1, $lat1, $lng2, $lat2) { // 将角度转为狐度 $radLat1 = deg2rad($lat1); //deg2rad()函数将角度转换为弧度 $radLat2 = deg2rad($lat2);
2018-02-06 14:10:38
525
原创 面试时候遇到的一个问题:禁用cookie后还能使用session吗?
答案是肯定的,不然php怎么会被称为世界上最好的语言呢?(对这句话持中立态度)!具体解决方法: 1. 设置php.ini配置文件中的“session.use_trans_sid = 1”,或者编译时打开打开了“--enable-trans-sid”选项,让PHP自动跨页传递Session ID。 2. 手动通过URL传值、隐藏表单传递Session ID。
2018-01-15 09:43:00
505
原创 过年了,又要处理高并发了
涉及抢购、秒杀、抽奖、抢票等活动时,为了避免超卖,那么库存数量是有限的,但是如果同时下单人数超过了库存数量,就会导致商品超卖问题。sql1:秒杀if(库存数量 > 0){ //生成订单... //sql2 //库存-1}当没有并发时,上面的流程看起来是再正常不过了,假设同时两个人下单,而库存只有1个了,在sql1阶段两个人查询到的库存都是>0的,于是最
2018-01-08 10:55:50
596
原创 微信开发封装好的一些类
微信支付类代码class WxpayService{ protected $mchid; protected $appid; protected $key; public function __construct($mchid, $appid, $key) { $this->mchid = $mchid; // 微信支付商户号 Partn
2018-01-03 15:27:43
760
转载 tp5框架的获取器
tp5的获取器功能很强大,一下子就喜欢上了,你可以在模块里任意定义表里不存在的字段,在前台调用很方便。话不多说直接上demo: 1.命名规则 get + 属性名的驼峰命名+ Attr 直接就能在model里定义:(本示例在UserModel里定义的(User.php文件)) eg1: protected function getSexAttr($value) {
2017-12-29 16:57:36
1226
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人