
理论
文章平均质量分 56
YiFeng_888
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
对数据库数据去重distinct()的用法
参考网址:http://www.w3school.com.cn/sql/sql_distinct.aspSQL SELECT DISTINCT 语句在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 DISTINCT 用于返回唯一不同的值。语法:SELECT DISTINCT 列名称 FROM 表名称使用 DISTIN...原创 2019-03-04 18:03:08 · 9961 阅读 · 0 评论 -
yii框架给我们所带来的好处?
说到这里大概可以从7个方面对yii框架进行一个简单的概述。1. 易于安装 安装处理使用Composer。2. 利用现代技术 Yii是一种纯粹的面向对象框架,并且利用PHP的一些更高级的功能,包括延迟静态绑定,SPL类和接口,和匿名函数。3. 高度可扩展性Yii 看起来就像一件样式很棒的西装,但也非常容易根据你的需求来进行定制. 实际上框架的每一个组件都是可以扩展的。4. 鼓励测试Yi...原创 2019-01-22 07:32:56 · 464 阅读 · 0 评论 -
网站优化 14条--雅虎十四条优化原则
相信互联网已经越来越成为人们生活中不可或缺的一部分。Ajax,flex等等富客户端的应用使得人们越加“幸福”地体验着许多原先只能在C/S实 现的功 能。比如Google机会已经把最基本的office应用都搬到了互联网上。当然便利的同时毫无疑问的也使页面的速度越来越慢。自己是做前端开发的,在性能方面,根据Yahoo的调查,后台只占5%,而前端高达95%之多,其中有88%的东西是可以优化的。以...转载 2019-01-16 09:43:45 · 494 阅读 · 0 评论 -
TCP/IP 网络数据封包和解包
这是一个网上的代码;下面列出资料并简略分析代码; TCP/IP 网络数据封包和解包 . TCP/IP 网络数据以流的方式传输,数据流是由包组成,如何判定接收方收到的包是否是一个完整的包就要在发送时对包进行处理,这就是封包技术,将包处理成包头,包体 包头是包的开始标记,整个包的大小就是包的结束标记。接收方只要按同样的方式解包即可,下面是一个网络服务端和客户端程序代码。 客户端和...转载 2019-01-16 09:40:56 · 3015 阅读 · 0 评论 -
【Web优化】Yslow优化法则(汇总篇
一、Make Fewer HTTP Requests (尽可能减少http请求数)http请求是要开销的,减少请求数可以提高网页加载速度。常用的方法,合并css,js以及 Image maps和css sprites等。(css sprites是指只用将页面上的背景图合并成一张,然后通过background-position来取背景。)更多请参考《【Web优化】Yslow优化法则(一)最小...转载 2019-01-16 09:32:45 · 278 阅读 · 0 评论 -
关于ob函数的使用和应用场景
ob缓冲区:通过浏览器向Apache或者nginx发送请求,然后去调用PHP,在返回给浏览器信息的时候如果ob开启,就会将信息输出到ob里,例如(输出(echo、print_r、var_dump.......等)),然后在经过程序缓冲最终返回给浏览器,显示到页面上。如下图:在使用ob函数之前我们需要修改一下php.ini的配置文件,切记修改完配置文件要重启Apache或nginx。...转载 2019-01-15 21:04:01 · 781 阅读 · 0 评论 -
什么是SPU、SKU、SKC、ARPU
首先,搞清楚商品与单品的区别。例如,iphone是一个单品,但是在淘宝上当很多商家同时出售这个产品的时候,iphone就是一个商品了。商品:淘宝叫item,京东叫product,商品特指与商家有关的商品,每个商品有一个商家编码,每个商品下面有多个颜色,款式,可以有多个SKU。SPU = Standard Product Unit (标准化产品单元)SPU是商品信息聚合的最小单位,是...转载 2019-01-15 18:47:07 · 393 阅读 · 0 评论 -
ES架构及原理
Elasticsearch 是一个兼有搜索引擎和NoSQL数据库功能的开源系统,基于Java/Lucene构建,可以用于全文搜索,结构化搜索以及近实时分析。说明: Lucene:只是一个框架,要充分利用它的功能,需要使用JAVA,并且在程序中集成Lucene,学习成本高,Lucene确实非常复杂。 Elasticsearch 是 面向文档型数据库,这意味着它存储的是整个对象或者 文档,它不...原创 2019-01-15 17:50:54 · 4471 阅读 · 0 评论 -
服务器上搭建lnmp环境
https://lnmp.org/install.html好牛逼,记录下安装步骤:1、使用putty或类似的SSH工具登陆VPS或服务器;登陆后运行:screen -S lnmp如果提示screen: command not found 命令不存在可以执行:yum install screen 或 apt-get install screen安装,详细内容参考screen教程。...原创 2019-01-20 15:26:53 · 202 阅读 · 0 评论 -
面向对象与面向过程的编程思想比较
面向过程与面向对象的区别面向过程”是一种以事件为中心的编程思想。 就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 “面向对象”(Object Oriented,简称OO)是一种以事物为中心的编程思想。 面向对象的程序设计(Object-OrientedProgramming,简记为OOP) 比如以公共汽车而言。...原创 2019-01-15 10:03:45 · 386 阅读 · 0 评论 -
使用码云做持续集成
1、注册账号2、新建一个项目3、确定开发流程项目地址Https码云的https链接地址来和码云上的项目交互的时候,根据项目的特性,有时候可能需要输入用户名和密码。公有项目因为公有项目允许任何人clone、pull等只读操作,因此不需要密码。克隆git clone https://gitee.com/hjsiamcer/lnmp.git pullgit p...原创 2019-01-22 10:30:53 · 468 阅读 · 0 评论 -
聚集索引和非聚集索引
微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)方法/步骤 1、聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,后者按姓氏排列数据。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引...原创 2019-01-22 14:59:47 · 159 阅读 · 0 评论 -
邮箱激活功能,前台用户注册后需要登录邮箱激活账号才能够登录的,请简述激活过程,重点是安全性
在提交了注册信息后,同时在数据库中写入激活码,同时程序把激活码(链接)发送到注册者的信箱里,注册者点击激活链接后,程序会和数据库里的数据进行对比,对比通过即完成激活。 每次有新用户注册,记录并验证 IP、MAIL 地址注册次数。 2、发激活 MAIL 后记录此地址发信时间。 目的只有一个,就是防止有人用激活邮件做为攻击别人邮箱的工具。 ...原创 2019-01-16 18:57:33 · 5186 阅读 · 2 评论 -
OAuth2.0认证流程与微信OAuth2.0认证流程的区别?
原创 2019-02-13 09:16:02 · 249 阅读 · 0 评论 -
电商中spu和sku是什么?怎么去设计表结构?
SPU中文全称:标准化产品单元。译为:最小包装单元;SPU可以直接认为是很多个产品打包组成的一个新物品,有更多的新特性和更多的形态。 SKU中文全称库存量单位。译为:最小主要单元;SKU不同于SPU,它可以认为就是一个很简单的物品。而这些个简单的物品打包组合就是SPU,比如,现在有5个iPhone(SKU),如果5个为一个生产最小单位,那么这5个iPhone就是组合打...原创 2019-02-18 14:44:22 · 7098 阅读 · 0 评论 -
订单管理里面都有什么表?支付宝第三方支付,传什么参数,异步回调什么参数
一般做订单管理模块,基表有:商品表,订单表,订单商品关联表,订单详情表,订单类型表,订单凭证表,采购订单.我们在使用支付接口时,需要传入appid,支付宝网关,应用公钥这些参数,异步回调的参数有:通知时间,通知类型,编码格式,签名,支付宝交易号…等等订单表: 商品表: ...原创 2019-02-18 14:43:36 · 1214 阅读 · 0 评论 -
给你个抽奖活动,概率你该如何设置?
抽奖算法需要满足的需求如下: 1.可以控制中奖的概率 2.具有随机性 3.最好可以控制奖品的数量 4.根据用户ID或者ip、手机号、QQ号等条件限制抽奖次数 不同概率的抽奖原理就是把0到*(比重总数)的区间分块 分块的依据是物品占整个的比重,再根据随机数种子来产生0-* 中的某个数 判断这个数是落在哪个区间...原创 2019-02-18 14:42:45 · 14196 阅读 · 0 评论 -
单例模式的优缺点和使用场景
单例模式的优缺点和使用场景首先介绍一下单例模式: 单例模式(Singleton),也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单...原创 2019-02-12 16:24:04 · 269 阅读 · 0 评论 -
服务器负载均衡是什么?
什么是负载均衡呢?负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外供应效力而无须其他服务器的辅助。经过某种负载分管技术,将外部发送来的央求均匀分配到对称结构中的某一台服务器上,而接收到央求的服务器独登时回应客户的央求。均衡负载可以平均分配客户央求到服务器列阵,籍此供应快速获取重要数据,解决很多并发访问效力问题。这种群集技术可以用最少的出资取得接近...原创 2019-02-12 11:01:24 · 7673 阅读 · 0 评论 -
php中正则表达式详解
php中正则表达式详解概述正则表达式是一种描述字符串结果的语法规则,是一个特定的格式化模式,可以匹配、替换、截取匹配的字符串。常用的语言基本上都有正则表达式,如JavaScript、java等。其实,只有了解一种语言的正则使用,其他语言的正则使用起来,就相对简单些。文本主要围绕解决下面问题展开。有哪些常用的转义字符 什么是限定符与定位符 什么是单词定位符 特殊字符有哪些 什么是...原创 2019-01-23 16:10:37 · 311 阅读 · 0 评论 -
项目上线流程
项目上线流程图:在整个过程中,首先,第一步、开发提交项目代码, 及部署文档, 发给测试人员。第二步、测试人员根据部署文档, 在线上测试机器部署及测试。第三步、如果测试没有问题, 将直接在生产中部署。第四步、如果测试有问题, 退回给开发 开发修复并 svn tags 然后 测试人员使用 svn witch 切换到对应的 tags 再测试。第五步、直到测试没有问题. 部署线上生产...原创 2019-01-23 10:21:24 · 9188 阅读 · 0 评论 -
绑定手机号功能,注册后在个人中心有一个绑定手机号的菜单,输入手机号码,手机接收短信验证码(有效期5分钟),简述实现思路。
页面一个验证码文本输入框,后面跟一个“获取验证码”按钮,同时限制按钮的点击时间,一般是限制1分钟才能点击一次,点击按钮,将用户ID,生成的验证码,存入数据库,接下来调用短信发送接口将信息发送出去,表单提交时,判断该验证码是否正确(是否在表中存在同时验证码是否失效,一般是五分钟内失效) 总体思路 时效限制: [5-10min],使用次数限制: 1次,IP次数限制: 防止恶意刷手机验证码短信...转载 2019-01-16 19:20:28 · 4435 阅读 · 0 评论 -
什么是面向对象的编程思想?
面向对象的编程产生的历史原因:由于面向过程编程在构造系统时,无法解决重用,维护,扩展的问题,而且逻辑过于复杂,代码晦涩难懂,因此,人们开始想能不能让计算机直接模拟现实的环境,以人类解决问题的方法,思路,习惯和步骤来设计相应的应用程序。于是,面向对象的编程思想就产生了。面向对象的编程的主要思想是把构成问题的各个事物分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述一个事物在解决问题...原创 2019-01-15 10:02:39 · 270 阅读 · 0 评论 -
电商系统的商业模式
电子商务模式:电子商务模式,就是指在网络环境和大数据环境中基于一定技术基础的商务运作方式和盈利模式。研究和分析电子商务模式的分类体系,有助于挖掘新的电子商务模式,为电子商务模式创新提供途径,也有助于企业制定特定的电子商务策略和实施步骤。电子商务模式可以从多个角度建立不同的分类框架,最简单的分类莫过于BtoB、BtoC和CtoC这样的分类,还有新型B2Q模式、BOB模式,但就各模式还可以再次...原创 2019-01-15 10:04:08 · 1146 阅读 · 0 评论 -
关于kafka 保证消息不丢失问题
kafka 保证消息不丢失。原因如下有:1)生产者如果异步发送,会造成消息丢失,发送的过程中kafka会先把消息缓存起来。然后批量发送。 若批量发送之前client宕机会造成消息丢失。生产者不丢失消息需要同步发送2)kafka服务器默认异步刷盘,先刷到系统页缓存,然后再刷新到日志文件。页缓存的数据可能会丢失。解决可以同步的方式刷盘,但是这样效率很低,比rabbitmq低。 对于我说的第...原创 2019-01-14 20:33:26 · 589 阅读 · 0 评论 -
微信公众号二次开发可以做哪些功能?
微信公众平台现在很多商家企业都在使用,但如何通过微信公众平台展现自己企业的特色和优势,给客户提供更多便利功能,进而通过微信公众平台为企业带来更多的益处呢?这是众多使用微信公众平台的商家企业需要深入思考的问题,微信公众平台自带的很多功能,但难以满足所有企业的不同特定化的需求,所以企业需要通过微信公共平台二次开发来实现更多功能需求,使得微信公众平台更好的为企业所用。但很多企业不具备微信公众平台...转载 2019-01-17 18:32:22 · 1710 阅读 · 0 评论 -
什么是缓存穿刺和缓存雪崩?如何解决缓存穿透,缓存雪崩
作为参考使用,以便查阅。一.缓存穿透: 缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时需要从数据库查询,查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询,造成缓存穿透。 解决办法: 1.布隆过滤 对所有可能查询的参数以hash形式存储,在控制层先进行校验,不符合则丢弃。还有最常见的则是采用布隆过滤器,将所有可能存在的...原创 2019-01-11 11:26:20 · 5752 阅读 · 0 评论 -
apache 和 Nginx各自的优缺点
本文转自http://blog.youkuaiyun.com/zkp0601/article/details/45546769 1、nginx相对于apache的优点: 轻量级,同样起web 服务,比apache占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能 高度模块化的设计,编写模块相对简单 社...转载 2018-12-27 18:00:04 · 192 阅读 · 0 评论 -
两台服务器之间快速拷贝文件方法
两台服务器之间快速拷贝文件方法1.ftp2.samba服务3.sftp4.scpscp 本地用户名@IP地址:文件名1 远程用户名@IP地址:文件名2 [本地用户名@IP地址:] 可以不输入,可能需要输入远程用户名所对应的密码. 可能有用的几个参数: -v 和大多数linux命令中的-v意思一样,用来显示进度.可以用来查看连接,认证,或是配置错误. -C...原创 2018-12-14 10:36:55 · 4312 阅读 · 1 评论 -
Laravel 的文件夹(目录)结构
文件夹结构5.7 Laravel 5.7 中文文档 / 文件夹结构Laravel 的文件夹结构简介 根目录 app 目录 bootstrap 目录 config 目录 database 目录 public 目录 resources 目录 routes 目录 storage 目录 tests 目录 vendor 目录 App 目...转载 2018-12-13 11:35:30 · 1482 阅读 · 0 评论 -
laravel5.7 配置信息
配置信息5.7 Laravel 5.7 中文文档 / 配置信息配置介绍 环境配置 环境变量类型 检索环境配置 确定当前环境 访问配置值 配置缓存 维护模式介绍Laravel 框架的所有配置文件都保存在 config 目录中。每个选项都有说明,你可随时查看这些文件并熟悉都有哪些配置选项可供你使用。环境配置对于应用程序运行的环境来说...转载 2018-12-13 10:46:55 · 538 阅读 · 0 评论 -
php的两个memcached扩展:memcache和memcached
php的两个memcached扩展:memcache和memcached本文转载自:https://blog.youkuaiyun.com/fwkjdaghappy1/article/details/7592337现在在php中memcached用的很多,以前一直使用的是php的memcache扩展,最近开始改用了php的memcached扩展(注意这里memcache和memcached扩展的名字就...转载 2018-12-12 21:51:22 · 646 阅读 · 0 评论 -
array_merge()合并数组和array_merge_recursize()
因时间有限,将三种合并方式输出显示,请大家看好区别! public function marge(){ echo '<pre>'; $arr1=['color'=>'red',6,7]; $arr2=['color'=>'blue',6,7]; $data=array_merge($arr1,$arr2); $info=array_merge...原创 2018-11-26 11:23:52 · 776 阅读 · 0 评论 -
git 和svn有什么区别?如何体现git是分布式的呢?如何处理git拉取冲突?
转载地址:https://blog.youkuaiyun.com/rao1255165570/article/details/85549520 版权声明:本文为博主原创文章,转载请附上博文链接! git 和svn有什么区别?怎么体现git是分布式的呢? 在我的项目中版本控制工具有git和SVN都用过,其中它们的区别是:git 和svn有什么区别?1)GIT是分布式的,SVN不是:这是GIT...转载 2019-01-13 11:46:17 · 300 阅读 · 0 评论 -
PHP 常见50道问答
原文:https://blog.youkuaiyun.com/rao1255165570/article/details/86250265 版权声明:本文为博主原创文章,转载请附上博文链接面试中常问的题:1.请自我介绍一下?答:我叫 xxx,来自北京,20xx 年毕业于 xx 大学计算机 xx 系,毕业后在武汉从事了 x 年的 php 开发工作,公司是一个外包公司,主要做微信开发,公众号推广,商...转载 2019-01-14 10:20:46 · 472 阅读 · 1 评论 -
电商中事务的特性之一【隔离性】的乐观锁和悲观锁
引言为什么需要锁(并发控制)? 在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。这就是著名的并发性问题。典型的冲突有:丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。例如:用户A把值从6改为2,用户B把值从2改为6,则用户A丢失了他的更新。脏读:当一个事务读取其它完成一半事务的记录时,就会发生脏读取。例如:用户A,B看到的值都是6,...转载 2019-01-08 19:16:17 · 268 阅读 · 0 评论 -
常见的kafka面试题
1、请说明什么是Apache Kafka?Apache Kafka是由Apache开发的一种发布订阅消息系统,它是一个分布式的、分区的和重复的日志服务。2、请说明什么是传统的消息传递方法?传统的消息传递方法包括两种:排队:在队列中,一组用户可以从服务器中读取消息,每条消息都发送给其中一个人。发布-订阅:在这个模型中,消息被广播给所有的用户。3、请说明Kafka相对传统技术有...原创 2019-01-14 20:10:41 · 494 阅读 · 0 评论 -
linux安装以及开启ssh
1.查看ssh服务的状态 输入以下命令:sudo service sshd status如果出现Loaded: error (Reason: No such file or directory)提示的话,说名没有安装ssh服务,按照第二步:安装ssh服务。如果出现Active: inactive (dead)说明已经安装了ssh服务,但是没有开启。按照第三步:开启...原创 2019-01-14 19:44:50 · 349 阅读 · 0 评论 -
购物车的实现原理
购物车相当于现实中超市的购物车,不同的是一个是实体车,一个是虚拟车而已。用户可以在购物网站的不同页面之间跳转,以选购自己喜爱的商品,点击购买时,该商品就自动保存到你的购物车中,重复选购后,最后将选中的所有商品放在购物车中统一到付款台结账,这也是尽量让客户体验到现实生活中购物的感觉。服务器通过追踪每个用户的行动,以保证在结账时每件商品都物有其主。 主要涉及以下几点: 1、把商...原创 2019-01-14 19:32:12 · 730 阅读 · 0 评论 -
nosql和Mysql的区别
nosql和Mysql的区别 也即非关系型数据库和关系型数据库。目前世界上主流的存储系统大部分还是采用了关系型数据库,其主要有一下优点:1.事务处理—保持数据的一致性;2.由于以标准化为前提,数据更新的开销很小(相同的字段基本上只有一处);3.可以进行Join等复杂查询。nosql在优势方面,主要体现在下面这三点: 1. 简单的扩展:典型例子是Cassandra,由...原创 2019-01-20 09:07:08 · 333 阅读 · 0 评论