做开源也有4,5年的时间了,从最初的 Yaf,到今天的 PHP7,我参与的项目越来越多,使用我代码的用户也越来越多,明天就要发布的PHP7,绝对是我从事开源以来的一个最重要里程碑,我应该纪念一下今天,就让我稍微感性一次吧. PHP7项目开始于去年春节的时候,那个时候我们基于PHP-5.5的Opcache JIT项目基本上因为无法得到期望的结果而搁置了,一些在做JIT的时候收集到的信息让我们认识到,基础部分还不够好,并不能很好的支持JIT,所以在2014年2月左右吧,我们开始了重构项目,当时的希望…
原文:memory_limit的一个bug | 风雪之隅 27 Nov 09 memory_limit的一个bug 作者: Laruence( ) 本文地址: http://www.laruence.com/2009/11/27/1164.html 转载请注明出处 PHP 5.2x中, 由于错误的选用了zend_atoi, 导致memory_limit不能设置为超过4G的值. 今天同事分享给我一个问题(thans to yanmi), 一段代码(PHP 5.2.11 Linux/X86_64),…
http://www.laruence.com/2011/06/23/2057.html https://github.com/laruence PHP开发组成员, Zend兼职顾问, PHP7核心开发者, Yaf, Yar, Yac等项目作者…
//发布订阅模式 class EventEmiter { constructor() { //维护一个对象 this._events = { } } on(eventName, callback) { if (this._events[eventName]) { //如果有就放一个新的 this._events[eventName].push(callback); } else { //如果没有就创建一个数组 this._events[eventName] = [callback] } } em…
作为一名Windows8.x+系统平台从业者,从工作伊始,耳边不断充斥着Windows将走向没落的言论,Win10今日晚些时候即将发布,笔者借此机会,说说自己的看法. 早在2012年的时候,IDC曾预测,WP系统将在2016年超越苹果成为第二大操作系统,目前来看或将成为一笑谈,不过微软正在从Win8的一些错误中走出来,Win10这款全能跨端产品更加强大和重视用户体验.从纳德拉走访深圳华强北,到和腾讯.小米.奇虎360的联手合作,微软正放下身段,为Win10的发布做足了前戏.在今年Build 20…
一.FastNat可为您解决的问题 1.没有公网服务器,但是想发布共享本地的站点或网络程序到公网上,以供他人访问: 此项功能大大方面开发人员进行远程调试,微信小程序等开发工作进行. 2.需要远程到在其他网络中的设备,但两处的网络不通: OA系统网站外网访问 SVN软件外网访问 windows远程桌面 外网连接SSH 外网连接内网 FTP服务器 外网访问数据库 ORACLE-MYSQL-MSSQL外网连接 3.异地设备互联 您的账号内部的所有设备之间可以直接互通(可以直接ping),您可以通过我们…
我是一个高二的OIer,离我正式退役的日子已经不超过一年了.在这个时期,与其写一些回忆性的文字,不如跳出"自我"的范畴,以一种比较全局的角度和大家一起分享一些我对OI的认知和看法.目的是让初三高一的学弟学妹看清眼前的路,让高二高三的人了解自己走过的足迹. 一.独特的模式 知识的更新 我们先从OI的比赛日程谈起.选手获得NOIP一等奖后,可以报名参加WC(时间为1-2月).而在5月,选手即使没有通过省选进入省队,也可以报名参加CTS(C).其中WC和CTS(C)不仅是信息集训队的两轮选拔…
您是不是有希望您的 Autodesk 产品应用程序有更多的用户?您是不是正在寻求更广阔的市场机会?您是不是在激荡人心的云时代大潮中有许多奇思妙想没有小试身手? 来吧,来参加Autodesk应用程序发布活动吧!– 参与此活动您不但有机会将应用程序直接呈现在全球Autodesk 用户面前,以零成本开辟全球业务,还可以获得应用程序发布的奖励以及在Autodesk 相关会议或媒体上宣传或展示的机会. 此活动由Autodesk应用程序商店团队主办,并有Autodesk ADN 全球团队的直接支持.   活…
第一次写博客,如有错误,请大家及时告知,本人立即改之. 如果您有好的想法或者建议,我随时与我联系. 如果发现代码有误导时,请与我联系,我立即改之. 好了不多说,直接贴代码. 一般的错误,使用下面三个就可以了.我不太赞同项目里面大量使用try{}catch{}(释放资源除外) // 设置UI线程发生异常时处理函数 System.Windows.Application.Current.DispatcherUnhandledException += App_DispatcherUnhandledExc…
#freebsd-update -r 12.2-RELEASE upgrade 如果提示更新第三方软件后,再执行freebsd-update install , 请输入 #pkg update && pkg upgrade 然后输入 #freebsd-update install 提示重启 #reboot #freebsd-update install 即可, 查看版本 #freebsd-version 完毕. 此外,update源可以用 update.FreeBSD.cn…
重构2-重新组织函数 重构的基本技巧--小步前进,频繁测试. 模式是你希望到达的目标,重构则是到达之路. 在单进程软件中,你永远不必操心多么频繁地调用某个函数,因为函数的调用成本很低.但在分布式软件中,函数的往返必须被减至最低限度. (Extract Method)提炼函数 含义:将一个复杂的大函数,提取整合为多个简单的小函数,通过函数名很明显的显示出此小函数要表达或者要展示的作用. 特别注意事项: 小函数的命名,要让别人立马可以看到函数要表达的含义. 对于大函数中的局部变量要特别小心,看是如何…
  Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日.       其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx 1.0.4发布.       Nginx是一款轻量级的Web 服务器/…
和其他高级语言一样 javascript 中也有 new 运算符,我们知道 new 运算符是用来实例化一个类,从而在内存中分配一个实例对象. 但在 javascript 中,万物皆对象,为什么还要通过 new 来产生对象? 本文将带你一起来探索 javascript 中 new 的奥秘... 一.认识new运算符: function Animal(name){ this.name = name; } Animal.color = "black"; Animal.prototype.sa…
今天打算写写关于 IM 去中心化涉及的架构模型变化和设计思路,去中心化的概念就是说用户的访问不是集中在一个数据中心,这里的去中心是针对数据中心而言的. 站在这个角度而言,实际上并非所有的业务都能做去中心化设计,对于一致性要求越高的业务去中心化越难做.比如电商领域的库存就是一个对一致性要求很高的业务,不能超卖也不能少卖,这在单中心容易实现,但多中心纯从技术层面感觉无解,可能需要从业务和技术层面一起去做个折衷. 反过来看 IM 的业务场景是非常适合做去中心化设计的,因为其业务场景都是弱一致性需求.打…
public class RepositoryBase<T> : IRepository<T> where T : class RepositoryBase 是IRepository的一个 实例,泛型的作用是为特定的模型层提供标准的增删查改操作. protected XltAppDataContext DataContext; 一个继承了DbContext的类(数据库上下文)↓↓↓↓↓↓↓↓↓ public class XltAppDataContext : DbContext 新…
一个 11 行 Python 代码实现的神经网络 2015/12/02 · 实践项目 · 15 评论· 神经网络 分享到:18 本文由 伯乐在线 - 耶鲁怕冷 翻译,Namco 校稿.未经许可,禁止转载!英文出处:iamtrask.欢迎加入翻译组. 概要:直接上代码是最有效的学习方式.这篇教程通过由一段简短的 python 代码实现的非常简单的实例来讲解 BP 反向传播算法. 代码如下:   X = np.array([ [0,0,1],[0,1,1],[1,0,1],[1,1,1] ]) y…
我的树苺派2B跑的是Raspbian 7 (Wheezy),有不少软件都让我觉察出老旧来.想着Debian官方已经发布Debian 8 (Jessie)大半年了(8.0发布于2015/04/25),树苺派这边也该跟进了,于是去查了一下,还真有,Raspbian 8 (Jessies)在2015/09/29就出来了(见Raspbian Jessie is here - Raspberry Pi),后面面又更新过几次,最新的镜像是2015/11/21的. (补充:根据Debian Wiki上的说法,…
在日常运维工作中,运维人员会时常使用到nginx的反向代理,负载均衡以及缓存等功能来优化web服务性能. 废话不多说,下面对测试环境下的nginx反向代理+缓存开启+url重写+负载均衡(带健康探测)搭建过程做一记录: 一.后端的Real Server的准备 两台RS服务器(192.168.1.104/192.168.1.105)要事先配置好nginx.并且nginx访问均是用ip访问即可,方便实验效果! 二.nginx代理服务器192.168.1.103(假设外网ip是111.112.114.…
beego 的 http server… Author 逆雪寒 2015.12.02 原文地址 https://github.com/nixuehan/beego_you_know/blob/master/kernel.md 在工作中有用到golang,后来遇到了beego 重构了一下我的应用.感觉棒棒的~ 应用强壮了不少.所以我打算以最新的stable v1.5.0 来剖析下beego的源代码,因为知其然知其所以然.我们才能更好的使用beego ,同时提高我们的golang能力 .加我的群吧…
和其他高级语言一样 JavaScript 也有 new 操作符,我们知道 new 可以用来实例化一个类,从而在内存中分配一个实例对象. 但在 JavaScript 中,万物皆对象,为什么还要通过 new 来产生对象? 带着这个问题,我们一步步来分析和理解 new 的一些特性: 认识 new 操作符 function Animal(name){ this.name = name; } Animal.color = "black"; Animal.prototype.say = funct…
EM算法在很多地方都用使用到,比如简单的K-means算法,还有在隐马尔可夫里面,也涉及到了EM算法,可见EM算法在机器学习领域的重要地位.在这里就写一下我对于EM算法的一些理解笔记.后续有新的理解也会追加的. EM算法的全称叫做:期望最大.EM算法的想法很简单,就像一个人有两条腿向前走,你总是需要固定一条腿动另一条腿这样交替往前走.这里面的两条腿,一个是隐变量,一个是参数θ. 在了解EM算法之前,首先需要了解一些基本的概念. 凹凸函数 这个是<最优化>里面的概念,如果它的二阶导大于0,那么就…
转自 https://kindlefere.com/post/333.html 什么是“版本控制”?我为什么要关心它呢?版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统.在本书所展示的例子中,我们对保存着软件源代码的文件作版本控制,但实际上,你可以对任何类型的文件进行版本控制. 如果你是位图形或网页设计师,可能会需要保存某一幅图片或页面布局文件的所有修订版本(这或许是你非常渴望拥有的功能),采用版本控制系统(VCS)是个明智的选择.有了它你就可以将某个文件回溯到之前的…
http://www.cnblogs.com/Brake/archive/2015/12/02/Operating_System_Thread_Part3.html 本文主要内容: 操作系统用户空间和内核空间简介 在用户空间实现线程 在内核空间实现线程 用户空间和内核空间线程混合使用 一.用户空间和内核空间简介 用户空间:User space,内核空间:Kernel Space.这两个是操作系统的重要概念之一,今天为了线程做一下简单的介绍: 内核空间用于运行操作系统核心组件,比如内存管理组件,I…
https://www.percona.com/blog/2015/12/02/gtid-failover-with-mysqlslavetrx-fix-errant-transactions/ 使用GTID复制时,Errant transactions是一个主要问题. 虽然这不是什么新鲜事,但GTID的缺点比常规复制更为臭名昭着.错误的事务让您感到困难的是一个常见的DBA任务:故障转移. 现在像MHA这样的工具已经支持GTID复制(从0.56版本开始),这个协议变得越来越流行了,错误事务也是如…
1.预览效果 1.1.首先看一下需要实现的效果. 第一种,文字类型新闻. 第二种,图片类型新闻. 1.2.在NewsArticleTextViewBinder中设置了点击事件 RxView.clicks(holder.itemView) .throttleFirst(1, TimeUnit.SECONDS) .subscribe(new Consumer<Object>() { @Override public void accept(@io.reactivex.annotations.Non…
原创发布 by @一像素 2015.12 在Javascript中,万物皆对象,但对象也有区别,大致可以分为两类,即:普通对象Object 和 函数对象Function. 一般而言,通过new Function产生的对象是函数对象,其他对象都是普通对象. function f1(){ //todo } var f2 = function(){ //todo }; var f3 = new Function('x','console.log(x)'); var o1 = {}; var o2 =…
通过 fork 创建子进程的方式可以实现父子进程监听相同的端口. 方法:在绑定端口号(bind函数)之后,监听端口号之前(listen函数),用fork()函数生成子进程,这样子进程就可以克隆父进程,达到监听同一个端口的目的. # 代码示例:一主一子 import socket import select import sys import struct import os import time if __name__ == '__main__': pid = os.getpid() s1 =…
今天因为各位组员组里项目原因没有集中在一起进行stand up meeting.但是士杰和天赋国庆分别对项目进度和前后端的结合进行的沟通. 针对后端部分,天赋完成了GetRankingData API的获取和本地缓存的存储,并且通过了单元测试.之后士杰完成了GetScore和Time的函数原型.因为前端的答题界面还需两天左右时间完成,所以我们模拟了GetRankingData的Input对后端逻辑进行测试.接下来天赋和士杰会帮助国庆完成前后端的连接,这样答题界面完成后,我们就将项目推进到答题结果…
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/53869796 Android进程的so注入已经是老技术了,网上能用的Android注入的工程也有很多,虽然分享代码的作者在测试的时候能注入成功,但是其他的同学使用这些代码的时候总是出现这样或者那样的问题.在Android逆向学习的这段时间里,我也陆续测试了几个作者给出的Android的注入的代码,但是总是效果不明显,今天就学习一下大牛boyliang分享的Android的so注入…