-
用PHP写Web Service
大多数的Web Service是使用Java语言的,因此在PHP中很少用到Web Service,用PHP写Web Service程序也就成为了比较冷门的知识点,其实仔细研究一下,似乎没有想象中复杂。下面我们就来用PHP写Web Service程序:1、Server端首先,定义一个类,在其中实现方法,然后用SoapServer将此类发布出去。data_service.php:c...
-
CentOS7环境下Redis安装部署
安装包下载1、网上搜索redis,查找下载连接连接为http://download.redis.io/releases/redis-6.0.3.tar.gz2、使用wget下载gz包,安装成功如图所示wget http://download.redis.io/releases/redis-6.0.3.tar.gz3、下载完毕之后进行解压tar -zxvf redis-6.0.3...
-
php基础-设计模式
大家好今天要给大家分享的是设计模式。首先来了解下什么是设计模式。其实所谓设计模式,就是前辈们在编程中遇到了些坑,为了使后人避免入坑所以写了写方法与套路——即设计模式。对于初学者来说,可能无法体会设计模式给编程带来的好处。以下就结合每个设计模式及其给编程带来什么好处来讲解设计模式。一 简单工厂模式请看如下代码无模式简单工厂模式<?phpclass Op{ function...
-
Nginx访问日志和错误日志入门
1.Nginx日志分类:访问日志和错误日志访问日志:记录发起请求的客户端的IP地址、发起请求的时间、发起请求的方法(GET\POST等)、发起请求的HTTP协议(HTTP/1.1等)、浏览器相关信息、响应状态结果等。错误日志:记录发起请求的客户端的IP地址、发起请求的时间、发起请求的方法(GET\POST等)、发起请求的HTTP协议(HTTP/1.1等)、服务器的调试信息、异常...
-
5分钟搭建公网https网页文件服务器,免费权威TLS证书
前言本文主要讲解如何快速搭建一个https网页文件服务器,并免费申请权威机构颁发的tls证书。5分钟搭建公网https网页文件服务器,免费权威TLS证书最终成果:通过浏览器打开指定网页,可以浏览和下载页面上的文件,并且通过tls协议加密传输。部署前提条件:带公网IP的服务器熟悉基本的命令行操作具有相关域名的DNS控制,可以做域名与IP地址的映射具有系统的root账号权限组件介绍...
-
Redis 之哈希
命令hset key field value 设置值,成功返回1,失败返回0,hash提供了 hsetnx 命令 只有key不存在才会设置成功hget key value 获取值hdel key field [field ...] 删除filed,返回删除成功的个数hlen key 统计field个数hmget key field [field ...] 批量获取field v...
-
SCADA数据采集与监控系统
SCADA数据采集与监控系统是对分布距离远,生产单位分散的生产系统的一种数据采集、监视和控制系统。SCADA将分布式部署在各地现场的数控机床接入到云系统,对机床设备运行状态、易损部件磨损程度及电气控制系统的数据进行收集分析,使工程师及时了解数控机床设备运行情况,通过计算机和SCADA存储机床的技术工艺参数,使工艺数据库可实现生产过程的全自动记录,从而实现对现场进行远程控制操作,...
-
.NET 中依赖注入组件 Autofac 的性能漫聊
Autofac 是一款超赞的 .NET IoC 容器 ,在众多性能测评中,它也是表现最优秀的一个。它管理类之间的依赖关系, 从而使 应用在规模及复杂性增长的情况下依然可以轻易地修改。它的实现方式是将常规的.net类当做 组件 处理。简单的性能测试在 LINQPad 中,我们可以很容易的构建出一个测试环境(需要引入 Microsoft.Extensions.DependencyI...
-
Elastic Search:架构说明及Docker方式体验
Elastic Search简称ES,是一款在搜索和日志检索领域极其成功的开源产品,当然ES背后的商业化公司也很成功。很多大的知名品牌,像是SAP、Booking、Ebay都在使用ES,今天就来实际使用一下ES这款成功的商业化产品,并且介绍一下它的特点。Elastic Search VS Luncence说到搜索还是要提下Luncence,Luncence基本上可以称为搜索领域...
-
ElementUI:文本框实现远程搜索的用法
今天继续给大家分享一下Element UI 多选框组用法笔记,直接上代码!1、HTML<el-form-item label="用户列表"> <el-autocomplete class="inline-input" @clear="clearUser" clearable ...
-
Redisson 3.15.0 新特性spinLock和其它
Redisson 3.15.0发布了,带来了Apache Tomcat 10的支持,以及spin lock先看spinLock目前支持四种编程模式,一种原生,一种Async 异步,一种Reactive, 一种RxJava 2看原生的RLock lock = redisson.getSpinLock("myLock"); // traditional lock method l...
-
Java泛型的协变与逆变
从面向对象说起Java作为一门面相对象的语言,当然是支持面相对象的三大基本特性的,反手就蹦出三个词:封装、继承、多态。我们假设有三个类,动物、猫、狗。父类是动物Animal,有两个子类猫Cat和狗Dog。那在Java中或其它任何支持面相对象的语言中,子类可以把引用赋值给父类。下面这段代码没有任何问题:Animal animalOne = new Cat(); Animal an...
-
SpringBoot自动配置原理及手动实现自动配置
前言之前我们学习了SpringBoot中的配置文件及外部化配置,了解了SpringBoot对于配置文件的功能支持与增强,本篇我们将要来学习SpringBoot的自动配置原理及手动实现自动配置。数据库依赖引起的bug我们很多人在第一次使用SpringBoot的时候,往往对其原理认知不足,或者简单的了解以后就开始入门使用,往往最常见的就是使用SpringBoot添加一个持久化框架的...
-
关于Spring AOP的灵魂十问
AOP全称是Aspect Oriented Programming,翻译过来是“面向切面”编程。在Java语言里,一切皆对象,所以我们通常说Java语言是一门“面向对象”编程的语言。而面向切面编程,不是要取代面向对象编程,而是对它的一种补充。AOP要解决的问题是用一个“横切面”的方式,来统一处理很多对象都需要的,相同或相似的功能,减少程序里面的重复代码,让代码变得更干净,更专注...
-
前端你得会——加密解密之crypto-js(建议收藏)
场景在开发过程中,我们会经常会从当前系统跳转别的系统进行访问或者页面嵌套使用。那一般都会给到一个地址进行参数拼接,然后去访问。那么会存在一个问题,就是地址暴露在外面参数使用明文的话会被篡改,极度不安全。这个时候我们就考虑到加密,前端和后端协定好一种加密方式,然后前端进行参数加密传到后端,后端再去解密(可逆)。加密方式也有很多种,今天我推荐的是一款强大的前端加密/解密js库——c...
-
《锋利的jQuery》观后记
API文档 https://api.jquery.com/网页中所有 DOM结构绘制完毕后就执行,而不是在页面所有内容(例如图片等占用宽带的内容)加载完毕之后才执行事件。它允许用户在第一眼看到元素的时候,就能立即看到元素产生的一些隐藏效果、显示效果和其它效果。若要访问图像的高度等属性,可以考虑jquery提供的load()事件。$(document).ready(functio...
-
MYSQL8.023新特性,消失的列
我们来体验一下MySQL 8.0.23新特性:不可见列(invisible 关键字)。传统版本数据库中所有列都是可以查询的,现在可以指定一个不可见的列,它将对查询隐藏。如果显式引用,它可以被查到。1、首先建表create table test_invisible ( id int, name varchar(20), money float in...
-
ES 2021 来了,详细解读5个新特性,附案例
ES 2021是世界上最受欢迎的编程语言的最新版本〜本次迭代中包含了五个新特性,让我们来一睹为快。ES20211.全部替换replaceAll:js默认的replace 方法仅替换字符串中一个模式的第一个实例,要全局替换,你需要自己写正则,因此2021带来了全新的replaceAll方法。'Hello'.replaceAll('l', 'L') // 'HeLLo' 2。 Pr...
-
分布式调度框架 elastic-job 实践详解(超详细)
在前几篇文章中,我们详细的介绍了 Quartz 的架构原理以及应用实践,虽然 Quartz 也可以通过集群方式来保证服务高可用,但是它也有一个的弊端,那就是服务节点数量的增加,并不能提升任务的执行效率,即不能实现水平扩展!之所以产生这样的结果,是因为 Quartz 在分布式集群环境下是通过数据库锁方式来实现有且只有一个有效的服务节点来运行服务,从而保证服务在集群环境下定时任务不...
-
前端小技巧:学会用FormData对象收集表单数据
1.FormData对象有什么用?我们先看一个小例子:html代码:<form action="/postForm" id="form"> <input type="text" id="username" name="username"> <input type="password" id="password" name="password"&...
-
SpringCloud微服务:Zipkin组件,实现请求链路追踪
一、链路追踪简介1、Sleuth组件简介Sleuth是SpringCloud微服务系统中的一个组件,实现了链路追踪解决方案。可以定位一个请求到底请求了哪些具体的服务。在复杂的微服务系统中,如果请求发生了异常,可以快速捕获问题所在的服务。 2、项目结构启动顺序如下* 注册中心 node07-eureka-7001 * 链路数据收集服务 node07-zipkin-7003 * 服...
-
用户画像方法论
Part 1 什么是用户画像 Part 2 为什么需要用户画像Part 3 如何构建用户画像Part 4 用户画像的应用Part 5 总结参考资料:1. 百分点《用户画像的构建与应用》2. 腾讯-刘黎春《大数据时代下的用户洞察》3. 一号店-王富平《 用户画像系统实践》4. 京东-郭理靖《数据引导生产》5. 腾讯-刘立明《如何通过数据驱动业务发展》6. 知乎-Mr.墨叽《如何做...
-
在pdf上加盖电子签章
在pdf上加盖电子签章,并不是只是加个印章图片,。而是要使用一对密钥中的私钥对文件进行签字。为啥要用私钥呢?很简单,因为公钥是公开的,其他人才可以用公钥为你证明,这个文件是你签的。这就是我们常说的:私钥签字,公钥加密。用公钥进行加密,才只有有对应私钥的人能解开。下面给出具体代码。另外,这对密钥应该去官方申请,我这里只是测试,所以就自己生成了。数字证书常见标准符合PKI ITU-...
-
CRM公海客户自动分配功能的实现
实现目标:1、市场部添加的公海客户,自动轮巡分配给销售员2、可设置销售人员自动分配公海客户的客户数上限准备工作:1、在白码低代码开发平台准备销售员数据表,并准备几个销售员数据。必须字段说明:自动分配客户上限:数字类型,用于限制自动分配公海客户的客户数。已分配客户数:数字类型,记录已被自动分配的客户数。轮序序号:数字类型,连续自增数字,轮巡分配顺序,公海客户将按照此顺序从小到大进...
-
快速实现细粒度的身份权限管理
授权的含义在通用领域内,授权是领导者通过为员工和下属提供更多的自主权,以达到组织目标的过程。在计算机领域内,授权是由信息系统指定批准机构授予某实体处理、存储或传送信息的权力。而在身份认证领域内,授权是指当客户端经过身份认证后,能够有限的访问服务端资源的一种机制。为什么要进行「授权」?在已经构建起的用户系统中,当你的 API 需要判断当前访问用户是否能访问当前资源时,就需要你构建...
-
vue 监听 全屏退出事件
解决1["fullscreenchange", "webkitfullscreenchange", "mozfullscreenchange"].forEach((item, index) => { window.addEventListener(item, () => { // 执行的操作 }); });
-
可以了,基于Redis和Lua实现分布式令牌桶限流
限流是一个很大的话题,准备把其中的所有限流器都实现一遍,以此也算全都写过了,到时候再用也不至于会心虚,毕竟真实写完成过。本文主要讲述了如何基于 Redis 与 Lua实现分布式令牌桶的限流方案。读前提问我觉得学习任何东西前都应该有自己的反问,这种反问基于标题给你的大概印象。带着问题来看文章,最后应该比盲目的看有收获,先提出几个基础的问题。限流是什么通过某种手段对某个时间段的并发...