PHP 源码探秘 - 为什么 trim 会导致乱码

2017-10-19
阅读 8 分钟
6.6k
我的博客 [链接] 运行以下代码: {代码...} 我们可能以为会得到的结果是互联网产品,实际结果是互联网产�。为什么会这样呢? 科普 PHP 里使用mb_前缀的都是多字节函数 [链接] 比如 {代码...} mb_系列函数是以“多个字节组成的一个字符”为颗粒度来操作的,不带mb_则是按实际的字节数来操作的。 原理 trim 函数文档 {代码.....

服务治理深入浅出(2)- 远程方法调用的实现

2017-10-17
阅读 5 分钟
5k
在了解了前面我们关于服务治理出现的必要性之后。我们知道服务治理是建立在众多“服务”基础之上的,那么,第一步,打通这些服务是基础,也就是我们常说的 RPC 远程调用。要像调用本地方法一样调用远程服务器上的方法。

小需求推动新语言快速学习:nginx lua 根据 user_agent 显示不同的页面

2017-09-19
阅读 6 分钟
4.1k
之前做一次分享 如何快速学习一门新的语言的直播分享 但是那是以实现一个后端框架的角度来讲的,道理想通,我们要以实际的需求出发。一个小小的需求,可能会遇到很多问题,但是搜索相关的关键字,就能快速实现出来,完成一个小目标,事半功倍。 死记硬背手册,太枯燥了,反正我是看不下去,不如直接来个小项目。下面开始:

PHP 进阶之路 - 亿级 pv 网站架构实战之性能压榨

2017-08-01
阅读 11 分钟
24.7k
本博客并非全部原创,其实是一个知识的归纳和汇总,里面我引用了很多网上、书上的内容。也给出了相关的链接。 本文涉及的知识点比较多,大家可以根据关键字去搜索相关的内容和购买相应的书籍进行系统的学习。不对的地方大家予以批评指正。 有人给我留言说,亿级 PV 就别写文章了,随便用几个开源软件就能搞定了,只要不...

PHP 进阶之路 - 后端多元化之快速切入 Java 开发

2017-07-25
阅读 8 分钟
7.6k
其实我们在学习的时候 java 的时候完全不用接触那些高大上的工具,也可以尽量减少各种配置文件,比如下面我们只有个pom.xml配置文件。还有的同学说还学 java 干嘛,不都应该去学 go 吗?其实语言真的不重要,我们需要掌握的是快速学习利用一门语言的学习方法,这也是本课的真正目的。

服务治理深入浅出(1)- 服务治理出现的必要性探索

2017-07-17
阅读 3 分钟
20.5k
当时虎躯为之一震,赶紧在手机上记下关键词:“服务化”、“服务治理”、“服务治理框架”。回去之后马上搜索,觉得很高大上,弄不懂,为什么要服务化,到底什么是服务治理啊?很多文章一上来就直接讲他们的服务治理多 NB,对于新人来说却总有一种镜花水月的感觉,那么我这次,希望从架构的演变出发,逐步说明,希望能让大家豁...

PHP 进阶之路 - PHP7 使用资源包裹第三方扩展原理分析

2017-07-14
阅读 5 分钟
3.4k
list_destructors 是一个全局静态 HashTable,资源类型注册时,将一个 zval 结构体变量 zv 存放入 list_destructors 的 arData 中,而 zv 的 value.ptr 却指向了 zend_rsrc_list_dtors_entry *lde ,lde中包含的该种资源释放函数指针、持久资源的释放函数指针,资源类型名称,该资源在 hashtable 中的索引依据 (resourc...

PHP 进阶之路 - PHP7 使用资源包裹第三方扩展的实现

2017-07-14
阅读 5 分钟
3.6k
在阅读下面的内容之前,我们假定你已经对 PHP 7 基本的数据结构 都有大致的了解了,这是下面内容阅读的前提。我们分为两大块:首先实现一个自定义的文件打开、读取、写入、关闭的文件操作扩展;然后分析各个操作背后的实现原理,其中某些部分的实现会和PHP 5.3 使用资源对比分析。

PHP 教父鸟哥 Yar 的原理分析

2017-07-12
阅读 4 分钟
15.7k
模块越来越多,业务越来越复杂,RPC 就上场了,在 PHP 的世界里,鸟哥的作品一直备受广大网友的青睐。下面一起学习下鸟哥的 PRC 框架 Yar 。

我的服务器迁移踩坑经验分享

2017-07-07
阅读 2 分钟
3.4k
去年年底因为使用了云存储和其他方面的原因,计划的将服务器缩减一个机柜出来。这样今年每月机房的费用可以减少1万左右。前前后后抽空在弄这个任务,现做个笔记小结下。以redis服务和图片存储服务器的下架为主。

PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务

2017-07-06
阅读 11 分钟
11.8k
我们下面则将一些实际场景都添加进去,比如用户身份的验证,游客只能浏览不能发言,多房间(频道)的聊天。该博客非常适合 Java 新手,非常适合作为学习 Java 的切入点,不需要考虑tomcat、spring、mybatis等。唯一的知识点就是 maven 的基础使用。

PHP 进阶之路 - 揭开 PHP 线程安全的神秘面纱

2017-06-30
阅读 13 分钟
11.9k
PHP 进阶之路 - 零基础构建自己的服务治理框架(上) PHP 进阶之路 - 零基础构建自己的服务治理框架(下) PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 PHP 进阶之路 - 亿级 pv 网站架构实战之性能压榨 注:本篇非我一己之力所完成,最后发布在了《TIPI》这本电子书上。 了解线程安全之前,我们先回顾几点基础知识...

PHP 进阶之路 - 深入理解 FastCGI 协议以及在 PHP 中的实现

2017-06-20
阅读 14 分钟
17.2k
很多工程师在工作1~3年的时候最容易遇到瓶颈,不知道自己应该学习什么,面试总是吃闭门羹。那么 PHP 后面应该怎么学呢?安利一波我的系列直播 《PHP 进阶之路》

并行的RPC框架(Concurrent RPC Framework) Yar Java Client

2015-12-26
阅读 4 分钟
4.6k
Yar 是一个轻量级, 高效的 RPC 框架, 它提供了一种简单方法来让 PHP 项目之间可以互相远程调用对方的本地方法. 并且 Yar 也提供了并行调用的能力. 可以支持同时调用多个远程服务的方法.Yar 鸟哥博客介绍 [链接]Yar 鸟哥原始项目 [链接]Yar Java Client 则实现了跨语言的远程调用。使得 Java 客户端能够调用 Yar PHP 服务...

一个简单 java 项目的优化过程(未完...)

2015-08-25
阅读 4 分钟
3.3k
第一次写 java 项目,用的 netty5.0,也没啥经验,前期开发比较紧所以以实现功能为主,下面记录自己的一些性能优化笔记。以某接口为例,该接口是 feed 流,里面包含的信息有:

PHP 进阶之路 - 用 PHP 来实现一个动态 Web 服务器

2015-07-29
阅读 8 分钟
13.1k
要是现实一个 web 服务器,那么就需要大概了解 web 服务器的运行原理。先从静态的文本服务器开始,以访问 web 服务器的1.html为例

分享下使用svn,测试服务器代码自动更新、线上服务器代码手动更新的配置经验

2014-04-26
阅读 4 分钟
12.6k
首先说下自己的思路,每个开发人员将代码提交到svn服务器的时候,触发post-commit钩子,使得代码自动更新到测试服务器,在测试服务器上查看代码上线后是否OK。如果没问题,则对与测试服务器环境完全一致的线上服务器的代码进行手动更新。手动更新的方式为通过web访问,web访问一个php脚本,php脚本去执行shell命令来更新。