php面向对象必知会 /** * 面向对象基础*声明:[修饰类的关键字]class 类名{* 成员(成员属性:变量;成员方法:函数) }*命名:类名.class.php,方便自动加载*变量和函数名驼峰式命名,类名首字母大写;*$对象引用=new 类名;*变量成员的调用不用$*构造方法就是对象创建完成后第一个调用的方法;*php4中和类名相同
php字符串函数大全 1、查找字符位置函数:strpos($str,search,[int])://查找search在$str中的第一次位置从int开始;strrpos($str,search,[int])://查找search在$str中的最后一次出现的位置从int开始2、提取子字符函数(双字节)submit($str,int start[,int length])://从$str中strat位置开
php接口安全校验原理 php做APP接口时,如何保证接口的安全性?1、当用户登录APP时,使用https协议调用后台相关接口,服务器端根据用户名和密码时生成一个access_key,并将access_key保存在session中,将生成的access_key和session_id返回给APP端。2、APP端将接收到的access_key和session_id保存起来3、当APP端调用接口传输数据
python基础之socket编程 阅读目录一 客户端/服务器架构二 osi七层三 socket层四 socket是什么五 套接字发展史及分类六 套接字工作流程七 基于TCP的套接字八 基于UDP的套接字九 粘包现象十 什么是粘包十一 解决粘包的low比处理方法十二 峰哥解决粘包的方法十三 认证客户端的链接合法性十四 socketserver实现并发十五 作业一 客户端/服务器架构1.硬件C/S架
linux卸载rpm后如何恢复? 一次生产过程中的小故障,公司刚来的实习生卸载了rpm包后恢复的过程如下: 首先模拟卸载rpmrpm -e --nodeps rpm[root@CentOS69: /root]# rpm -qi rpm-bash: /bin/rpm: No such file or directory由于yum依赖于rpm,所以yum也无法正常使用yum listerror: Unable to open /
关于Golang中range指针数据的坑详解 在Golang中使用 for range 语句进行迭代非常的便捷,但在涉及到指针时就得小心一点了。下面的代码中定义了一个元素类型为 *int 的通道 ch :package main import ( "fmt") func main() { ch := make(chan *int, 5) //sender input := []int{1,2,3,4,5} ...
python中的序列 python中的序列容器序列 (可以接受任意类型,可以混合)list,tuple,deque扁平序列(只能存放同一种数据类型)str,bytes,bytearray,array.array可变序列list,deque,bytearray,array(可以增加修改数据)不可变序列str,tuple,bytes(不能增加修改)# coding:utf8if __name__ == ...
你应该知道的Git基础 你应该知道的Git基础设置自己的用户名和邮箱git config –global user.name "Your Name"git config –global user.email "you@example.com"修改到提交之间有一个缓存区提交到缓存区 git add . 当前所有修改提交到缓存区,也可以单独指定git diff --cached
linux进程监控及管理 进程状态进程类型进程状态进程的分类Linux 系统状态的查看及管理工具进程相关pstreeps默认显示当前终端中的进程字段含义STAT 进程状态常用组合进程优先级调整nice OPTION COMMAND ARG执行时指定renice -n priority pidtop命令输入r然后根据提示输入进程ID再输入优先级数值搜索进程最灵活ps 选项 其它命令按预
apache安装脚本,兼容CentOS7 #/*************************************************************************#> File Name: installApache.sh#> Author: liyong#> Mail: 2550702985@qq.com#> Created Time: Thu 20 Apr 2017 02:39:18 AM PDT
12个常用php工具函数 目录:浏览器友好的变量输出写日志根据年月获取日期返回浏览器发送Referer请求头获取随机唯一id串数字动态加密解密凯撒加密解密数组序列化成get参数用户id加密解密日期友好输出获取网站根路径高效生成随机密码浏览器友好的变量输出function dump($var, $echo=true, $label=null, $strict=true) { $label = (
用户访问网站基本流程及原理(史上最全,没有之一) [TOC] 用户访问网站流程框架第一步:客户端用户从浏览器输入www.baidu.com网站网址后回车,系统会查询本地hosts文件及DNS缓存信息,查找是否存在网址对应的IP解析记录。如果有就直接获取到IP地址,然后访问网站,一般第一次请求时,DNS缓存是没有解析记录的;第二步:如果客户端没有DNS缓存或hosts没有对应www.baidu.com网站网址的域名解析记录,那么,系统会把浏览器的
OpenSSL 安装与配置 系统需求OpenSSL可以在多种操作系统上安装,但是本文只讨论 OpenSSL-0.9.8g 在Linux或BSD系统上的安装。安装OpenSSL的系统需求很低,只要有 ANSI C 编译器(推荐GCC)、Perl 5 、make 即可。但是OpenSSL的测试程序依赖于GNU BC,如果你需要运行测试程序的话,就要事先安装好它。配置将下载回来的压缩包解压,进入解压后的目录,即可使用 config 或 Configure 脚本进行配置。OpenSSL的配置脚本与大多数典型的软件包不同,它有自己的一套
elasticsearch es调优实践经验总结 概述大多数操作系统都尽可能多地为文件系统缓存使用内存,并切换出未使用的应用程序内存。这可能导致部分 JVM 堆被交换到磁盘上。对于性能和节点的稳定性来说,这种交换是非常糟糕的,应该不惜一切代价避免。它可能导致垃圾收集持续几分钟而不是几毫秒,这可能导致节点响应缓慢,甚至脱离集群。可以通过三种方式来禁用 swapping:禁用所有的 swap 文件配置 swappiness 禁用swapping启用 bootstrap.memory_lock 禁用 swapping。1.1 禁用所有的
记录一次 PHP-fpm 占 CPU 100% 修复 文章目录记录一次 PHP-fpm 占 CPU 100% 修复记录一次 PHP-fpm 占 CPU 100% 修复平台报警大量502,前台页面返回 502 错误,上服务器查询发现,有几个 php-fpm 占 cpu 100%, 重启 php-fpm 无效。解决方法:通过 top 查找占 cpu 100% 的进程 id, 通过 ll /proc/PID/fd,查看进程在那个文件操作,只发现在操作日志文件,但日志文件没有数据写入。再通过 strace -p pid 查跑满 cpu 的进程 id 发现,
Elasticsearch的segment合并原理 默认情况下,elasticsearch中每个shard每隔1秒都会refresh一次,每次refresh都会生成一个新的segment,按照这个速度过不了多久segment的数量就会爆炸,所以存在太多的segment是一个大问题,因为每一个segment都会占用文件句柄,内存资源,cpu资源,更加重要的是每一个搜索请求都必须访问每一个segment,这就意味着存在的segment越多,搜索请求就会变的更慢。那么elaticsearch是如何解决这个问题呢? 实际上elasticsearch有一个后台进程专
PB 级大规模 Elasticsearch 集群运维与调优实践 背景某中型互联网公司的游戏业务,使用了腾讯云的 Elasticsearch 产品,采用 ELK 架构存储业务日志。因为游戏业务本身的日志数据量非常大(写入峰值在 100w qps),在服务客户的几个月中,踩了不少坑,经过数次优化与调整,把客户的 ES 集群调整得比较稳定,避免了在业务高峰时客户集群的读写异常,并且降低了客户的资金成本和使用成本。场景 1:与客户的初次交锋解决方案架构师 A: bellen, XX 要上线一款新游戏,日志存储决定用 ELK 架构,他们决定在 XX 云和我们之间二
Elasticsearch安全性:配置TLS/SSL和PKI身份验证 Elastic Stack 6.8/7.1或更高版本用户的重要注意事项:弹性堆栈的默认分布现在包含了可以永久免费启用的安全特性。这包括TLS加密、用户身份验证和基于角色的访问控制。退房Elasticsearch安全入门执行细节当为使用生产许可证运行的群集启用Elasticsearch安全性时,传输通信必须使用TLS/SSL,并且必须正确设置。此外,一旦启用了安全性,所有到Elasticsearch集群的通信都必须经过身份验证,包括来自Kibana和/或应用服务器的通信。Kibana和/或应用服务器可以向
Elasticsearch 安全功能 从 Elastic Stack 6.8 和 7.1 开始,我们在默认分发包中免费提供多项安全功能,例如 TLS 加密通信、基于角色的访问控制 (RBAC),等等。在此篇博文中,我们将会讲解如何启用这些功能来确保您的 Elasticsearch 集群的安全。为了给您提供一个实际示例来演示如何确保 Elastic Stack 实施项目的安全,我们将会在本地机器上创建一个两节点 Elasticsearch 集群并进行安全设置。要实现这一点,我们首先需要在两个节点之间配置 TLS 通信。然后,我们会为 Kiba
go mod 使用指南 环境准备版本要求 golang version >=1.11打开go mod;export GO111MODULE=on设置代理export GOPROXY=https://goproxy.cn/,https://mirrors.aliyun.com/goproxy/,direct设私仓库,不走代理,不计go.sum检验(没有私有仓库跳过此步骤) export GOPRIVATE=www.mukebb.cn/*go get支持 git clone 时用 git@xxx(即ssh)
mycat主备热切实战操作指南 最近给研究数据库高可用方案,发现mycat是一个不错的的低成本解决方案一、MyCat简单介绍MyCat是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理(类似于Mysql Proxy),用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里。MyCat发展到目前的
新鲜出炉的京东面试题 京东面试1、redis的数据结构分别有什么,各数据结构的底层原理如何实现(zset与set的区别,zset的底层实现。zset如何实现分页功能?(例子:ZRANGEBYSCORE zset01(key) 60 90 limit 2 2))string:字符串在redis中,其自己定义了一种字符串格式,叫做SDS(Simple Dynamic String),即简单动态字...
docker ping不通外网 如果关闭容器的防火墙,重启容器均不能解决,一般是因为容器本身的安全策略导致,不使用容器默认的安全策略即可sudo docker run --rm -it --security-opt apparmor=unconfined alpine...
《吊打面试官》系列-Redis哨兵、持久化、主从、手撕LRU 你知道的越多,你不知道的越多点赞再看,养成习惯前言Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难。作为一个在互联网公司面一次拿一次offer的面霸(请允许我使用一下夸张的修辞手法),打败了无数竞争对手,每次都只能看到无数落寞的身影失望的离开,略感愧疚,在一个寂寞难耐的夜晚,我痛定思痛,决定开始写**...
《吊打面试官》系列- Redis基础 《吊打面试官》系列- Redis基础你知道的越多,你不知道的越多点赞再看,养成习惯前言Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难。作为一个在互联网公司面一次拿一次offer的面霸(请允许我使用一下夸张的修辞手法),打败了无数竞争对手,每次都只能看到无数落寞的身影失望的离开,略感愧疚,在一个寂寞...
Counting Bloom Filter 从前面几篇对Bloom Filter的介绍可以看出,标准的Bloom Filter是一种很简单的数据结构,它只支持插入和查找两种操作。在所要表达的集合是静态集合的时候,标准Bloom Filter可以很好地工作,但是如果要表达的集合经常变动,标准Bloom Filter的弊端就显现出来了,因为它不支持删除操作。Counting Bloom Filter的出现解决了这个问题,它将标准Bl...
Redis-避免缓存穿透的利器之BloomFilter Redis-避免缓存穿透的利器之BloomFilter你知道的越多,你不知道的也越多点赞再看,养成习惯前言你在开发或者面试过程中,有没有遇到过海量数据需要查重,缓存穿透怎么避免等等这样的问题呢?下面这个东西超屌,好好了解下,面试过关斩将,凸显你的不一样。Bloom Filter 概念布隆过滤器(英语:Bloom Filter)是1970年由一个叫布隆的小伙子提出的。...
趣谈网络协议(五) 假设一个场景:无路由器的情况下,如何用一条网线让两台电脑组建成一个局域网(LAN)一起玩红警? 首先,这条网线跟普通连路由器的网线是不一样的,两头分别插在电脑的网卡上。水晶头的1、3是接收端,2、6是发送端,所以网线其中一端的1、3和2、6互换,这样就能在物理(第一)层互相接收、发送信息。而根据上面章节讲过的,CURD把两台电脑的IP分别设置为192.168.1.10/24、...
趣谈网络协议(四) 1.DHCP在局域网中我们一般只要插上网线就被分配id并可以上网了,这是为啥呢。这里主要用到了DHCP协议DHCP全拼Dynamic Host Configuration Protocol.动态域名配置协议首先,每台电脑都有一个网卡,就算你没有网络的情况下,网卡都有一个MAC地址当接通网络后,主机要去哪获得一个ip地址呢.在同一网络里基本靠“吼”:有人吗,老子来了!暂且称之为...
趣谈网络协议(三) 我相信,只要对电脑有点入门的,都知道如何查询本地ip地址.在win中是ipconfig.linux中是ifconfig如上图,192.168.1.117就是我的局域网地址.局域网内通过此ip就能访问我的电脑再举一个场景,我们新装了宽带,买了路由器都知道访问地址是192.168.1.1 那这个IP又是为何而来子网掩码又是啥东东呢.别急,接下来进入正题,你想要的我下面都会一一讲解1...
趣谈网络协议(二) 不管是系统还是网络.都需要一个良好的架构,层层分离,职责单一,这样代码的可读性强,拓展只需针对某一职责修改即可 在网络的TCP/IP协议中,也是层层分离,每一层都有自己的协议,并做好自己本分的工作。就像公司的各个部门一样,it部保持系统的稳定、市场部负责推广、销售部负责销售一样网络中的请求,从源到目标先分这么四层:1.物理层,网关只要调用process_la...
趣谈网络协议(一) 一般来说,网上的购物.都是基于应用层的Http协议.那么在这一层协议书我们包装了什么呢,请看下图一、应用层Http头http1.1、POST、URL、正文格式(content-type)、长度(content-length) 请求参数:购买的产品信息、数量 应用层的协议除了http外,还有https(内容在网络中的传输是加密形式的,更为安全。一般支付都用https)经过应用...
MySQL DBA 必读:万字归总表设计与 SQL 编写技巧 前言随着移动云平台系统业务不断增长,必然需要对各系统进行更新或者发布新版本,以满足用户的需求。但是在系统更新或者发布新版本时,往往会引起各种的性能隐患,使得系统的稳定性大大降低,这些性能隐患的根本原因大部分都在于软件开发标准不规范引起。为了加强开发标准规范,提高各系统的稳定性,本文从影响 MySQL 数据库性能的常见因素入手,重点论述下如何编写高效的 SQL 语句,并以合适的方式创建表和索...
Spark性能优化指南——高级篇 文章目录调优概述调优概述有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能会比期望差很多。数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能。数据倾斜发生时的现象绝大多数task执行得都非常快,但个别task执行极慢。比如,总共有1000个task,997个task都在1分钟之内执行完了,但是剩余两三个task却...
go interface{}==nil 几种坑及原理 本文是Go比较有名的一个坑,在以前面试的时候也被问过,为什么想起来写这个?因为我们线上就真实出现过这个坑,写给不了解的人在使用 if err != nil 的时候提高警惕。Go语言的interface{}在使用过程中有一个特别坑的特性,当你比较一个interface{}类型的值是否是nil的时候,这是需要特别注意避免的问题。先来看看一个demo:package mainimport "...
elasticsearch亿级数据性能调优实战指南 文章目录慢查询日志es优化黄金原则1、搜索结果不要返回过大的结果集2、避免超大的document3、避免稀疏的数据(1)避免将没有任何关联性的数据写入同一个索引(2)对document的结构进行规范化/标准化(3)避免使用多个types存储不一样结构的document(4)对稀疏的field禁用norms和doc_values写入性能优化1、用bulk批量写入2、使用多线程将数据写入es3、增加r...
elasticsearch的底层模块深入解析 文章目录shard分配相关的配置及原理1、shard allocation的介绍2、cluster level shard allocation(1)shard allocation settings(2)shard rebalance settings(3)shard balance heuristics3、disk-based shard allocation4、shard allocatio...
生产环境Elasticsearch索引管理篇 索引创建修改删除压缩及滚动创建1、创建索引(1)创建索引的语法用settings给这个索引在创建时可以添加一些设置,还有可以初始化一些type的mappingcurl -XPUT 'http://elasticsearch02:9200/twitter?pretty' -d '{ "settings" : { "index" : { "nu...
玩转Golang指针 学过C语言的老司机都知道,指针就是一个变量,用于存储另一个变量的内存地址。那么什么是变量呢?在现代计算机体系结构中所有的需要执行的信息代码都需要存储在内存中,为了管理存储在内存的数据,内存是划分为不同的区域的,不同区域都用内存地址来标识。一个典型的内存地址是个16进制的8位数(一个字节)比如0xAFFFF(这是一个内存地址的十六进制表示)。要访问数据,我们需要知道它的存储地址。我们可以跟踪...
美团Java面试154道题 文章目录Java集合22题ArrayList 和 Vector 的区别。JVM与调优21题并发编程28题spring 25题设计模式 10题springboot 22题Netty10题Redis 16题Java集合22题ArrayList 和 Vector 的区别。说说 ArrayList,Vector, LinkedList 的存储性能和特性。快速失败 (fail-fast) 和安全失败...
spark调优指南 文章目录Spark 内核原理快速入门1. Spark 内核原理1.1 Spark 是什么1.2 RDD 及其存储1.3 RDD 五大特性1.3.1 分区列表1.3.2 Compute 计算函数1.3.3 依赖关系 Dependency1.3.4 分区器 Partitioner1.3.5 Partition 位置列表1.4 RDD“弹性”的 7 个体现2. Spark 宽窄依赖2.1 窄依赖2.2 ...
python特性 coding:utf8python中的一些特性def fun1(x, y): print(x, y)def fun2(x=[]): x.append(1) print(x)def fun3(x=None): if x is None: x = [] x.append(1) print(x)# 一.函数## 1....
elasticsearch7 集群搭建带安全验证 elasticsearch7 集群搭建教程环境准备1.配置JAVA_HOME2.下载es功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导...
阿里40K+高级Java岗,必备技能清单 相信你可能经历过这些:已经工作两三年了,每个项目都会加班加点全力以赴去完成,薪资增长幅度却不如人意。听说年后离职的老同事,金三刚拿下高薪offer,年薪直奔50万了。由于现在的公司接触不到新技术,对自己的市场竞争力无比焦虑,未来职业道路怎么走?这个凛冽寒冬,你终于明白,现在的工作机会很少,薪资很难有较大涨幅,Java工程师的年薪是技能决定的,是时候去提高技能,提前规划未来职业发展路...
elasticsearch+kibana鉴权验证插件安装配置详解 文章目录kibana插件获取对应版本的插件包安装安装注意事项配置kibana.yml配置说明Elasticsearch插件插件认证流程获取对应版本的插件包安装search-guard for elasticsearch插件配置elasticsearch.yml禁用分片分配重启所有节点使用 sgadmin 重新启用分片分配通过使用 sgadmin 更新 Search Guard 配置来配置身份验证/...
小白都能看懂的Hadoop架构原理 文章目录一、前言二、HDFS的NameNode架构原理一、前言Hadoop是目前大数据领域最主流的一套技术体系,包含了多种技术。包括HDFS(分布式文件系统),YARN(分布式资源调度系统),MapReduce(分布式计算系统),等等。有些朋友可能听说过Hadoop,但是却不太清楚他到底是个什么东西,这篇文章就用大白话给各位阐述一下。假如你现在公司里的数据都是放在MySQL里的,那么就全...
金三银四大放血,Java进阶大数据3W全套视频等你领! 大数据是当时时代下一门炙热的IT学科,行情十分火爆,不论是阿里巴巴、百度这样的大公司,还是中小企业都很重视,甚至是第一个纳入国家战略的技术,政府扶持力度大,支持甚多!面对这样的大环境下,大数据相关岗位薪水高,就业前景好。因此也吸引了一大批有志之士,想学习并从事大数据相关工作。那么,大数据应该如何学习呢?大数据就业到底前景怎么样?人生不只是低头拉车,更要抬头看路。一、大数据人才需求及现状分析...
hash命令使用图解 更===多===课程====请====加===v===信=== a518958666基于SpringCloud 微服务架构 广告系统设计与实现系统学习dockerdocker前后端分离实战Docker+Kubernetes(k8s)微服务容器化实战Go语言实战抽奖系统Go语言开发分布式任务调度 轻松搞定高性能Crontab20小时快速入门go...
为vim编辑器添加默认的作者信息 修改/etc/vimrc配置文件,在文件末尾添加如下内容即可 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25...
php设计模式之访问者模式 访问者模式表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。 UML类图: 角色: 1.抽象访问者(State):为该对象结构中具体元素角色声明一个访问操作接口。该操作接口的名字和参数标识了发送访问请求给具体访问者的具体元素角色,这...
php设计模式之代理模式 代理模式为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 UML类图: 角色介绍: 抽象主题角色(IGiveGift):定义了Follower和Proxy公用接口,这样就在任何使用Follower的地...
Nginx 优化实战 Nginx优化nginx介绍Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engineX”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP代理服务器.Nginx是由俄罗斯人IgorSysoev为俄罗斯访问量第二的Rambler.ru站点开发.Nginx以事件驱动(epoll)的方式编写,所以有非常好的性能,同...
第四篇:python基础之条件和循环 阅读目录一.if语句 1.1 功能 1.2 语法 1.2.1:单分支,单重条件判断 1.2.2:单分支,多重条件判断 1.2.3:if+else 1.2.4:多分支if+elif+else 1.2.5:if语句小结 1.3 案例 1.4 三元表达式 二.while语句 2.1 功能 2.2 语法 2.2.1:基本语法 2.2.2:计数循环 2.2.3:无限循环 ...
第七篇 python基础之函数,递归,内置函数 阅读目录一 数学定义的函数与python中的函数 二 为何使用函数 背景提要 三 函数和过程 四 函数参数 五 局部变量和全局变量 六 前向引用之'函数即变量' 七 嵌套函数和作用域 八 递归调用 九 匿名函数 十 函数式编程 十一 内置函数 十二 本节作业一 数学定义的函数与python中的函数初中数学函数定义:一般的,在一个变化过程中,如果有两个变量x和y...
元类metaclass 阅读目录一 知识储备 二 引子(类也是对象) 三 什么是元类? 四 创建类的两种方式 五 自定义元类控制类的行为 六 练习题一 知识储备exec:三个参数参数一:字符串形式的命令参数二:全局作用域(字典形式),如果不指定,默认为globals()参数三:局部作用域(字典形式),如果不指定,默认为locals()#可以把exec命令的执行当成是...
史上最适合入门的python教程实例 文章目录一 数据类型*号的使用截取子元素解压元素在函数中的应用实现队列,不指定大小则无限添加一 数据类型不可变:数字,字符串,元组可变:列表,字典原子:数字,字符串容器:列表,元组,字典直接访问:数字顺序:字符串,列表,元组映射访问:字典#一一对应a,b,c,d,e='hello'print(e,d)#少一个报错# a,b,c='hello'*号的使用a,...
一文搞懂DNS缓存 DNS缓存不仅仅产生于操作系统,在浏览器和应用程序以及IPS网络运营商都会对DNS进行缓存,下面详细讲解这些DNS缓存的位置及清空的方法。1、浏览器DNS缓存的时间跟DNS服务器返回的TTL值无关。2、Application的DNS缓存是由应用程序控制的,以java为例,Java的网络应用程序的DNS缓存是由JVM的缓存策略控制的3、OS缓存会参考DNS服务器响应的TTL值,但是不完全...
Mysql5.7创建远程可无密码登录用户 查看初始化密码grep password /var/log/mysqld.log修改初始化密码mysql -uroot -palter user 'root'@'localhost' identified by 'Kingsoft123..'uninstall plugin validate_password;set password for 'root'@'localhost'=p...
Elasticsearch修改字段类型 1.设置索引t2为想要的数据类型2.将t1 reindex到t23.数据reindex完成删除t14.设置索引t1为想要的数据类型5.将t2 reindex到t1PUT t1{ "settings": { "index": { "number_of_shards": "2", "analysis": { "ana.
golang详细知识体系 Go编程入门基础语法环境安装下载地址 https://golang.google.cn/dl/GOPATH、GOROOT两个关键环境变量基础结构包的概念程序执行过程—>import package–>init–>main数据类型和变量常量const变量var、:=基础类型bool整型string字符串错误类型 error...
Python常用数据类型精析 #!/usr/bin/python# -*- coding: utf-8 -*-# 一.列表number_list = [1,3,5,7,9]string_list = ['aaa','bbb','cccc',2,3]list_1 = [1,1,1,1,1]#list元素可以重复 [1, 1, 1, 1, 1]print(list_1)print(number_list)prin...
10行代码玩转python切片 # coding:utf8# [start:end:step]if __name__ == '__main__': list = [0,1,2,3,4,5,6,7,8,9] print(list[::]) # 返回所有 print(list[::-1]) #返回所有元素的逆序 print(list[::2]) #获取偶数位置的元素 print(list[...
python中属性查找算法mro # coding:utf8''' A B C D当继承关系如上时,python如何进行属性查找'''# python3所有自定义类默认继承objectclass A: passclass B(A): passclass C(A): passclass D(B,C): pa...
python自省机制 # coding:utf8# python自省是通过一定的机制查询到对象的内部结构class Person(): # 单行注释 ''' 这是注释1 ''' a=1 # 注释2 b="s1" ''' 这是注释3 '''class Student(Person): def __init__(self,sch...
python with用法详解 # coding:utf8def except_try(): try: print("start") #raise KeyError raise IndexError return 1 except KeyError: print("key error 异常时执行") return 2...
elasticsearch6.x集群环境部署 elasticsearch集群部署安装jdkchmod 755 jdk-8u161-linux-x64.tar.gztar -zxvf jdk-8u161-linux-x64.tar.gzcp jdk1.8.0_161 /data/install创建elasticsearch执行用户useradd elasticmkdir /data/install/elasticchmod -...
VSCode配置golang开发环境 VSCode 插件推荐插件安装方法按下 Ctrl/Cmd+P 输入 ext install [插件关键字 / 名称],就可以安装了。下面提供各个插件对应的安装命令。各语言插件Go: ext install ms-vscode.GoGolang 开发必备插件Docker: ext install PeterJausovec.vscode-dockerDocker 语法高亮...
golang开发技巧 使用gofmt重要的话说3遍使用gofmt使用gofmt使用gofmtgofmt是golang提供的代码格式化工具,整个团队使用,就不需要做代码风格审查了协程使用规范将并发留给调用者// ListDirectory returns the contents of dir.func ListDirectory(dir string) ([]string, error)// Li...
python面向对象进阶 阅读目录一 isinstance(obj,cls)和issubclass(sub,super) 二 反射 三 __setattr__,__delattr__,__getattr__ 四 二次加工标准类型(包装) 五 __getattribute__ 六 描述符(__get__,__set__,__delete__) 六 再看property 七 __setitem__,__get...
golang中make和new的区别 引出问题先看下面的代码package mainimport ( "fmt")func main() { var i *int *i=10 fmt.Println(*i)}上面的代码会报错,因为对于引用类型的变量,我们不光要声明它,还要为它分配内容空间func main() { var i *int i=new(int) *i=10 fmt.Println(...
Go语言(golang)的错误(error)处理的方案 对于Go语言(golang)的错误设计,相信很多人已经体验过了,它是通过返回值的方式,来强迫调用者对错误进行处理,要么你忽略,要么你处理(处理也可以是继续返回给调用者),对于golang这种设计方式,我们会在代码中写大量的if判断,以便做出决定。func main() { conent,err:=ioutil.ReadFile("filepath") if err !=nil{ //错误...
Promise执行流程分析 先上代码console.log(1);new Promise(function (resolve, reject){ reject(true); window.setTimeout(function (){ resolve(false); }, 0);}).then(function(){ console.log(2);}, function...
linux系统病毒查杀神器clamav 安装Debianapt-get updateapt-get install clamavRHEL/CentOSyum install -y epel-releaseyum install -y clamavFedora yum install -y clamav clamav-updateMandrivaurpmi clamav clamdSee package e...
markdown demo 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码...
etcd的使用详解 etcd的使用详解安装安装wget https://github.com/etcd-io/etcd/releases/download/v3.3.10/etcd-v3.3.10-linux-amd64.tar.gztar -xzvf etcd-v3.3.10-linux-amd64.tar.gzcp -av ./etcd-v3.3.10-linux-amd64 /usr/local/e...
etcd的使用详解 etcd的使用详解安装安装wget https://github.com/etcd-io/etcd/releases/download/v3.3.10/etcd-v3.3.10-linux-amd64.tar.gztar -xzvf etcd-v3.3.10-linux-amd64.tar.gzcp -av ./etcd-v3.3.10-linux-amd64 /usr/local/e...
从servlet到struts2 ServletServlet优点1、Servlet是mvc的基础,其他的框架比如struts1,struts2,webwork都是从servlet基础上发展过来的。所以掌握servlet是掌握mvc的关键。 2、Servlet把最底层的api暴漏给程序员,使程序员更能清楚的了解mvc的各个特点。 3、程序员可以对servlet进行封装。Struts2就是从servlet中封装以后得...
java之Servlet基础 什么是Servlet?* 服务器端Java程序,servlet需要交给服务器来运行。* 与javax.servlet.Servlet接口有关的java程序如果使用servlet?* 创建web项目* 创建一个类,并实现Servlet接口* 交给服务器运行 /WEB-INF/web.xml* ``` <!-- 注册servlet <ser...
mysql之InnoDB存储引擎剖析 Mysql技术内幕查看配置文件生效顺序查看配置文件生效顺序(如果多个配置文件中有同一个人参数,会读取到最后一个配置文件)mysql --help|grep my.cnfmysql存储引擎MYSQL5.5.8开始,innnodb作为默认的存储引擎,对于MyISAM存储引擎,Mysql只缓存其索引文件,数据文件的缓存由操作系统完成,这与其他使用LRU算法的大部分数据库...
java技术栈 计算机基础网路TCP 协议,它和 UDP 的差异TCP 三次握手四次挥手 拆、粘包HTTP &lt;&lt;图解http&gt;&gt;操作系统进程、线程、内存等概念;服务器常见的命令使用《鸟哥的 Linux 私房菜》数据结构与算法二叉树、红黑树、栈、队列等选择和排序算法 LeetCode,&lt;&lt;算法&gt;
CSRF 攻击原理和防范措施 CSRF 背景与介绍CSRF(Cross Site Request Forgery, 跨站域请求伪造)是一种网络的攻击方式,它在 2007 年曾被列为互联网 20 大安全隐患之一。其他安全隐患,比如 SQL 脚本注入,跨站域脚本攻击等在近年来已经逐渐为众人熟知,很多网站也都针对他们进行了防御。然而,对于大多数人来说,CSRF 却依然是一个陌生的概念。即便是大名鼎鼎的 Gmail, 在 2007...
Tomcat Java体系结构包括四个独立但相关的技术:Java程序设计语言Java class文件格式Java APIJava VM用Java语言编译源代码,把它编译成Java Class文件,然后在Java VM中运行class文件;当编写程序时,通过调用类(Java API)中的方法来访问系统资源,而当程序运行时,它通过调用class文件中实现了Java API的方法也...
laravel之session踩坑记 使用laravel框架,用原生的session存储,发现a方法中设置的session,b方法中死活获取不到,网上各种方法都试过了,但是本地wnmp环境是ok的,线上lnmp环境就是不行,后来发现是session的键使用的是纯数字就不行,带有字母才可以,很怪很坑爹....
php实现双向链表,实现增删改查 <?phpclass MyList{ public function __construct($data = array()) { $this->data = $data; } function getLen() { return count($this->data); } fun...
laravel中用到的面向对象的高级特性 1.PHP文件的自动加载<?phpfunction __autoload($class_name){ $name = strtolower($class_name); $path = "../includes/{$name}.php"; if(file_exists($path)){ require_once($path); ...
ftp环境vsftpd的搭建和配置 安装ftpyum install vsftpd查询配置文件rpm -qc vsftpd不知道包名的情况下如何查询包名yum whatprovides */ftp #将会查询所有yum源中跟ftp命令有关的包编辑配置文件vim /etc/vsftpd/vsftpd.conf#确保以下配置anonymous_enable=NO #关闭匿...