cde

PHP事件机制

你说的曾经没有我的故事 提交于 2020-10-24 17:23:05
先用 3W1H(who what why how) 分析法的思路来解释一下 事件机制 。 更重要的是, 这个有什么用? 正常 的程序执行, 或者说人的思维趋势, 都是按照 时间线性串行 的, 保持 连续性 . 不过现实中会存在各种 打断 , 程序也不是永远都是 就绪状态 , 那么, 就需要有一种机制, 来处理可能出现的各种打断, 或者在程序不同状态之间切换。 事件机制发展到现在, 有时候也算是一种预留手段, 根据你的经验在需要的地方 埋点 , 方便之后 打补丁。 swoft 的事件机制基于 PSR-14 实现, 高度内聚简洁。 由三部分组成: EventManager: 事件管理器 Event: 事件 EventHandler / Listener: 事件处理器/监听器 执行流程: 先生成 EventManager 将 Event 和 EventHandler 注册到 EventManager 触发 Event, EventManager 就会调用相应的 EventHandler 使用起来就更加简单了: namespace SwoftEvent; class ListenerQueue implements IteratorAggregate, Countable { protected $store; /** * 优先级队列 * @var SplPriorityQueue */

OSChina 周日乱弹 —— 描述我的三种日常状态

霸气de小男生 提交于 2020-10-20 02:01:11
Osc乱弹歌单(2020)请戳( 这里 ) 【今日歌曲】 @ 薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《雾 缀じた街 ふたつのかげ》- Porkkana 手机党少年们想听歌,请使劲儿戳( 这里 ) @ vivaYao :因为天气原因,本来计划好的出游取消了。还是安心在家撸代码吧 出游去哪里啊? 家里和水族馆似的, 一遍看着鱼儿游来游去, 一遍写代码不挺好的么。 @ 冰峰雪座 :开源大道隧道 这么大的水救人要紧啊! 这么大的灾难都不知道该如何应对, @ 冷暖zi知 :哪天当家里出现变故需要钱的时候,我不知道怎么面对。 这个时间还真不确定, 毕竟生活随机性太高了, “当你张开双臂迎接生活的时候” 万一再遇上失业, 本来不富裕的生活雪上加霜。 @ 魔法师的世界 :失业两个多月,程序员生涯可能走到尽头了 。 什么时候能成为自己想成为的人呀, “你只需要和进宫的步骤一样就行了。” 那么工资2w可以金融自由了么? @ 罗马的王 :程序猿啊~确实是非常屌丝的群体,穿着打扮就像刚种完地回来,就差肩上抗个锄头。拿着两万块钱的工资还是连饭补都算上,精确到元,去星巴克喝一杯拿铁能坐5个小时,要不就亏了。日复一日的写着增删改查,关键是总觉得自己很牛b,碰到女人就暗示俺是写代码的,其实女人心里想这人怎么这么屌丝啊? @ Daniel-01 :屁,拿着2W的工资的人,走路都有风好不

Anti-Bot丨YUNDUN 云WAF集成式行为验证码

◇◆丶佛笑我妖孽 提交于 2020-10-03 21:37:37
验证码是阻挡机器人攻击的有效实践,但同时也波及正常的用户体验。如何通过用户的"行为特征",简化人的验证操作,是提升用户访问体验的关键所在。 传统验证码所激化的矛盾主要表现集中在: 01 安全性低 几乎任何的传统验证码都可以通过字符字库识别、深度学习识别技术轻松破解; 02 用户体验差 为了提高安全性,需要加大验证码图形的识别难度,必然会牺牲用户体验,这是传统验证码技术的概念造成的; 为适应当前“提倡交互”的互联网发展趋势,优化用户体验,行为式验证技术应运而生,有效改良传统验证码 用户体验不佳、安全性低、迭代性差难以升级 等矛盾点。 01 基于行为的用户体验 传统验证码依赖用户键入计算机展示的图形内容以实现人机验证,尤其影响移动端用户的访问体验。YUNDUN行为式验证码以用户产生的行为轨迹为依据,进行机器学习建模,结合访问频率、地理位置、历史记录等多个维度信息综合判断,快速、准确的返回人机判定结果,最大程度简化用户的操作。 通过点触校验,避免繁琐的“码字”过程; 图片由后端服务器预生成,加快响应速率; 后端部署至边缘云节点,由集中式验证改为分布式验证,就近验证,优化海外用户体验; 加强用户行为校验,拦截极端非正常行为; 加强环境检测,根据评分动态返回验证结果; 02 联动WAF的坚固防御 依托“ 安全加速,智能守护 ”的产品服务理念,YUNDUN-WAF加注行为式验证码

Apache 2.4的反向代理和负载均衡

此生再无相见时 提交于 2020-10-02 10:54:04
文章内容参考自官方文档: http://httpd.apache.org/docs/2.4/howto/reverse_proxy.html 像nginx一样, Apache httpd也提供了反向代理(Reverse Proxy)并能实现负载均衡(Load Balance)。 Apache httpd配置中需要开启以下模块: LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so LoadModule proxy_http_module modules/mod_proxy_http.so # 这个也要开启, 否则httpd启动报错 LoadModule slotmem_shm_module modules/mod_slotmem_shm.so # 以下负载均衡策略按需开启 LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so LoadModule lbmethod_bytraffic

win7安装fiddler无法抓取https

半世苍凉 提交于 2020-09-29 09:50:19
win7下Fiddler证书安装之后,总是无法抓取https的包;网上搜了很多方法都没解决问题,最终摸索解决方法如下: 打开Certificates generated by CertEnroll engine; 选择MakeCert,然后 ,点击OK。 重启Fiddler,就可以抓HTTPS的包了。 说明:其他常规操作参考 https://blog.csdn.net/qq_42415326/article/details/90758931 https://www.jianshu.com/p/7c6cde4b3988 来自: https://www.cnblogs.com/lelexiong/p/9054626.html https://www.jianshu.com/p/7c6cde4b3988 https://blog.csdn.net/qq_42415326/article/details/90758931 来源: oschina 链接: https://my.oschina.net/u/4334817/blog/4550074

List集合对象去重及按属性去重的8种方法-java基础总结系列第六篇

穿精又带淫゛_ 提交于 2020-09-28 17:40:39
最近在写一些关于java基础的文章,但是我又不想按照教科书的方式去写知识点的文章,因为意义不大。基础知识太多了, 如何将这些知识归纳总结,总结出优缺点或者是使用场景才是对知识的升华 。所以我更想把java相关的基础知识进行穿针引线,进行整体上的总结。 总结java中创建并写文件的5种方式 总结java从文件中读取数据的6种方法 总结java创建文件夹的4种方法及其优缺点 总结java中删除文件或文件夹的7种方法 总结java中文件拷贝剪切的5种方式 比如之前我已经写了上面的这些内容, 如果对java基础知识总结系列感兴趣的同学可以关注我的博客(文末给出我的博客地址) 。 一、本文梗概 这一篇文章我想写一下 List集合元素去重的8种方法 ,实际上通过灵活的运用、排列组合不一定是8种,可能有18种方法。 对象元素整体去重的4种方法 按照对象属性去重的4种方法 为了在下文中进行测试内容讲解,我们先做一些初始化数据 public class ListRmDuplicate { private List<String> list; private List<Player> playerList; @BeforeEach public void setup() { list = new ArrayList<>(); list.add("kobe"); list.add("james");

均值不等式链的几何证明

妖精的绣舞 提交于 2020-09-28 12:07:01
均值不等式链的几何证明 这是我们高中时所见到的不等式链的关系,接下来将用几何图形的方法进行证明。 首先,做圆 A,直径 BC,在圆上异于 BC 取一点 D,连接 DA,DB,DC,并做 DE 垂直与 BC 交 BC 与点 E。设 CE = a,BE = b,因为 ▲CDE 与 ▲DBE 相似,从而求出 DE,在▲ADE 中,DA 显然比 DE 大,所以有如下结果。 由此,我们可以得出几何平均数和算数平均数之间的关系,之后,我们对上述图形进行改进,使其可以表示四种平均数之间的不等关系。 以 AE 为半径,A 为圆心作圆A’,过点 E,A 分别做 EF,AG 垂直与 AD 交 AD 与 F,交圆A’与点G,通过相似关系可得 来源: oschina 链接: https://my.oschina.net/u/4353003/blog/4548772

图片转换jpg格式怎么操作,图片的格式可以转换吗?

点点圈 提交于 2020-08-19 03:17:44
相信大家都知道,虽说Windows系统中照片的格式是很多的,但是说到其中最常用的,兼容性最好的,最为普及的,还数jpg格式的照片,而且相比很多格式的照片,jpg格式的照片占用空间更小,也更方便使用。那么图片的格式可以转换吗?图片转换jpg格式怎么操作?下面,小编就来跟大家分享一下其中的操作技巧吧! 想要实现图片转换jpg,首先,我们需要一款可以实现图片格式转换的工具,这里为大家推荐小编常用的迅捷PDF转换器,别看它的名字是PDF转换器,实际上,这款软件可以实现多种格式之间的转换,其中也包含了图片格式的转换。 安装好迅捷PDF转换器之后,我们双击打开,然后点击上方的“图片格式转换”选项,接下来看左侧的栏目,一般这里会默认是第一个选项,也就是“图片转jpg”,如果不是的话,你就单击一下这个选项。 之后,在右侧的空白处单击一下左键,之后会弹出一个窗口,我们在这个窗口中将需要转换格式的图片添加进来。 之后看界面的下方,会有一个输出目录,这里可以设置也可以不设置,主要是保存图片的路径的,不管设置与否,当软件完成操作之后,我们都可以点击后面的“打开文件目录”迅速找到转换好的图片。 简单的几个步骤就可以完成图片转换jpg,是不是很方便呢? 来源: oschina 链接: https://my.oschina.net/u/4524402/blog/4287523

最长回文子串 and 最长回文子序列(转)

白昼怎懂夜的黑 提交于 2020-08-17 04:29:04
一、概念 1、回文(palindrome) 回文就是正读和反读都一样的字符串,如aba,abba,abcba等。 2、字符子串和字符子序列的区别 (1)字符字串指的是字符串中连续的n个字符,如abcdefg中,ab,cde,fg等都属于它的字串。 (2)字符子序列指的是字符串中不一定连续但先后顺序一致的n个字符,即可以去掉字符串中的部分字符,但不可改变其前后顺序。如abcdefg中,acdg,bdf属于它的子序列,而bac,dbfg则不是,因为它们与字符串的字符顺序不一致。再如cabbeaf,删掉‘c’、'e'、' f '后剩下的子串“abba”就是回文字符串,也是其中最长的回文子序列。 (3)最长回文子串必须是连续的,而最长回文子序列不一定连续,但不可改变先后顺序。 二、最长回文子序列 and 最长回文子串 (一)最长回文子序列 LPS(Longest Palindromic Subsequence) 方法一:递归方法 str[0...n-1]是给定的字符串序列,长度为n,假设lps(0,n-1)表示序列str[0...n-1]的最长回文子序列的长度。 1.如果str的最后一个元素和第一个元素是相同的,则有:lps(0,n-1)=lps(1,n-2)+2;例如字符串序列“AABACACBA”,第一个元素和最后一个元素相同,其中lps(1,n-2)表示红色部分的最长回文子序列的长度

Windows7右键菜单栏添加打开cmd项

筅森魡賤 提交于 2020-08-16 06:07:25
背景简介 众所周知,在Linux桌面操作系统中的工作目录窗口中,单击鼠标右键,弹出的菜单栏通常有一项“打开终端”,然后移动鼠标点击该项,就可以打开Shell窗口,在当前工作目录进行命令行操作。 但是,在Windows7操作系统默认情况下,是没有这便捷功能。若想打开Windows7的命令行cmd,就先按住键盘的 Win + R ,然后输入 cmd ,才能打开命令行窗口,必要还要切换工作目录,挺麻烦的。 幸运的是,只需通过几步简单操作,便可在Window7上拥有类似Linux的,单击鼠标右键后的弹出菜单有“打开cmd”的功能选项。 操作步骤 键盘按住 Win + R ,然后输入 regedit ,打开注册表编辑器。 在注册表编辑器左边找出HKEY_CLASSES_ROOT\Directory\Background\shell ,然后右键点击它,新建一项叫 Cmd Here 然后在 Cmd Here 项,新建一 字符串值 ,数值名称为 Icon ,数值数据为 C:\Windows\System32\cmd.exe 。该功能就用来显示cmd的小图标。 然后继续在 Cmd Here 项,新建一 项 ,名为 command ,然后在右侧双击默认项,把它的数值数据修改为 cmd 。 结语 通过上述的几步操作,便可在Window7上,单击鼠标右键后的弹出菜单有“打开cmd”的功能选项。 参考资料