- 利用nginx做反向代理解决前端的跨域问题 06-23
- 玩转Redis集群(下) 06-23
- python爬虫-数据提取之JsonPATH 06-22
- 关于PHPExcel中日期转换遇到的一些问题 06-22
- 「每日一面」浅析PHP7新功能及语法变化总结 06-22
- IT行业仍然吃香,来广州东圃牵引力学IT前程似锦 06-22
- centos离线安装mysql 06-22
- 手抖删掉mysql的生产库,一定要跑路么? 06-22
- MySQL高性能助推:table-cache参数源码 06-22
- 数据库管理入门之四(末尾有彩蛋) 06-22
利用nginx做反向代理解决前端的跨域问题
发布者: PHPYuan | 发布时间:2018-06-23首先我们要从nginx官网去下载nginx的压缩包,解压之后就可以用了,然后找到nginx目录下的nginx.conf文件,然后进行配置
配置如下:
到这一步我们的nginx就算是配置完成了,然后我们再说一下nginx常用的命令
启动:start nginx
停止: nginx -s quit
重新加载配置文件: nginx -s reload
查看windows任务管理器下Nginx的进程命令:tasklist /
玩转Redis集群(下)
发布者: PHPYuan | 发布时间:2018-06-23接上一篇《玩转Redis集群(上)》,我们来继续玩~
Redis集群操作实践数据的分布性
数据分布性
从上面的操作,你可以看到,当存储某一个数据的时候,会分配一个slot,而这个slot从属于某一个Master,也就是说你需要明白,数据是分布的存储在Redis集群当中的。
在线水平扩容
Redis Cluster有一个非常重要的特点就是可以在线的添加节点,实现不影响业务的水平扩容。在这里,我将会在原来6个redis节点上,再添加2个redis节点。做法和以前一致,注意修改redis.conf,然后在启动8007、8008这2个redis实例。
python爬虫-数据提取之JsonPATH
发布者: PHPYuan | 发布时间:2018-06-22JsonPath
JsonPath 是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括:Javascript, Python, PHP 和 Java。
JsonPath 对于 JSON 来说,相当于 XPATH 对于 XML。
下载地址:https://pypi.python.org/pypi/jsonpath
安装方法:点击Download URL链接下载jsonpath,解压之后执行python setup.py install
官方文档:http://goessner.net/articles/JsonPath
JsonPath与XPath语法对比:Json结构清晰,可读性高,复杂度低,非常容易匹配,下表中对应了XPath的用法。
我们以拉勾网城市JSON文件 http://www.lagou.com/lbs/get
关于PHPExcel中日期转换遇到的一些问题
发布者: PHPYuan | 发布时间:2018-06-22这两天传日期的时候遇到比较奇葩的错误,在excel表中的日期是同样的数据格式,但是两个表导入时候有一个日期是需要转换之后导入而有一个可以直接导入。忘记截图,需要转换的直接输出是40000+的数字(以今天的日期来说是这样的),代表1900-1-1到这一天日期的天数
日期转换代码
$变量= gmdate("Y-m-d", PHPExcel_Shared_Date::ExcelToPHP($sheet->getCellByColumnAndRow($col,$row)->getValue())); //格式化日期
不知道有没有小伙伴遇到同样的错误哈哈,为了解决这两个错误,想了一个办法,思路是判断获取的是字符串还是数字,如下图所示拿它做出比较,是字符串则不能这样判断一定会执行else就达到了目的,具体代码如下:
[php] view plain copy
if($col==1){//将日期列单独拿出来判断,做格式化操作,再存到数组 $date=$sheet->getCellByColumnAndRow($col,$row)->getValue();//先将这个单独拿出来存好用来判断 if($date>4000){//判断到底拿到的是数字还是字符串,是数字就先转换,格式化日期,这里的是我自己存值的数「每日一面」浅析PHP7新功能及语法变化总结
发布者: PHPYuan | 发布时间:2018-06-22标量类型声明
有两种模式: 强制 (默认) 和 严格模式。 现在可以使用下列类型参数(无论用强制模式还是严格模式): 字符串(string), 整数 (int), 浮点数 (float), 以及布尔值 (bool)。在旧版中,函数的参数声明只能是(Array $arr)、(CLassName $obj)等,基本类型比如Int,String等是不能够被声明的
<?phpfunction check(int $bool){var_dump($bool);}check(1);check(true);若无强制类型转换,会输入int(1)bool(true)。转换后会输出bool(true) bool(true)
返回值类型声明
PHP 7 增加了对返回类型声明的支持。返回类型声明指明了函数返回值的类型。可用的类型与参数声明中可用的类型相同。
<?phpfunction arraysSum(array ...$arrays): array{return array_map(function(array $array): int {return array_sum($array);}, $arrays);}print_r(arraysSum([1,2,3], [4,5,6], [7,8,9]));以上例程会输出:
IT行业仍然吃香,来广州东圃牵引力学IT前程似锦
发布者: PHPYuan | 发布时间:2018-06-222010年后的移动互联网时代,中国互联网进入高速发展期,随后大数据、人工智能、网络安全,相关领域投资水涨船高,中国涌现出一批公司估值超过10亿美元的独角兽公司。
1.技术类人才依旧紧俏
经调研发现,程序员等技术类人才的工资和工作数量,在未来受资本寒冬影响不大,其他比如公关等非技术岗位工作缺口有所减少。在数字经济时代,以及未来的人工智能时代,专业、高技术的程序员,依旧紧俏,特别是专业的资深程序员。
2.IT产业的人才缺口将继续扩大
目前我国信息领域的教育基础相对薄弱,培养的高端人才根本不能满足市场需求。2018年IT行业人才缺口还继续扩大,学IT请抓紧时机,早人一步就是最大的成就感,广州东圃牵引力IT培训满足你学IT的需求。
3.结构性人才过剩和缺失都将存在
未来五年,各类人才将泥沙俱下,结构性人才过剩和缺失都将存在。以2017年为例,Java专业、大数据专业成为热门专业,学生填报志愿蜂拥而上,各地IT培训机构如雨后春笋,随着科技的发展,越来越多的低水平的程序操作会被机器取代,需要的低数量的高水平技术人才,蜂拥而上的学员,如果没有扎实的本领,未来也将迎来残酷的人才市场洗牌。
4.Python、大数据等领域将出现高薪人才
中国实体经济特别是制造业领域,行业工资水平涨幅缓慢,实体经济发展
centos离线安装mysql
发布者: PHPYuan | 发布时间:2018-06-22我的是centos6.5:https://dev.mysql.com/downloads/file/?id=476409
第一步:这里我们需要根据我们的操作系统版本下载数据库:
CentOS_6下载:mysql-5.7.22-1.el6.x86_64.rpm-bundle.tar
CentOS_7下载:mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar
下载地址:https://dev.mysql.com/downloads/mysql/
删除已安装的mysql系统默认自带安装了低版本的
先查询再卸载:
解压包:
手抖删掉mysql的生产库,一定要跑路么?
发布者: PHPYuan | 发布时间:2018-06-22上周夜里,一个奢侈品电商网站的程序员手抖,把阿里云rds的某个库给删了,当时都11点多了,心中一万个羊驼在奔腾,还好,没让我出书,小弟就把它给恢复了。昨天上午,又一个网站的程序员手抖,给一个还要用的库给删了。这也不能全怪他,本来计划迁移数据的,因为数据库太大,进行分拆,把大库变小。迁移走了一些,就要删掉迁走的,这样以利于后边迁移加快速度。
也许有人说,这是管理上的问题,的确如此。应该加强权限管理,并制度相应的技术保障措施及流程规范。有相应的保障或者措施,虽然不能完全杜绝误操作,但起码会大大降低概率。我为啥经常遇到这种事情,来回折腾呢?主要是这些年,我做的是外围支援,以技术层面为主,不参与更多的事务。当然,对于大多数规模有限的公司来说,完善流程制度也难于落实。因此,虽然遇到不少麻烦,总结一下写出来,应该对其他人有所帮助。
恢复的第一要务,是找备份。还好,有一个2018年6月9日的备份存在。本来一直都在自动备份的,后来由于要迁移,而且据说近期夜间备份时,非常占用资源,负载老高,到上午上班时,备份压缩那一步还没有结束,就把备份给停了。
作者介绍
曹啸,民生银行信息科技部MySQL DBA,目前主要致力于MySQL源码及相关特性研究工作。在银行科技行业工作多年,兼具开发及运维工作经验,同时对银行多个业务领域亦有涉猎。
注:本文系作者原创投稿,首发于民生运维订阅号(ID:CMBCOP)。
一、引言
MySQL数据库自问世以来,就因它的体积小、速度快、低成本等优势受到众多企业的追捧。同时由于它的完全开源特性,更增进了广大数据库爱好者对其深入研究的兴趣,通过源码的研究与探索,MySQL越来越多的优秀特性被广泛挖掘出来。
本文将围绕MySQL table-cache相关参数进行相应的源码解读及性能分析,旨在为使用MySQL的众多数据库工程师提供一些实际开发或运维工作的助益。
二、参数源码解读
table-cache相关参数具体包括:
open_files_limit;
max_connections;
t
数据库管理入门之四(末尾有彩蛋)
发布者: PHPYuan | 发布时间:2018-06-22一、多表查询
1.1复制表
1.1.1功能:可以备份、快速建立相同表结构的表;
1.1.2基本用法:create table 库.表 sql查询
//库不指定则复制到当前库下
eg:create table yyy select * from xxx;
//将源表xxx复制为新表yyy
mysql> create table t2 select id,name from A.user limit 10;
ps:
复制表时源表中键值的设置不会复制到新表,需要手动添加,复制的内容取决于查询结果,不一定要整表复制;
快速建立表结构但不需要内容时可将查询条件设为全部不匹配,使得查询结果为0,则复制过来的只有表结构,再手动加上键值即可,如:
mysql> create table t3 select * from A.user where 1=2;
Query OK, 0 rows affected (0.03 sec)
mysql> desc t3;
1.2多表查询(连接查询)
1.2.1含义:
当2个或2个以上的表按某个条件连接起来,从中选择需要的数据;
当多个表
