自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (3)
  • 收藏
  • 关注

翻译 RabbitMQ教程之php-amqplib(二)简介、入门

RabbitMQ 简介、入门介绍RabbitMQ 是一个消息代理:它接收并转发消息。你可以把它当成一个邮局,当你把你想发送的邮件投进邮箱时,你可以确定邮递员最终会把邮件送到你的收件人。在上面的比喻中,我们把 RabbitMQ 比作 邮箱、邮局、邮递员。RabbitMQ 和 邮局主要的不同是RabbitMQ不处理真实的信件,它接收、存储和转发二进制的数据–消息(message)。Ra...

2019-03-09 11:41:35 874

原创 RabbitMQ教程之php-amqplib(一)安装RabbitMQ

准备:yum installbuild-essential openssl openssl-devel unixODBC unixODBC-develmake gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz下载:wget www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.cen...

2019-03-09 11:38:48 789

转载 服务降级

什么是服务降级服务降级:主要是针对非正常情况下的应急服务措施;比如电商平台,在针对618、双11等高峰情形下采用部分服务不出现或者延时出现的情形。举个例子大家都见过女生旅行吧,大号的旅行箱是必备物,平常走走近处绰绰有余,但一旦出个远门,再大的箱子都白搭了,怎么办呢?常见的情景就是把物品拿出来分分堆,比了又比,最后一些非必需品的就忍痛放下了,等到下次箱子够用了,再带上用一用。而服务降级...

2019-02-20 18:54:49 348

原创 Python3入门机器学习 - 集成学习

集成学习是使用一系列学习器进行学习,并使用某种规则把各个学习结果进行整合从而获得比单个学习器更好的学习效果的一种机器学习方法。#准备数据X,y = datasets.make_moons(noise=0.3,n_samples=500,random_state=42)from sklearn.model_selection import train_test_splitX_tra...

2019-02-20 16:13:36 663

原创 Python3入门机器学习 - 模型泛化

模型正则化在多项式回归中如果degree过大,会造成过拟合的情况,导致模型预测方差极大,因此,我们可以使用模型正则化的方式来减小过拟合导致的预测方差极大的问题 即在我们训练模型时,不仅仅需要将预测的y和训练集的y的均方误差达到最小,还要使参数向量最小。(即上图公式。) 使用岭回归达到最小方差from sklearn.linear_model import Ridg...

2019-02-20 16:13:25 349

原创 Python3入门机器学习 - 决策树

信息熵 左式的信息熵较高,代表左式的不确定性更强,左式即指数据有三个类别,每个类别占1/3 右式的信息熵为0,是信息熵可以达到的最小值,代表数据的不确定性最低,即最确定 绘制决策树的决策边界import numpy as npimport matplotlib.pyplot as pltfrom sklearn import datasetsiri...

2019-02-20 16:13:18 185

原创 Python3入门机器学习 - 支撑向量机SVM

SVM的主要思想可以概括为两点:它是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能。 它基于结构风险最小化理论之上在特征空间中构建最优超平面,使得学习器得到全局最优化,并且在整个样本空间的期望以某个概率满足一定上界。   ...

2019-02-20 16:13:11 369

原创 Python3入门机器学习 - 混淆矩阵、精准率、召回率

在分类问题中,预测准确度如果简单的用预测成功的概率来代表的话,有时候即使得到了99.9%的准确率,也不一定说明模型和算法就是好的,例如癌症问题,假如癌症的发病率只有0.01%,那么如果算法始终给出不得病的预测结果,也能达到很高的准确率混淆矩阵二分类问题的混淆矩阵以癌症为例,0代表未患病,1代表患病,有10000个人:癌症问题的混淆矩阵  精准率和召唤率...

2019-02-20 16:13:01 2724

原创 Python3入门机器学习 - 逻辑回归与决策边界

logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,以胃癌病情分析为例,选择两组人群,一组是胃癌组,一组是非胃癌组,两组人群必定具有不同的体征与生活方式等。因此因变量就为是否胃癌,值为“是”或“否”,自变量就可以包括很多了,如年龄、性别、饮食习惯、幽门螺杆菌感染等。逻辑回归需要将原本线性回归结果的值域置于(0,1)之间,概率大于0.5看作结果为1常使...

2019-02-20 16:11:37 829

原创 Python3入门机器学习 - 多项式回归与学习曲线

非线性方程的拟合,例如 y=x^2+0.5x+1 , 就是将x^2看作X的一个特征值#准备数据import numpy as npimport matplotlib.pyplot as pltx = np.random.uniform(-3,3,size=100)X = x.reshape(-1,1)y = 0.5*x**2 + x + 2 +np.random.norma...

2019-02-20 16:11:26 2260

原创 Python3入门机器学习 - PCA(主成分分析)

主成分分析也称主分量分析,旨在利用降维的思想,把多指标转化为少数几个综合指标(即主成分),其中每个主成分都能够反映原始变量的大部分信息,且所含信息互不重复。这种方法在引进多方面变量的同时将复杂因素归结为几个主成分,使问题简单化,同时得到的结果更加科学有效的数据信息。 使用梯度上升法求解主成分//准备数据import numpy as npimport matplotlib...

2019-02-20 16:10:38 1596

原创 Python3入门机器学习 - 梯度下降法

梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。模拟实现梯度下降法def DJ(theta): //计算损失...

2019-02-20 16:10:29 576

原创 Python3入门机器学习 - 线性回归与knn算法处理boston数据集

简单线性回归最小二乘法实现原理使用最小二乘法计算a、b的值,实现线性回归的拟合# _*_ encoding:utf-8 _*_import numpy as npclass SimpleLinearRegression1: //该类使用for循环方法计算a、b值,效率较低 def __init__(self): self.a_ = None ...

2019-02-20 16:10:13 1011

原创 Python3入门机器学习 - GridSearch探索最佳超参数与交叉验证

这次我们依旧使用digits数据集准备数据%%timeimport sklearn.datasetsimport numpy as npfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn.metrics import accuracy_scorefrom sklearn.model_selection im...

2019-02-20 16:09:42 1490

原创 Python3入门机器学习 - k近邻算法

邻近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。kNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。数据预备,这里使用random函数生成10*...

2019-02-20 16:09:31 672

原创 Python3入门机器学习 - 数据可视化基础matplotlib

先上张图折线图plt.plot(x,siny,label="sin(x)")plt.plot(x,cosy,color="red",linestyle="--",label="cos(x)")plt.axis([-2,12,-2,2]) //设置横纵坐标范围,也可以使用 plt.xlim(-2,12) plt.ylim(-2,2)来设置plt.xlabel("x axis")...

2019-02-20 16:09:20 285

原创 Python3入门机器学习 - Jupyter Notebook篇

我们搭建及其学习所需要的环境,可以使用名为ACACONDA的集成工具来进行一键安装,在Acaconda的官网下载安装后,可以得到 Machine Learning更改工作路径使用ANACONDA安装的Jupyter NoteBook,在Anaconda prompt 中直接使用指令Jupyter Notebook指令打开Jupyter Notebook,会以默认的%UserP...

2019-02-20 16:09:05 1284

原创 MyCAT配置文件详解

一、server.xml文件用途1、配置系统相关参数2、配置用户访问权限3、配置SQL防火墙及SQL拦截功能4、dml表示:insert,update,select,delete,0不可以,1可以mycat密码加密java -cp Mycat-server-1.6.5-release.jar io.mycat.util.DecryptUtil 0:root:123456...

2019-02-16 11:52:54 899

原创 Redis多种集群方案

介绍redis作为一款优秀的NoSQL代表软件,正变得越来越流行,虽然Redis很容易就可以启动并使用,但是要想在线上用好它却也并非易事。redis的高可用和可扩展无论是自带的Redis Sentinel还是Redis Cluster都要求客户端进行额外的支持,而目前基本上没有合适的客户端能够做这些事情,实际上客户端来做这些事情也并不合适,它会让维护变得特别困难。因此在客户端和redis服务端...

2019-02-15 10:00:31 934 1

原创 常见状态码

一些常见的状态码为:200 – 服务器成功返回网页404 – 请求的网页不存在503 – 服务器超时 1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态码。 100(继续) 请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101(切换协议) 请求者已要求服...

2019-01-17 00:02:53 129

原创 数据库架构--mysql基准测试

基准测试是针对系统设置的一种压力测试基准测试:直接、简单、易于比较,用于评估服务器的处理能力压力测试:对真实的业务数据进行测试,获得真实系统所能承受的压力目的:1、建立mysql服务器的性能基准线,确定当前mysql服务器运行情况2、模拟比当前系统更高的负载,以找出系统的扩展瓶颈,增加数据库并发,观察QPS,TPS变化,确定并发量与性能最优的关系3、测试不同的硬件、软件和操...

2019-01-16 23:52:49 173

原创 数据库架构--影响数据库性能

1、硬件:Mysql不支持多CPU对同一SQL并发处理web类应用:核心数量比频率重要2、操作系统3、数据库存储引擎的选择MyISAM:不支持事务,表级锁InnoDB:事务级存储引擎,完美支付行级锁,事务ACID特性4、数据库参数配置5、数据库结构设计和SQL语句...

2019-01-16 23:52:09 198

原创 数据库架构

1、最好不要在主库上数据库备份、大型活动前取消这类计划2、影响数据库的因素:SQL查询速度,服务器硬件、网卡流量、磁盘IOQPS:每秒钟处理的查询量TPS:大量的并发:数据库链接数被占满(max_connections默认是100)超高的CPU使用率:因CPU资源耗尽而出现宕机磁盘IO:性能下降,使用SSD等更快的设备网卡IO:被占满如何避免无法连接数据库的情况:...

2019-01-16 23:51:10 437

原创 一个基于ThinkPHP5.1的项目基础应用,支持全局异常处理,支持类似AOP切面验证层

一、支持全局异常处理,异常报错,返回json,而不是html使用ThinkPHP的小伙伴都知道,如果遇到服务报错,直接就返回了HTML代码如果是做API接口的时候,报错后,直接返回HTML,对移动端的小伙伴来说,这个是很不友好的如果是能返回json,那移动端的小伙伴就很容易理解了tp5开始支持重写异常,重写Exception的handle方法首先修改config目录下的app....

2019-01-16 21:42:25 459

原创 设计一个秒杀系统

1、秒杀主要解决2个问题:并发读+并发写稳、准、快高性能:设计数据的动静分离方案、热点的发现与隔离、请求的削峰与分层过滤、服务端的极致优化一致性:实现秒杀减库存高可用:plan B 一、动静分离方案静态数据缓存1、把静态数据缓存到离用户最近的地方:CDN2、静态化改造就是要直接缓存 HTTP 连接如何做动静分离1、URL唯一化:比如说商品详情2、分离...

2019-01-02 15:04:50 575

原创 MQ之间的差异

一、资料文档Kafka:中。有kafka作者自己写的书,网上资料也有一些。rabbitmq:多。有一些不错的书,网上资料多。zeromq:少。没有专门写zeromq的书,网上的资料多是一些代码的实现和简单介绍。rocketmq:少。没有专门写rocketmq的书,网上的资料良莠不齐,官方文档很简洁,但是对技术细节没有过多的描述。activemq:多。没有专门写activemq的...

2019-01-02 14:12:16 750

转载 常用的加密算法

一、摘要算法    1》MD5算法(Message Digest Algorithm 5) 可以保证数据传输完整性和一致性 摘要后长度为16字节 摘要信息中不包含原文信息所有加密结果不可逆(无法解密) 一般在传送文件时 对源文件进行md5 hash 传送到对方后 检测hash值是否相等 如果相等文件传输正确如果不相等 说明文件被篡改(加入木马)或者未传送完成    其他MD算法 M...

2018-11-20 11:51:45 648

原创 各个分类算法优缺点

一、朴素贝叶斯优点:1、朴素贝叶斯模型发源于古典数学理论,有稳定的分类效率。 2、对小规模的数据表现很好,能个处理多分类任务,适合增量式训练,尤其是数据量超出内存时,我们可以一批批的去增量训练。 3、对缺失数据不太敏感,算法也比较简单,常用于文本分类。 缺点:    1、 理论上,朴素贝叶斯模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为朴素贝叶斯模...

2018-10-08 18:04:44 1974

原创 使用Keras实现多输出分类:用单个模型同时执行两个独立分类任务

选自pyimagesearch,作者:Adrian Rosebrock,机器之心编译,参与:Panda。如何让一个网络同时分类一张图像的两个独立标签?多输出分类可能是你的答案。已经推出了两个图像搜索引擎(ID My Pill 和 Chic Engine)的 Adrian Rosebrock 近日发布了一份教程,介绍了使用 Keras 和 TensorFlow 实现「服装种类+颜色」多输出分类的...

2018-09-17 10:39:43 6851 4

转载 解析天池大赛O2O第一名 extract_feature.py 提取特征

读取数据dataset split: (date_received) dateset3: 20160701~20160731 (113640),features3 from 20160315~20160630 (off_test) dateset2: 20160515~20160615 (258446),features2 from 20160201~20160514 dates...

2018-08-30 10:03:27 951

转载 RESTful API

1. RESTful架构风格RESTful架构风格最初由Roy T. Fielding(HTTP/1.1协议专家组负责人)在其2000年的博士学位论文中提出。HTTP就是该架构风格的一个典型应用。从其诞生之日开始,它就因其可扩展性和简单性受到越来越多的架构师和开发者们的青睐。一方面,随着云计算和移动计算的兴起,许多企业愿意在互联网上共享自己的数据、功能;另一方面,在企业中,RESTful AP...

2018-08-29 21:03:34 576

原创 Markdown简介及作用

 Markdown的官方文档是这样介绍Markdown的:Markdown is a way to style text on the web. You control the display of the document; formatting words as bold or italic, adding images, and creating lists are just a ...

2018-08-29 11:54:52 2975

转载 ElasticSearch入门

第一章:课程介绍1-1 课程介绍什么是ElasticSearch基于Apache Lucene构建的开源搜索引擎采用Java编写,提供简单易用的RESTful API轻松的横向扩展,可支持PB级的结构化和非结构化数据处理可用应用场景海量数据分析引擎站内搜索引擎数据仓库一线公司实际应用场景英国卫报-实时分析公众对文章的回应维基百科、GitHub-站内实时搜...

2018-08-27 16:35:15 170

原创 图解分布式架构的演进过程

一、什么是分布式架构分布式系统(distributed system) 是建立在网络之上的软件系统。内聚性:是指每一个数据库分布节点高度自治,有本地的数据库管理系统。透明性:是指每一个数据库分布节点对用户的应用来说都是透明的,看不出是本地还是远程。在分布式数据系统中,用户感觉不数据是分布的,即用户不须知道关系是否分割,有无副本,数据存在于那个站点以及事物在哪个站点上执行。简单来...

2018-07-17 09:17:30 399

原创 以图搜图架构初稿

一、图片集离线增量1、获取近一个月的新款,每个货号获取前5张图片,2、对其进行裁剪拼接图片地址(按最大900比例裁剪,使用存储地址,不使用CND)如:http://obkxpgodc.bkt.clouddn.com/2018/07/12/5b470992afc17.JPG?imageView2/2/h/900/format/jpg/q/75/3、保存到数据库4、跑脚本,批量将数据从七牛云拉取下来5...

2018-07-14 11:34:57 2390 2

原创 数据库架构--高可用

通过缩短因日常维护操作和突发的系统崩溃所导致的停机时间,以提高和应用的可用性1、严重的主从延迟2、主从复制中断3、锁引起的大量阻塞  4、软硬件故障造成的服务器宕机等如何实现高可用1、避免导致系统不可用的因素,减少系统不可用的时间影响因素1、服务器磁盘空间耗尽2、性能糟糕的SQL3、表结构和索引没有优化4、主从数据不一致5、人为的操作失误等解决方案1、建立完善的监控及报警系统2、对备份数据进行恢复...

2018-07-07 23:02:43 1122

原创 数据库架构--数据库监控

一、对数据库服务可用性进行监控1、数据库进程或者端口存在并不意味着数据库就是可用的2、通过网络连接到数据库并且确定数据库是可以对外提供服务的3、使用mysqladmin -umonitor_user -p -h ping4、telnet ip db_port5、使用程序通过网络建立数据库连接(最好的方式)6、确认数据库是否可读:检查数据库的read_only参数是否为off定期对主从服务器中的主数...

2018-07-06 23:12:19 1531 1

原创 数据库架构--分库分表

一、分库分表的几种方式1、把一个实例中的多个数据库拆分到不同的实例2、把一个库中的表分离到不同的数据库中二、数据库分片前的准备ps:数据库分区表是在同一个节点进行的1、对一个库中相关表进行水平拆分到不同实例的数据库中2、如何选择分区键2.1、分区键要尽量避免跨分片查询到发生2.2、分区键要尽量使用各个分片中的数据平均3、如何存储无需分片的表3.1、每个分片中存储一份相同的数据3.2、使用额外的节点...

2018-07-04 23:30:12 170

原创 数据库架构--SQL查询优化

查询优化,索引优化,库表结构优化需要齐头并进一、如何获取有性能问题的SQL1、通过用户反馈获取存在性能问题的SQL2、通过慢查日志获取存在性能问题的SQL2.1、磁盘IO和存储日志所需要的磁盘空间2.2、存储日志所需要的大量的磁盘空间 slow_query_log 启动停止记录慢查日志set gloal slow_query_log=onslow_query_log_file 指定慢查日志的存储路...

2018-07-04 00:02:22 239

原创 数据库架构--索引

类型:B-tree索引,常见的索引(顺序存储)B-tree过引以B+树的结构存储数据B-tree索引能够加快数据的查询速度B-tree索引更适合进行范围查找使用场景:1、全值匹配的查询 order_sn= ‘1234432424242'2、匹配最左前缀的查询3、匹配列前缀查询 order_sn like ‘809090'4、匹配范围值的查询  order_sn > ‘22222223’   ...

2018-07-02 23:42:48 144

swift3中文文档

swift中比较详细的文档,值得推荐,有空就下载看看,挺不错的

2017-09-30

swift4新功能

swift4 新加功能的介绍,是一份挺不错的资料,有空可以下载看看哦!

2017-09-30

人机界面指南

看看,反正你不会亏,人机界面指南真的是一个很不错的书,有机会就了解了解

2015-07-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除