- 博客(480)
- 资源 (4)
- 收藏
- 关注

原创 【PHP】自研框架QPHP,qphp框架使用
QPHP计划:1.C语言实现php连接池功能,php扩展形式2.php多线程的实现开发功能:1.qphp是一个轻量级的phpmvc框架框架执行时间:6毫秒,thinkphp执行时间:19毫秒2.支持mysql,oracle,memcache,redis3.jwt生成token,和验证4.增加简单路由功能5.新增命名空间namespace
2022-06-30 16:50:39
974
转载 【JAVA】一文读懂java的dto、dao、vo、bo、do、po、pojo
Data Transfer Object:数据传输对象,DTO用于在不同层之间传输数据,它通常用于将业务逻辑层(Service层)的数据传输给表示层(Presentation层)或持久化层(Persistence层)。DO对象通常包含了业务逻辑和数据,是业务逻辑的实体表示。Business Object:业务对象层,BO用于封装业务逻辑,它通常包含了一系列的业务方法,用于实现业务规则和业务流程。数据存储:POJO对象用于封装数据库中的数据,通常用于与数据库进行交互的ORM(对象关系映射)操作。
2024-12-19 15:54:43
123
原创 【玄幻小说】《蓝星仙途》
在一次次的历练中,林轩逐渐领悟到了修仙的真谛。他的实力在迅速提升,不仅掌握了更多的法术和技能,还锤炼出了坚韧不拔的意志和勇往直前的精神。在新的征程中,林轩和伙伴们听闻了一个古老秘境的传说,那里隐藏着无数珍贵的修仙资源和罕见的灵草。林轩凭借在遗迹中获得的古老传承,以及自己之前的刻苦修炼,成功地以精妙的法术控制住了对手,赢得了首轮比拼。他清楚,自己的路还很长,想要走出这片土地,见识更广阔的天地,还需要付出更多的努力。他深知,无论自己在修仙界取得多大的成就,那颗蓝色的星球始终是他的根,是他无法割舍的情怀。
2024-07-08 23:49:16
1168
原创 【玄幻小说】《星辰纪元:天命之轮》
他相信,只要星辰之道的光芒不灭、只要还有人愿意为了探索与超越而不懈努力、只要宇宙中的生命与文明能够和谐共存与共同发展——那么星辰之道的未来就一定充满了无限可能与希望。他意识到,尽管星辰学院与星辰联盟在各自的领域内取得了显著的成就,但面对宇宙中的种种挑战与未知,单凭一己之力是远远不够的。而林逸,这位星辰之道的传承者与星际和谐的倡导者,则被永远铭记在宇宙的历史长河中,成为了后来者学习与传承的楷模。他善于倾听不同文明的声音与诉求,尊重他们的文化传统与价值观念,同时也积极传达星辰之道与宇宙联盟的理念与愿景。
2024-07-08 09:05:42
843
原创 【PHP】实现类的无缝动态扩展,设计模式,php工厂模式应用场景,以下代码是工厂模式在框架设计中的真实使用案例代码
php工厂模式应用场景,以下代码是工厂模式在框架设计中的真实使用案例代码。
2024-06-30 02:59:04
450
原创 【PHP】PHP实现RSA加密,解密,加签,验签
2.公钥用于对数据进行加密,私钥用于对数据进行解密;私钥用于对数据进行签名,公钥用于对签名进行验证。1.php RSA生成公私钥。
2024-01-02 00:27:53
1706
原创 【GOLANG】使用插件 Goanno 的方式来对方法、接口、结构体注释模板配置
直接 使用插件 Goanno 的方式来对方法、接口、结构体注释模板配置。1、简单安装 Goanno 插件。
2023-12-30 13:54:32
919
1
转载 【工作笔记】FIO是测试IOPS的非常好的工具,用来对磁盘进行压力测试和验证。
iostat主要用于监控系统设备的IO负载情况,iostat首次运行时显示自系统启动开始的各项统计信息,之后运行iostat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。进行磁盘测试的时候,我们可以使用iostat 等监控工具,查看所有磁盘当前的读写状态监控磁盘IO命令:iostat –mx 1iostat使用范例:-d: 显示该设备的状态的参数;-x:是一个比较常用的选项,该选项将用于显示和io相关的扩展数据。
2023-09-20 13:12:31
979
转载 【分布式系统测试】vdbench的使用教程——裸盘测试和文件系统测试ceph
iorate= 常用可选值为100、max,此工作负载的固定I/O速率 --当参数值为100时,以每秒100个I/Os的速度运行工作负载,当参数值设置为一个低于最大速率的值时,可以达到限制读写速度的效果 --当参数值为max时,以最大的I/O速率运行工作负载,一般测试读写最大性能时,该参数值均为max。3、在报告里面还会根据设备显示io个延时的信息,也就是只要是测试设备,每一个的性能指标都能查到,这个的好处就是检测集群里面的io是不是均匀的,如果做了qos,设备的测试性能值是不是跟设置限制一样。
2023-09-20 13:09:03
2849
转载 【PHP】php7.3的composer依赖升级为php8.0
1) 在win cmd下运行php –version显示为原来的版本5.5。好吧,其实已经有答案了,一开始没有反应过来,这个5.5是因为我配置了环境变量,所以一直指向我原来的PHP目录,导致composer失败。2)解决方案:在 我的电脑->属性->高级->环境变量 中添加最新的PHP版本为环境变量,但是必须在之前环境变量的前面,当然也可以把之前的PHP环境变量删除。3)重启cmd或phpstorm运行composer install 就可以了。我直接改这个然后composer update就报错了。
2023-08-11 21:36:41
443
转载 【权限系统】权限系统设计模型分析(DAC,MAC,RBAC,ABAC)
权限系统设计可谓博大精深,这篇文章只是介绍了一点皮毛。随着人类在信息化道路上越走越远,权限系统的设计也在不断创新,但目前好像处在了平台期。可能因为在RBAC到ABAC之间有着巨大的鸿沟,无法轻易跨越,也可能是一些基于RBAC的微创新方案还不够规范化从而做到普及。不过在服务化架构的浪潮下,未来这一块必然有极高的需求,也许巨头们已经开始布局了。
2023-07-26 16:23:50
675
转载 [Bigdata]Ranger权限管理(用户认证kerberos)
UI界面:http://192.168.101.179:6080 (admin/bigdata123)组件进程名启动命令UnixAuthenticationService(root用户可见)ranger-usersync start/stop/restart(root用户下启动)Hive Plugin启动命令:至此完成了一下功能通过ranger来对hiveserver2的权限进行验证usersync组件定时同步LDAP的hive用户到Ranger中。
2023-03-25 21:50:51
2928
转载 【Redis】Redis Cluster集群原理
Redis Cluster是Redis官方提供的集群解决方案。由于业务的飞速增长,单机模式总会遇到内存、性能等各种瓶颈,这个时候我们总会喊,上集群啊。就跟我家热得快炸了,你总喊开空调呀一样。的确,上集群可以解决大多数问题,但是在使用集群的过程中,不可避免会遇到这样那样的问题,这个时候怎么办呢,各种百度各种群里去问吗?NO,作为开发人员,在享受第三方提供的方便前,有必要去了解其基本的工作机制,这样才能在遇到问题时快速定位,方便下手。本篇文章主要是梳理Redis集群的原理和Java客户端JedisCluster
2023-02-08 18:21:29
295
原创 【software】常见流氓软件
1.360软件系列,流氓软件。3.wps办公软件,流氓软件。2.金山安全系列,流氓软件。删不干净,卸载不干净。
2023-01-29 18:05:42
4268
转载 【Bigdata】数据中台总体架构图
数据中台是在底层存储计算平台与上层的数据应用之间的一整套体系,屏蔽掉底层存储平台的计算技术复杂性,降低对技术人才的需求,可以让数据的使用成本更低。现在您已经知道了,数据中台离不开这几个模块:数据汇聚、数据开发、资产管理、数据安全、数据服务。那么赶紧跟上我的脚步潜入内部去一探究竟吧。链接:https://www.jianshu.com/p/ffd9a21f296d。数据安全体系、数据运营体系保障数据中台可以长期健康、持续运转。通过数据中台的数据汇聚、数据开发模块建立企业数据资产。
2023-01-23 11:41:30
406
原创 【GIT】git本地代码上传到github
执行完后,如果没有异常,等待执行完就上传成功了,中间可能会让你输入Username和Password,你只要输入github的账号和密码就行了。后面的https链接地址换成你自己的仓库url地址,也就是上面红框中标出来的地址。如果想添加某个特定的文件,只需把.换成特定的文件名即可。第七步,也就是最后一步,上传代码到github远程仓库。第五步:重点来了,将本地的仓库关联到github上。cd到你的本地项目根目录下,执行git命令。第三步:将add的文件commit到仓库。第一步:建立git仓库。
2023-01-18 21:22:19
469
转载 【BIGDATA】大数据实时数仓、离线数仓、数据湖之间的关系
例如:在统计实时交易订单时,可能实时统计的结果需要当日分钟级别向外展示,T+1后才能展示昨日总的交易订单数,显然,后者是T+1每日离线批处理统计结果,那么假设当日有些用户进行了订单取消有可能T+1后统计统计结果与当日实时展示数据出现不一致问题,那么这里就需要使用数据服务来进行处理,统一数据,决定如何使用数据。这个时期,在企业信息化的过程中,随着信息化工具的升级和新工具的应用,数据量变的越来越大,数据格式越来越多,决策要求越来越苛刻,数据仓库技术在大数据场景中被广泛使用。
2022-12-17 03:53:16
882
原创 【Centos7】centos7最小化安装后,再按装图像界面GNOME Desktop
这时,我们可以通过命令 startx 进入图形界面,第一次进入会比较慢,请耐心等待。(可能需要重启,命令为reboot)经过上面的操作,系统启动默认还是命令行页面的,需要我们进行切换。因为权限限制,所以我们需要进入 root 模式,开机使用 root 登陆或者系统运行中切换为 root 用户均可。然后我们开始安装我们需要的图形界面软件,GNOME(GNOME Desktop)在这里我们可以检查一下我们已经安装的软件以及可以安装的软件,命令为。1、首先安装X(X Window System),命令为。
2022-10-17 10:47:46
1573
原创 【Centos7】VirtualBox下安装CentOS7并联网(外网,本地都ping通过)
点击新建,然后按如下来分别选择Linux ,Red Hat(64-bit)建议设3G内存然后选择虚拟硬盘动态分配就是一次性不占用这么大硬盘,会动态增加硬盘使用空间这里设置虚拟机存储的物理位置,比较在意C盘空间的话,可以放在其他空闲的磁盘上然后启动刚刚创建好的虚拟机。选择相应的镜像文件,从本地磁盘上导入虚拟机里,点击右侧的文件夹有注册的选项,详见下下张图点击完启动后,会进入系统设置界面,然后选择第一项Install...,完毕后选择语言接着配置网络。
2022-10-02 00:51:19
1297
原创 【JAVA】Java实现rpc框架QJAVA所需方法(类似Dubbo)
如果安装了一个安全管理器,那么这个构造函数将会在覆盖ObjectInputStream.readFields或ObjectInputStream.readUnshared方法的子类的构造函数直接或间接调用时检查“enableSubclassImplementation”SerializablePermission。可以通过使用流的文件来实现对象的持久存储。创建绑定到指定端口的服务器套接字。ObjectInputStream确保从流中创建的图中的所有对象的类型与Java虚拟机中存在的类匹配。
2022-10-01 16:46:41
687
转载 【JS】addEventListener方法介绍
第三个参数useCapture:设置传递的类型,默认值为false,即冒泡传递(可省略);使用 attachEvent 方法有个缺点,this 的值会变成 window 对象的引用而不是触发事件的元素。addEventListener(),事件监听,用于向指定的元素添加事件监听。在捕获中,外部元素的事件会被先触发,然后才会触发内部元素的事件。在冒泡中,内部元素的事件会先被触发,然后再触发外部元素;(它允许给一个事件注册多个监听器,且不会覆盖已存在的事件)事件的传递有两种方式:冒泡与捕获。
2022-09-07 23:25:19
6404
原创 【JS】call方法介绍
如果一个函数不是 JavaScript 对象的方法,那么它就是全局对象的函数(参见前一章)。在 JavaScript 中,函数是对象的方法。方法,您可以编写能够在不同对象上使用的方法。下面的例子创建了带有三个属性的对象(
2022-09-07 23:22:17
260
转载 【JS】defineProperty方法介绍
由于Object.defineProperty可以给对象定义属性,我们通过value,可以动态地将obj对象的属性动态地添加给target中。【注意】writable默认值为false,即不加writable方法,target的值也不可写/修改。【注意】set方法只有在设置/修改指定属性值的时候,才会触发,即调用set下的匿名函数。【注意】get方法只有在获取指定属性值的时候,才会触发,即调用get下的匿名函数。set方法的值也是一个函数,定义时会自动注入一个参数,此参数会设置属性的值。
2022-09-07 23:10:36
817
原创 【JS】reduce方法介绍
reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。reduce() 可以作为一个高阶函数,用于函数的 compose。注意: reduce() 对于空数组是不会执行回调函数的。
2022-09-07 22:07:09
147
转载 【JAVA】编写冒烟测试用例
Test(dataProvider = “front_login”,description = “登录”)冒烟测试是随着版本转测进行的,它应该是一个开关(判断版本能否转测试),而不是一个研发流程中的测试阶段。数据与测试代码分离(使用数据驱动方式来实现,可以通过读取excel文件、数据库等方式来实现)这种测试强调程序的主要功能进行的验证,而不会对具体的功能进行更深入的测试。冒烟测试就是版本转测试之前,对系统的基本功能进行简单的测试。冒烟测试用例一般选取的是测试用例中level 0的用例,保证主功能可用。
2022-09-04 17:06:36
1007
原创 【DesignModel】职责链模式(Chain of Responsibility Pattern)
基本介绍职责链模式(Chain of Responsibility Pattern), 又叫 责任链模式,为请求创建了一个接收者对象的链(简单示意图)。这种模式对请求的发送者和接收者进行解耦。职责链模式通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推。这种类型的设计模式属于行为型模式。...
2022-08-29 01:07:33
164
原创 【DesignModel】策略模式(Strategy Pattern)
策略模式(Strategy Pattern)中,定义 算法族(策略组),分别封装起来,让他们之间可以互相替换,此模式让 算法的变化独立于 使用算法的客户这算法体现了几个设计原则,第一、把变化的代码从不变的代码中分离出来;第二、针对接口编程而不是具体类(定义了策略接口);第三、多用组合/聚合,少用继承(客户通过组合方式使用策略)。...
2022-08-29 01:04:37
255
原创 【DesignModel】状态模式(State Pattern)
基本介绍状态模式(State Pattern):它主要用来解决对象在多种状态转换时,需要对外输出不同的行为的问题。状态和行为是一一对应的,状态之间可以相互转换当一个 对象的内在状态改变时,允许改变其行为,这个对象看起来像是改变了其类。...
2022-08-29 01:02:05
165
原创 【DesignModel】解释器模式(Interpreter Pattern)
基本介绍在编译原理中,一个算术表达式通过词法分析器形成词法单元,而后这些词法单元再通过语法分析器构建语法分析树,最终形成一颗抽象的语法分析树。这里的词法分析器和语法分析器都可以看做是解释器解释器模式(Interpreter Pattern): 是指给定一个语言( 表达式), 定义它的文法的一种表示,并 定义一个解释器,使用该 解释器来解释语言中的句子( 表达式)应用场景-应用可以将一个需要解释执行的语言中的句子表示为一个抽象语法树-一些重复出现的问题可以用一种简单的语言来表达。...
2022-08-29 00:59:18
151
原创 【DesignModel】备忘录模式(Memento Pattern)
基本介绍备忘录模式(Memento Pattern)在 不破坏封装性的前提下,捕获 一个对象的内部状态,并在该对象之外保存这个状态。这样以后就 可将该对象恢复到原先保存的状态可以这里理解备忘录模式:现实生活中的备忘录是用来记录某些要去做的事情,或者是记录已经达成的共同意见的事情,以防忘记了。而在软件层面,备忘录模式有着相同的含义,备忘录对象主要用来记录一个对象的某种状态,或者某些数据,当要做回退时,可以从备忘录对象里获取原来的数据进行恢复操作备忘录模式属于行为型模式。...
2022-08-29 00:56:37
136
原创 【DesignModel】中介者模式(Mediator Pattern)
基本介绍中介者模式(Mediator Pattern),用一个 中介对象来封装一系列的对象交互。中介者使各个对象不需要显式地相互引用,从而使其 耦合松散,而且可以独立地改变它们之间的交互中介者模式属于行为型模式,使代码易于维护比如 MVC 模式,C(Controller 控制器)是 M(Model 模型)和 V(View 视图)的中介者,在前后端交互时起到了中间人的作用。...
2022-08-29 00:53:49
142
原创 【DesignMode】观察者模式(Observer Pattern)
基础介绍,又叫,定义对象间一种一对多的依赖关系(注册),使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新(通知)。说白了就是个注册,通知的过程。
2022-08-29 00:51:01
122
原创 【DesignMode】迭代器模式(Iterator Pattern)
基本介绍迭代器模式(Iterator Pattern)是 常用的设计模式,属于行为型模式如果我们的集合元素是用不同的方式实现的,有数组,还有 java 的集合类,或者还有其他方式,当客户端要遍历这些集合元素的时候就要使用多种遍历方式,而且还会暴露元素的内部结构,可以考虑使用迭代器模式解决。迭代器模式, 提供一种遍历集合元素的统一接口,用 一致的方法遍历集合元素,不需要知道 集合对象的底层表示,即:不暴露其内部的结构。...
2022-08-29 00:47:16
107
原创 【DesignMode】访问者模式(Visitor Pattern)
访问者模式(Visitor Pattern),封装一些作用于某种数据结构的各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。主要将数据结构与数据操作分离,解决 数据结构和操作耦合性问题访问者模式的基本工作原理是:在被访问的类里面加一个对外提供接待访问者的接口访问者模式主要应用场景是:需要对一个对象结构中的对象进行很多不同操作(这些操作彼此没有关联),同时需要避免让这些操作"污染"这些对象的类,可以选用访问者模式解决。...
2022-08-29 00:42:11
100
原创 【DesignMode】命令模式(Command Pattern)
命令模式(Command Pattern):在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计命名模式使得 请求发送者与请求接收者消除彼此之间的耦合,让对象之间的调用关系更加灵活,实现解耦。在命名模式中,会将一个请求封装为一个对象,以便使用不同参数来表示不同的请求(即命名),同时命令模式也支持可撤销的操作。通俗易懂的理解:将军发布命令,士兵去执行。.........
2022-08-29 00:36:04
114
原创 【GO】go的protobuf报错protoc-gen-go: unable to determine Go import path for “pb/msg.proto“,a “go_package“
/给C#提供的选项。package pb;
2022-08-28 23:43:58
452
go手册,Go的语法接近C语言,但对于变量的声明有所不同。Go支持垃圾回收功能
2022-05-30
php手册PHP 函数的完整参考手册
2022-05-30
C++手册Programming languages — C++
2022-05-30
java手册中英文java8,java9手册
2022-04-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人