- 博客(57)
- 资源 (2)
- 收藏
- 关注
原创 豆包刷题【易】-72多米诺骨牌均衡状态-第1题
每过一秒,被推向左边或右边的骨牌会将左边或右边的相邻骨牌推倒。当一个骨牌,其左边倒向它的骨牌数目与其右边倒向它的骨牌数目相等时,由于力的平衡,该骨牌将依然保持竖立。多米诺骨牌游戏规则非常简单,将骨牌按一定间距的尺寸排成单行,或分行排成一片。推倒第一张骨牌,其余发生连锁反应依次倒下,或形成一条长龙,或形成一幅图案。如果保持竖立的骨牌数目不为 0,下一行输出保持竖立的骨牌的位置,骨牌位置从 1 到 n。给定小 A 最初推骨牌的方向,求出最后依然保持竖立的骨牌数目和位置。“L”,第 i 个字符将要被向左推。
2024-12-12 17:07:31
217
转载 DevOps知识库
06-Linux磁盘管理与文件系统(8)11-iptables-入门到精通(5)02-Linux文件目录管理命令(4)03-Linux Shell基础(4)10-Linux-互联网服务基础(3)05-Linux定时任务(1)07-Linux系统优化(2)08-Linux网络基础(2)09-Linux进程管理(1)Python-知识储备(12)04-Linux通配符(8)分布式存储Glusterfs。01-Linux基础(4)glusterfs常用命令。Redis基础与进阶(5)ansible入门到精通。
2024-12-11 17:12:41
43
原创 研究微信红包分配算法之Golang版
今天来看一下红包的分配,参考几年前流传的微信红包分配算法,今天用Golang实现一版,并测试验证结果。微信红包的随机算法是怎样实现的?
2024-12-11 15:57:39
368
原创 Redis
Redis 哨兵是一种用于高可用性的解决方案,它可以监控 Redis 主从复制模式下的主节点和从节点,发现节点故障,并自动进行故障转移,保证 Redis 系统的稳定性和可靠性。Redis 哨兵机制由多个相互独立的进程组成,这些进程使用 TCP/IP 协议相互通信,实现 Redis 节点的监控和故障转移。sentinel:主进程,用于监控 Redis 节点的状态,并执行故障转移操作。monitor:哨兵进程,用于监控 Redis 的主节点和从节点是否正常工作,并在需要时通知其他哨兵进程和客户端。
2024-02-27 01:17:30
741
原创 Kafka
消息队列(Message Queue,简称MQ),指保存消息的一个容器,本质是个队列。消息(Message)是指在应用之间传送的数据,消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,有消息系统来确保信息的可靠专递,消息发布者只管把消息发布到MQ中而不管谁来取,消息使用者只管从MQ中取消息而不管谁发布的,这样发布者和使用者都不用知道对方的存在。
2024-02-27 00:00:52
693
原创 Docker与K8S
Docker Swarm是Docker公司推出的用于管理Docker集群的工具,可以将多个Docker节点组织成一个单一的虚拟主机,实现对Docker资源的统一管理和调度。集群管理:Docker Swarm可以将多个Docker节点组织起来,形成一个统一的虚拟主机,用户可以通过一个入口统一管理这些节点上的Docker资源。服务编排:Docker Swarm提供了一套丰富的API,可以通过定义声明式配置文件,自动完成复杂的服务部署、扩缩容和升级等操作。
2024-02-26 23:23:23
1603
转载 DDD领域驱动设计-设计规范-Ⅵ
不以规矩,不能成方圆。 -战国·邹·孟轲《孟子·离娄章句上》1. 前言为什么要使用DDD领域设计?请参考以下博客:《万字长文,结合电商系统说明DDD》DDD领域驱动设计,对比(dao+service)的脚本式编程,主要还是将以前的脚本代码拆散,以实体为载体,协调各个模块实现业务功能。DDD领域设计有如下好处:强调实体的概念,将现实世界与软件系统关联...
2021-11-01 16:11:09
643
转载 结合电商支付业务一文搞懂DDD
仅用于学习笔记,感谢大佬分享!作者范钢,曾任航天信息首席架构师,《大话重构》一书的作者。本文结合电商支付场景详细描述了领域驱动模型的实际应用。2004 年,软件大师 Eric Evans 的不朽著作《领域驱动设计:软件核心复杂性应对之道》面世,从书名可以看出,这是一本应对软件系统越来越复杂的方法论的图书。然而,在当时,中国的软件业才刚刚起步,软件系统还没有那么复杂,即使维护了几年,软件退化了,不好维护了,推倒重新开发就好了。因此,在过去的那么多年里,真正运用领域驱动设计开发(DDD)的团队并不多。一
2021-11-01 16:05:29
268
原创 FPDF支持PDF中文水印
1.composer安装 1.composer.json添加 "require": { "setasign/fpdf": "^1.8", "setasign/fpdi": "^2.0" } 2.执行命令composer requiresetasign/fpdi,扩展安装成功后创建vendor/setasign,但此时不支持中文,需要安装支持中文的字体库--simhei2.安装字体黑体simhei 将文章最后压缩包...
2021-07-23 14:26:01
826
原创 PhpStorm使用sftp实现多项目代码自动上传服务器
注:参考版本2020.11.入口 Tools --> Deployment -->Confinguration2.Type选择SFTP,配置SSH账号,点击Apply,测试连接3.配置mapping可以一对多,即一个server对应n个mapping ,比如我的远程根目录是www,包含三个项目api、cron、manage,对应我本地开发目录t_api、t_cron、t_manage,则此处需要配置3个mapping,选择“OK”4...
2021-06-28 15:39:58
646
1
原创 如何设计秒杀系统
如何设计秒杀系统什么是秒杀秒杀场景一般会在电商网站举行一些活动或者节假日在12306网站上抢票时遇到。对于电商网站中一些稀缺或者特价商品,电商网站一般会在约定时间点对其进行限量销售,因为这些商品的特殊性,会吸引大量用户前来抢购,并且会在约定的时间点同时在秒杀页面进行抢购。秒杀系统场景特点秒杀时大量用户会在同一时间同时进行抢购,网站瞬时访问流量激增。秒杀一般是访问请求数量远远大于库存数量,只有少部分用户能够秒杀成功。秒杀业务流程比较简单,一般就是下订单减库存。秒杀...
2021-02-26 12:04:26
384
1
原创 Yii2实现让关联字段支持搜索功能的方法
直接上代码感谢 老胡哥,分享代码,记录一下,方便学习,且分享给大家https://github.com/hubeiwei/hello-yii2/blob/2.0/models/search/SettingSearch.phphttps://github.com/hubeiwei/hello-yii2/blob/2.0/modules/backend/views/setting/in
2016-10-13 19:20:50
4069
转载 mysql中alter语句中change和modify的区别
转载请注明来源:mysql中alter语句中change和modify的区别[转]以下摘自mysql5手册您可以使用CHANGE old_col_namecolumn_definition子句对列进行重命名。重命名时,需给定旧的和新的列名称和列当前的类型。例如:要把一个INTEGER列的名称从a变更到b,您需要如下操作:· mysql> ALTER TAB
2016-03-22 18:10:37
1201
转载 mysql alter 语句用法,添加、修改、删除字段等
//主键 alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);//增加一个新列 alter table t2 add d timestamp;alter table infos add e
2016-03-22 18:09:52
504
转载 MySQL复制表结构,表数据
1、复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表 这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable;来删除。 不过这种方法的一个最不好的地方就是新表中没有了旧表的primary key、Extra(auto_increment)等属性。需要自己用"alter"添加,而
2016-03-22 18:08:45
333
转载 php 引用详解
http://www.cnblogs.com/zcy_soft/archive/2011/04/12/2013264.htmlphp引用(&)详解 2009-05-13 14:30 php的引用(就是在变量或者函数、对象等前面加上&符号) 在PHP 中引用的意思是:不同的名字访问同一个变量内容. 与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容在内存中存放的
2016-02-19 14:35:08
378
转载 截取中文字符串的js方法
转载地址:http://www.cnblogs.com/ztlyz/archive/2009/08/25/1553819.html有时在显示某段文字的时候,可能会太长,影响我们页面的显示效果。如果仅是英文,那么我们可以用String.substring(start, end)函数就已经够用了。但是通常我们都会遇到既有英文,又有汉字的情况。而汉字是占用2个字节的,如果用String.substr
2016-01-15 14:28:49
3812
转载 Yii2安装教程
自己总结一下,方便自己,分享给大家哈参考这个 http://www.yiichina.com/tutorial/324这些天看了一下,发现还有很多人对yii2安装存在许多问题,在网上搜了很多资料,才发现他们都很不全面,以至于走了很多弯路,下面我把完整的安装流程介绍给大家:按照这个流程走,相信你一定可以成功!总感觉这个教程排版都很靠左,感觉这个样式排版不好的话,可以去我的博客看:
2016-01-06 17:09:15
1057
转载 js 弹出对话框3种方式
DOCTYPEhtml PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> htmlxmlns="http://www.w3.org/1999/xhtml"> head> metahttp-equiv=
2015-07-15 16:20:52
418
原创 Windows下CURL扩展无效之终极解决办法
最近安装了一个opencart的B2C电商网站,网站需要开启CURL扩展,参考网上方法木有成功,最后研究了很久,现在整理出来,和大家分享一下,希望大家少走弯路。 不废话,直接来干货!操作分四步: 1、启动配置文件php.ini文件php_curll.dll扩展,至于配置文件php.ini的文件路径根据各位的安装环境而定,我的目录是”D:\Develop\PHP\“下
2015-05-08 17:39:11
3909
转载 win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
转载地址:http://www.jb51.net/article/53787.htm作为一个phper,基础的php开发环境的配置是最基本的本事了,今天我们来看下在win7 64位系统中,如何配置php的开发环境呢一 :准备阶段1:phpphp-5.5.13下载链接:http://windows.php.net/downloads/releases/php-5.
2015-05-04 13:45:01
664
转载 编码之道:取个好名字很重要
转载地址:http://kb.cnblogs.com/page/517741/ 我们在项目开发中,接触到的变量、函数、类多数都是项目自己定义的,往往都是为了解决一些特定的领域的问题,引入了各种各样的概念,代码里面的名字就对应着问题领域或方案领域的这些概念。所以,对于一个命名良好、代码规范、设计简洁的系统,要想非常快的理解一个系统,最直接的方式就是RTFC(Read The
2015-03-31 13:44:22
398
转载 ApacheBench的简单实用
ApacheBench是 Apache附带的一个小工具,专门用于 HTTP Server的benchmark testing,可以同时模拟多个并发请求。 需要针对web做压力测试,所以简单学习了一下,并做个记录。 使用的环境是centos5.5,使用yum安装apache,ab工具在/usr/bin目录下:[root@nginx1 ~]#
2015-02-27 15:00:18
463
转载 php基础部分
php学习至今一年有余,笔记积累挺多的,也挺杂的,写篇文章整理一下吧。php基础部分 PHP 输出文本的基础指令:echo 和 print。echo和print的区别 echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)echo 输出一个或者多个字符串。print 只能打印出简单类型变量的值(如int,string)
2014-12-18 14:49:58
626
转载 SQL Server日期函数
sqlserver日期函数SQLServer时间日期函数详解,SQLServer,时间日期,1. 当前系统日期、时间 select getdate()2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 select dateadd(day,
2014-12-17 14:18:58
663
转载 【原】js实现复制到剪贴板功能,兼容所有浏览器
原文地址:http://www.cnblogs.com/PeunZhang/p/3324727.html
2014-10-22 10:22:01
802
转载 HTML5的geolocation 浏览器定位
GoogleMap//获取页面positionInfo 用于显示位置组件var positionInfo;window.onload = function (){console.log("进入初始化。。。。!");positionInfo = document.getElementByIdx_x("positionInfo");//判断浏览器是否有geolocati
2014-09-22 10:06:00
749
转载 css浮动层垂直水平居中固定兼容浏览器
.box{ border:1px solid #000; width:200px; height:200px; left:50%;top:50%; margin-left:-100px;margin-top:-100px; position:fixed; _position:absolute; _top:expressi
2014-09-22 10:03:30
618
转载 各种浏览器url最大长度限制
虽然HTTP协议的RFC规范并没有详细规定URL的最大字符长度限制,但实际上,在浏览器或者服务器中总会存在限制的。本文中说所的字符是指ASCII字符。微软 Internet Explorer:微软帮助网站上说IE7之前(包括IE7)的浏览器,对URL的最大长度限制是2,083个字符。Firefox:对于Firefox1.5.x,地址栏能显示的URL最大长度是65,536个字
2014-09-22 10:00:30
14391
转载 html浏览器选择执行判断浏览器种类
条件注释判断浏览器 除IE外都可识别 所有的IE可识别 仅IE6可识别 IE6以及IE6以下版本可识别 IE6以及IE6以上版本可识别 仅IE7可识别 IE7以及IE7以下版本可识别 IE7以及IE7以上版本可识别 仅IE8可识别 仅IE9可识别项目范例说明![if !IE]
2014-09-22 10:00:27
716
转载 微信分享好友,朋友圈
/ 分享function shareFriend() { WeixinJSBridge.invoke('sendAppMessage',{ //"appid":window.shareData.appid, "img_url":window.shareData.imgUrl,
2014-09-22 09:55:53
860
转载 js刷新页面方法大全
本文介绍下,用js刷新当前页面的几种方法,包括reload方法、replace方法、自动刷新方法等。有需要的朋友参考下吧如何实现刷新当前页面呢?借助js你将无所不能。1,reload 方法,该方法强迫浏览器刷新当前页面。语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。t
2014-09-10 12:23:03
659
转载 十步解决php utf-8编码(转贴)
十步解决php utf-8编码(转贴)php用UTF-8总结:1、php文件本身必须是UTF-8编码。不像Java会生成class文件,避免这个问题2、php要输出头:header(”Content-Type: text/html; charset=UTF-8″)3、meta标签无所谓,有header所有浏览器就会按header来解析4、所有外围都得用UTF8,包括数据
2014-09-09 10:35:45
1693
转载 php 的加密函数 md5,crypt,base64_encode 等使用介绍
不可逆的加密函数为:md5()、crypt() md5() 用来计算 MD5 哈稀。语法为:string md5(string str); crypt() 将字符串用 UNIX 的标准加密 DES 模块加密。这是单向的加密函数,无法解密。欲比对字符串,将已加密的字符串的头二个字符放在 salt 的参数中,再比对加密后的字符串。语法为:string crypt(string str, str
2014-09-09 10:18:56
746
转载 android二维码实现原理
二维码的定义:二维码 (2-dimensional bar code),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的。在许多种类的二维条码中,常用的码制有:Data Matrix, Maxi Code, Aztec, QR Code, Vericode, PDF417, Ultracode, Code 49, Code 16K等。 1
2014-09-09 10:03:38
1860
转载 php中const与define的使用区别 详解
1、const用于类成员变量定义,一旦定义且不能改变其值。define定义全局常量,在任何地方都可以访问。2、define不能在类中定义而const可以。 3、const不能在条件语句中定义常量if (...) { const FOO = 'BAR'; // invalid } but if (...) { define('
2014-09-09 10:00:46
551
转载 接口和抽象类
接口和抽象类有什么区别你选择使用接口和抽象类的依据是什么?接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象。抽象类表示的是,这个对象是什么。接口表示的是,这个对象能做什么。比如,男人,女人,这两个类(如果是类的话……),他们的抽象类是人。说明,他们都是人。人可以吃东西,狗也可以吃东西,你可以把“吃东西”定义成一个接口,然后让这些类去实现它.所以,在高级语言
2014-09-04 12:39:51
528
转载 百度实时推送代码 curl
百度实时推送代码, php curl post方法推送给百度, 百度实时推送有助于我们发布的新文章被百度及时收录. 在另一篇文章"php 实时推送代码" 中用的是fsochopen的方法来实时推送sitemap的, 但是有的主机因为考虑到服务器安全的因素关闭了fsochopen函数, 那么下面的curl推送代码就派上用场了. function tobaidu($url){ $
2014-09-04 09:48:52
1996
转载 INSERT IGNORE 与INSERT INTO的区别
INSERT IGNORE 与INSERT INTO的区别就是INSERT IGNORE会忽略数据库中已经存在 的数据,如果数据库没有数据,就插入新的数据,如果有数据的话就跳过这条数据。这样就可以保留数据库中已经存在数据,达到在间隙中插入数据的目的。eg:insert ignore into table(name) select name from table2
2014-09-04 09:07:52
614
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人