201907-09 分布式系统架构设计 HOT SOA全称(Service Oriented Architecture) 中文意思为 面相服务的架构,他是一种设计方法,轻重包含多个服务,服务之间通过相互依赖最终提供一系列的功能, 一个服务通常以独立的形式存在与操作系统进程中,各个服务之间通过网络调用。 继续阅读 >
201907-08 PHP 新特性:闭包和匿名函数,估计你用得很少 HOT 匿名函数就是没有名称的函数。匿名函数可以赋值给变量,还能像其他任何PHP对象那样传递。不过匿名函数仍是函数,因此可以调用,还可以传入参数。匿名函数特别适合作为函数或方法的回调。 继续阅读 >
201907-08 九种跨域方式实现原理(完整版) HOT CORS支持所有类型的HTTP请求,是跨域HTTP请求的根本解决方案。 JSONP只支持GET请求,JSONP的优势在于支持老式浏览器,以及可以向不支持CORS的网站请求数据。 不管是Node中间件代理还是nginx反向代理,主要是通过同源策略对服务器不加限制。 日常工作中,用得比较多的跨域方案是cors和nginx反向代理。 继续阅读 >
201907-08 使用array_diff优雅的删除数组中指定的value值 HOT 此处不能使用 if(names中的键名;然后使用unset删除;为了严谨还得判断李四是否存在;¨G1G这里有个坑是为了避免要删除的值在数组第0个位置的时候;此处不能使用if(key) 来判断; 继续阅读 >
201907-08 PHP的闭包和匿名函数你用过嘛 HOT 匿名函数就是没有名称的函数。匿名函数可以赋值给变量,还能像其他任何PHP对象那样传递。不过匿名函数仍是函数,因此可以调用,还可以传入参数。匿名函数特别适合作为函数或方法的回调。 继续阅读 >
201907-08 Swoole异步投递task任务 HOT Swoole的task模块可以用来做一些异步的慢速任务、耗时场景。把这些任务丢给task进程之后,worker进程可以继续处理新的数据请求,任务完成后会异步通知worker进程告诉它此任务已经完成。此外利用task还可以实现PHP的数据库连接池,异步队列等。 继续阅读 >
201907-06 workman 和swoole 有哪些区别和异同 HOT 当我们业务代码以同步阻塞方式来使用swoole和workerman的时候,swoole则很想nginx+fpm的二合一体,而workerman则只相当于nginx,这就是区别啦! 继续阅读 >
201907-06 你可能不太会用的 10 个 Git 命令 HOT 本文讨论的是开发人员、数据科学家或产品经理应该了解的各种 Git 命令。我们将了解该如何用 Git 进行检查、删除和整理操作。我们还将介绍如何用 Bash 别名和 Git 编辑器配置来逃避 Vim 以节省时间。 继续阅读 >
201907-06 Swoole_process实现进程池的方法 HOT Swoole 的进程之间有两种通信方式,一种是消息队列(queue),另一种是管道(pipe),对swoole_process 的研究在swoole中显得尤为重要。 继续阅读 >
201907-05 【基础】开发中经常用到的4个四舍五入函数 HOT php 在处理浮点数的时候经常要需要用的四舍五入函数。比如在开发订单中,金额结算,支付,退款等都会涉及到到结算,结算就会用到浮点数类型,偶尔会保留两位小数,这个时候就会用到四舍五入函数了,以下是对这几个函数的讲解,floor函数和ceil函数互相搭配起来可以使php 处理的数据更加真实可靠。 继续阅读 >
201907-05 MySQL数据库表设计规范 HOT 一般都使用 INNODB 存储引擎,除非读写比率<1%,才考虑使用 MYISAM 存储引擎;其 他存储引擎请在 DBA 的建议下使用。 继续阅读 >
201907-05 在服务器上对 PHP-FPM 和 Nginx 进行安装配置详解 HOT 各个工具之间有所差别,但是目标是一致的 —— 根据精确的规则自动配置新服务器。如果要管理多台服务器,我强烈建议研究使用配置工具,这样可以节省大量时间。 继续阅读 >
201907-05 24 个必须掌握的数据库面试问题! HOT 每当有一条新的记录插入时,MySQL会根据其主键将其插入适当的节点和位置,如果页面达到装载因子(InnoDB默认为15/16),则开辟一个新的页(节点)。 继续阅读 >
201907-05 深入理解php的输出缓冲区(output buffer) HOT 我们要讨论的东西是基于PHP 5.4(及以上版本),PHP中的OB层从5.4版开始就发生了很多变化,确切说是完全重写了,有些地方可能都不兼容PHP 5.3了。 继续阅读 >
201907-04 MySQL 索引原理及设计 HOT 索引一直是数据库中非常重要的概念,所以了解索引相关的知识是转入后端开发中必不可少的一环。这篇文章尽量会把关于索引的一些点以及为什么需要这么做给解释明白,包括使用 InnoDB 引擎的 MySQL 索引的相关概念,以及如何针对 InnoDB 进行索引的设计和使用,以及三星索引的概念。 继续阅读 >
201907-04 也许这样理解 HTTPS 更容易 HOT 本文尝试一步步还原HTTPS的设计过程,以理解为什么HTTPS最终会是这副模样。但是这并不代表HTTPS的真实设计过程。在阅读本文时,你可以尝试放下已有的对HTTPS的理解,这样更利于“还原”过程。 继续阅读 >
201907-04 缓存穿透,缓存击穿,缓存雪崩解决方案分析 HOT 针对业务系统,永远都是具体情况具体分析,没有最好,只有最合适。 最后,对于缓存系统常见的缓存满了和数据丢失问题,需要根据具体业务分析,通常我们采用LRU策略处理溢出,Redis的RDB和AOF持久化策略来保证一定情况下的数据安全。 继续阅读 >
201907-04 工作中99%能用到的git命令 HOT 分支操作:gitbranch创建分支gitbranch-b创建并切换到新建的分支上gitcheckout切换分支gitbranch查看分支列表gitbranch-v查看所有分支的最后一次操作gitbranch-vv查看当前分支gitbrabch-b分支名origin/分支名创建远程分支到本地gitbranch--merged查看别的分支和当前分支合并过的分支gitbranch--no-merged查看未与当前... 继续阅读 >
201907-04 MySQL 中事务、事务隔离级别详解 HOT 事务由单独单元的一个或多个SQL语句组成,在这个单元中,每个MySQL语句是相互依赖的。而整个单独单元作为一个不可分割的整体,如果单元中某条SQL语句一旦执行失败或产生错误,整个单元将会回滚。所有受到影响的数据将返回到事物开始以前的状态;如果单元中的所有SQL语句均执行成功,则事物被顺利执行。 继续阅读 >
201907-03 一次 sql 优化经历,太有趣了! HOT 根据业务场景建立覆盖索引 只查询业务需要的字段,如果这些字段被索引覆盖,将极大的提高查询效率 多表连接的字段上需要建立索引 这样可以极大的提高表连接的效率 where条件字段上需要建立索引 排序字段上需要建立索引 分组字段上需要建立索引 Where条件上不要使用运算函数,以免索引失效 继续阅读 >